public inbox for [email protected]help / color / mirror / Atom feed
Styling tab navigation and close buttons 3+ messages / 2 participants [nested] [flat]
* Styling tab navigation and close buttons @ 2016-04-07 09:42 Arun Kollan <[email protected]> 2016-04-07 11:36 ` Re: Styling tab navigation and close buttons Arun Kollan <[email protected]> 0 siblings, 1 reply; 3+ messages in thread From: Arun Kollan @ 2016-04-07 09:42 UTC (permalink / raw) To: pgadmin-hackers; Dave Page <[email protected]> Hi Team, Please find attached patch for styling tab navigation and close buttons. The patch consists of changes to wcDocker to customise the placement of navigational buttons and also removal of an extra arrows. A readme file added explaining the changes. Arun Kollan *Website: www.enterprisedb.com <http://www.enterprisedb.com>* *EnterpriseDB Blog: http://blogs.enterprisedb.com/ <http://blogs.enterprisedb.com/>Follow us on Twitter: http://www.twitter.com/enterprisedb <http://www.twitter.com/enterprisedb>* This e-mail message (and any attachment) is intended for the use of the individual or entity to whom it is addressed. This message contains information from EnterpriseDB Corporation that may be privileged, confidential, or exempt from disclosure under applicable law. If you are not the intended recipient or authorized to receive this for the intended recipient, any use, dissemination, distribution, retention, archiving, or copying of this communication is strictly prohibited. If you have received this e-mail in error, please notify the sender immediately by reply e-mail and delete this message. -- Sent via pgadmin-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgadmin-hackers Attachments: [application/octet-stream] button_tab-nav_styling.patch (263.0K, 3-button_tab-nav_styling.patch) download | inline diff: diff --git a/web/pgadmin/static/css/overrides.css b/web/pgadmin/static/css/overrides.css index 2fcaae2..e94742e 100755 --- a/web/pgadmin/static/css/overrides.css +++ b/web/pgadmin/static/css/overrides.css @@ -300,24 +300,21 @@ iframe { } .obj_properties fieldset > .fieldset-content { - border-radius:5px; - padding: 5px 10px; - width: 99.8%; - margin: 0 0.1%; - border-color: #92AFC8; - border-width: 2px; - border-style: ridge; - background-color: ##D7D8DD; + border-radius:5px; + padding: 5px 10px; + border-color: #92AFC8; + border-width: 2px; + border-style: ridge; } .obj_properties .badge { - display: block; - text-align: left; - cursor: pointer; - margin-bottom: 1px; - background-color: #2C76B4; - border-radius:5px; - padding: 5px 7px; + display: block; + text-align: left; + cursor: pointer; + margin-bottom: 1px; + background-color: #2C76B4; + border-radius:5px; + padding: 5px 7px; } .obj_properties .badge .caret { @@ -343,9 +340,7 @@ iframe { } .obj_properties table { - display: table !important; - width: 98%; - margin: 0.8%; + display: table !important; } .obj_properties table tr { @@ -384,8 +379,8 @@ iframe { } .pg-prop-btn-group button { - padding: 5px; - margin: 2px 5px; + padding: 5px; + margin: 2px 5px; } .pg-prop-btn-group button:not(:first-child):not(:last-child) { @@ -395,8 +390,6 @@ iframe { .pg-prop-content { position: absolute; overflow: auto; - top: 3px; - bottom: 0; padding-bottom: 7px; padding-top: 0; padding-right: 0; @@ -408,7 +401,7 @@ iframe { } .has-pg-prop-btn-group { - top: 43px; + top: 48px; } .pg-prop-content > div { @@ -476,8 +469,8 @@ fieldset[disabled] .form-control { } .backgrid th, .backgrid td { - line-height: 18px; - font-size: 12px; + line-height: 18px; + font-size: 12px; } .backgrid th { @@ -723,74 +716,69 @@ div.inline-tab-panel > ul.nav-tabs > li > a, div.inline-tab-panel > ul.nav-tabs > li > a:active, div.inline-tab-panel > ul.nav-tabs > li > a:hover, div.inline-tab-panel > ul.nav-tabs > li > a:focus { - border-top-left-radius: 5px; - border-top-right-radius: 5px; + border-top-left-radius: 5px; + border-top-right-radius: 5px; } div.inline-tab-panel > ul.nav-tabs > li:first-child > a, div.inline-tab-panel > ul.nav-tabs > li:first-child > a:active, div.inline-tab-panel > ul.nav-tabs > li:first-child > a:hover, div.inline-tab-panel > ul.nav-tabs > li:first-child > a:focus { - border-top-left-radius: 5px; - border-top-right-radius: 5px; - margin-left: 1px; + border-top-left-radius: 5px; + border-top-right-radius: 5px; + margin-left: 1px; } div.inline-tab-panel > ul.tab-content { - padding-left: 5px; padding-right: 5px; border-color: #DDD; - border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; - border-width: 0px 1px 1px 1px; border-bottom-right-radius: 5px; - border-bottom-left-radius: 5px; border-style: solid solid; + padding-left: 5px; padding-right: 5px; border-color: #DDD; + border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; + border-width: 0px 1px 1px 1px; border-bottom-right-radius: 5px; + border-bottom-left-radius: 5px; border-style: solid solid; } div.inline-tab-panel > ul.tab-content > div.tab-pane { - min-height: 150px; padding: 0px !important; + min-height: 150px; padding: 0px !important; } div.inline-tab-panel > ul.tab-content > div.tab-pane > *:first-child { - margin-top: 5px; + margin-top: 5px; } div.inline-tab-panel > ul.tab-content > div.tab-pane > *:last-child { - margin-bottom: 5px; + margin-bottom: 5px; } -.pgadmin-control-error-message -{ - padding-left: 4px; + +.pgadmin-control-error-message{ + padding-left: 4px; } -.btn-group-sm>.btn, .btn-sm -{ - font-size: 11px; - padding: 3px 3px; + +.btn-group-sm>.btn, .btn-sm{ + font-size: 11px; + padding: 3px 3px; } td.edit-cell.editable.sortable.renderable.editor { - outline: 0px; + outline: 0px; } -.privilege_label -{ - font-size: 10px!important; -} -.backgrid th, .backgrid td -{ - padding: 2px; - font-weight: normal!important; +.privilege_label{ + font-size: 10px!important; } -.pg-panel-depends-container > table > thead > tr > th { - padding: 2px; + +.backgrid th, .backgrid td{ + padding: 2px; + font-weight: normal!important; } -.backgrid th:first-child , .backgrid th:last-child{ - border-left-color: #2C76B4; +.subnode > table.backgrid > thead > tr > th:first-child{ + border-left-color: #2C76B4; } -.backgrid th:last-child{ - border-right-color: #2C76B4; +.subnode > table.backgrid > thead > tr > th:last-child{ + border-right-color: #2C76B4; } -.select2-container .select2-selection--single .select2-selection__rendered -{ - padding-left: 3px; +.select2-container .select2-selection--single .select2-selection__rendered{ + padding-left: 5px; } /* Message panel shown on browser tabs */ @@ -905,5 +893,22 @@ ul.nav.nav-tabs { } .btn-primary{ - margin: 2px 13px !important; + margin: 2px 13px !important; } + +.pg-panel-depends-container >table.backgrid.table-bordered { + border: 0px; +} + +.pg-panel-depends-container > table > thead > tr > th { + padding: 2px; + border: 1px solid #ddd; +} + +.pg-panel-depends-container > table > thead > tr > th:first-child { + border-left: 0px; +} + +.pg-panel-depends-container > table > thead > tr > th:last-child { + border-right: 0px; +} \ No newline at end of file diff --git a/web/pgadmin/static/css/wcDocker/Themes/pgadmin.css b/web/pgadmin/static/css/wcDocker/Themes/pgadmin.css index 51e0461..b01f1ae 100644 --- a/web/pgadmin/static/css/wcDocker/Themes/pgadmin.css +++ b/web/pgadmin/static/css/wcDocker/Themes/pgadmin.css @@ -37,15 +37,24 @@ .wcFrameButton { width: 20px; height: 20px; - border: 2px solid #8A0D0D; - background-color: #A56D6D; + border: 2px solid #9E9E9E; + background-color: #ddd; font-size: 12px; + border-radius: 5px 5px 5px 5px; + margin-right: 2px; } .wcFrameMiniButton { width: 8px; } +.wcFrameButton.wcFrameButtonLeft { + right: 10px; +} +.wcFrameButton.wcFrameButtonRight { + right: 10px; +} + .wcFrameButton:hover { border: 2px solid #CCCCCC; } @@ -263,11 +272,9 @@ } .wcFrameButtonBar { - top: 7px; + top: 5px; right: 5px; - color: white; } - .context-menu-list { font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; @@ -313,3 +320,12 @@ font-size: 13px; ul.dropdown-menu > li.menu-item > a > i.wcTabIcon { width: 14px; } + +.wcFrameButton .fa.fa-close { + margin-top: 3.5px; + padding-left: 1px; +} + +span.fa.fa-arrow-left, .fa-arrow-right { + margin-top: 4px; +} diff --git a/web/pgadmin/static/js/wcDocker/README b/web/pgadmin/static/js/wcDocker/README index df04fbd..f1306d7 100644 --- a/web/pgadmin/static/js/wcDocker/README +++ b/web/pgadmin/static/js/wcDocker/README @@ -1,3 +1,4 @@ +16/03/2016 The wcDocker theme frame width has been changed from 6px to 4px. This change has been brought about to keep the width of the frame consistent with the width of the window divider. @@ -35,3 +36,32 @@ index 954d73e..bc64b3b 100755 The same changes have been made to wcDocker-min.js and is not included as the file is tidy formatted. +06/04/2016 +The wcDocker is updated to remove the extra left and the right arrows ( signs ) which are not required for tab navigation. New rules has been added to set the position for each specific navigational buttons ; left & right + +diff --git a/web/pgadmin/static/js/wcDocker/wcDocker.js b/web/pgadmin/static/js/wcDocker/wcDocker.js +index bc64b3b..b4a5193 100755 +--- a/web/pgadmin/static/js/wcDocker/wcDocker.js ++++ b/web/pgadmin/static/js/wcDocker/wcDocker.js +@@ -3392,8 +3392,8 @@ define('wcDocker/frame',[ + this.$tabBar = $('<div class="wcFrameTitleBar">'); + this.$tabScroll = $('<div class="wcTabScroller">'); + this.$center = $('<div class="wcFrameCenter wcPanelBackground">'); +- this.$tabLeft = $('<div class="wcFrameButton" title="Scroll tabs to the left."><span class="fa fa-arrow-left"></span><</div>'); +- this.$tabRight = $('<div class="wcFrameButton" title="Scroll tabs to the right."><span class="fa fa-arrow-right"></span>></div>'); ++ this.$tabLeft = $('<div class="wcFrameButton arrowleft" title="Scroll tabs to the left."><span class="fa fa-arrow-left"></span></div>'); ++ this.$tabRight = $('<div class="wcFrameButton arrowright" title="Scroll tabs to the right."><span class="fa fa-arrow-right"></span></div>'); + this.$close = $('<div class="wcFrameButton" title="Close the currently active panel tab"><div class="fa fa-close"></div>X</div>'); + + this.$collapse = $('<div class="wcFrameButton" title="Collapse the active panel"><div class="fa fa-download"></div>C</div>'); +@@ -5985,8 +5985,8 @@ define('wcDocker/tabframe',[ + this.$tabBar = $('<div class="wcFrameTitleBar wcCustomTabTitle wcWide">'); + this.$tabScroll = $('<div class="wcTabScroller">'); + this.$center = $('<div class="wcFrameCenter wcPanelBackground">'); +- this.$tabLeft = $('<div class="wcFrameButton" title="Scroll tabs to the left."><span class="fa fa-arrow-left"></span><</div>'); +- this.$tabRight = $('<div class="wcFrameButton" title="Scroll tabs to the right."><span class="fa fa-arrow-right"></span>></div>'); ++ this.$tabLeft = $('<div class="wcFrameButton wcFrameButtonLeft" title="Scroll tabs to the left."><span class="fa fa-arrow-left"></span></div>'); ++ this.$tabRight = $('<div class="wcFrameButton wcFrameButtonRight" title="Scroll tabs to the right."><span class="fa fa-arrow-right"></span></div>'); + this.$close = $('<div class="wcFrameButton" title="Close the currently active panel tab"><span class="fa fa-close"></span>X</div>'); + + //this.$maximize = $('<div class="wcFrameButton" title="Close the currently active panel tab"><span class="fa fa-expand"></span>X</div>'); \ No newline at end of file diff --git a/web/pgadmin/static/js/wcDocker/wcDocker.js b/web/pgadmin/static/js/wcDocker/wcDocker.js index bc64b3b..b4a5193 100755 --- a/web/pgadmin/static/js/wcDocker/wcDocker.js +++ b/web/pgadmin/static/js/wcDocker/wcDocker.js @@ -3392,8 +3392,8 @@ define('wcDocker/frame',[ this.$tabBar = $('<div class="wcFrameTitleBar">'); this.$tabScroll = $('<div class="wcTabScroller">'); this.$center = $('<div class="wcFrameCenter wcPanelBackground">'); - this.$tabLeft = $('<div class="wcFrameButton" title="Scroll tabs to the left."><span class="fa fa-arrow-left"></span><</div>'); - this.$tabRight = $('<div class="wcFrameButton" title="Scroll tabs to the right."><span class="fa fa-arrow-right"></span>></div>'); + this.$tabLeft = $('<div class="wcFrameButton arrowleft" title="Scroll tabs to the left."><span class="fa fa-arrow-left"></span></div>'); + this.$tabRight = $('<div class="wcFrameButton arrowright" title="Scroll tabs to the right."><span class="fa fa-arrow-right"></span></div>'); this.$close = $('<div class="wcFrameButton" title="Close the currently active panel tab"><div class="fa fa-close"></div>X</div>'); this.$collapse = $('<div class="wcFrameButton" title="Collapse the active panel"><div class="fa fa-download"></div>C</div>'); @@ -5985,8 +5985,8 @@ define('wcDocker/tabframe',[ this.$tabBar = $('<div class="wcFrameTitleBar wcCustomTabTitle wcWide">'); this.$tabScroll = $('<div class="wcTabScroller">'); this.$center = $('<div class="wcFrameCenter wcPanelBackground">'); - this.$tabLeft = $('<div class="wcFrameButton" title="Scroll tabs to the left."><span class="fa fa-arrow-left"></span><</div>'); - this.$tabRight = $('<div class="wcFrameButton" title="Scroll tabs to the right."><span class="fa fa-arrow-right"></span>></div>'); + this.$tabLeft = $('<div class="wcFrameButton wcFrameButtonLeft" title="Scroll tabs to the left."><span class="fa fa-arrow-left"></span></div>'); + this.$tabRight = $('<div class="wcFrameButton wcFrameButtonRight" title="Scroll tabs to the right."><span class="fa fa-arrow-right"></span></div>'); this.$close = $('<div class="wcFrameButton" title="Close the currently active panel tab"><span class="fa fa-close"></span>X</div>'); //this.$maximize = $('<div class="wcFrameButton" title="Close the currently active panel tab"><span class="fa fa-expand"></span>X</div>'); diff --git a/web/pgadmin/static/js/wcDocker/wcDocker.min.js b/web/pgadmin/static/js/wcDocker/wcDocker.min.js index e2b2e77..a55ec98 100755 --- a/web/pgadmin/static/js/wcDocker/wcDocker.min.js +++ b/web/pgadmin/static/js/wcDocker/wcDocker.min.js @@ -32,8 +32,8 @@ */ !function(){var t,e,a;!function(r){function o(t,e){return g.call(t,e)}function i(t,e){var a,r,o,i,n,s,l,c,h,u,d,f=e&&e.split("/"),p=m.map,b=p&&p["*"]||{};if(t&&"."===t.charAt(0))if(e){for(t=t.split("/"),n=t.length-1,m.nodeIdCompat&&x.test(t[n])&&(t[n]=t[n].replace(x,"")),t=f.slice(0,f.length-1).concat(t),h=0;h<t.length;h+=1)if(d=t[h],"."===d)t.splice(h,1),h-=1;else if(".."===d){if(1===h&&(".."===t[2]||".."===t[0]))break;h>0&&(t.splice(h-1,2),h-=2)}t=t.join("/")}else 0===t.indexOf("./")&&(t=t.substring(2));if((f||b)&&p){for(a=t.split("/"),h=a.length;h>0;h-=1){if(r=a.slice(0,h).join("/"),f)for(u=f.length;u>0;u-=1)if(o=p[f.slice(0,u).join("/")],o&&(o=o[r])){i=o,s=h;break}if(i)break;!l&&b&&b[r]&&(l=b[r],c=h)}!i&&l&&(i=l,s=c),i&&(a.splice(0,s,i),t=a.join("/"))}return t}function n(t,e){return function(){var a=T.call(arguments,0);return"string"!=typeof a[0]&&1===a.length&&a.push(null),f.apply(r,a.concat([t,e]))}}function s(t){return function(e){return i(e,t)}}function l(t){return function(e){_[t]=e}}function c(t){if(o(v,t)){var e=v[t];delete v[t],w[t]=!0,d.apply(r,e)}if(!o(_,t)&&!o(w,t))throw new Error("No "+t);return _[t]}function h(t){var e,a=t?t.indexOf("!"):-1;return a>-1&&(e=t.substring(0,a),t=t.substring(a+1,t.length)),[e,t]}function u(t){return function(){return m&&m.config&&m.config[t]||{}}}var d,f,p,b,_={},v={},m={},w={},g=Object.prototype.hasOwnProperty,T=[].slice,x=/\.js$/;p=function(t,e){var a,r=h(t),o=r[0];return t=r[1],o&&(o=i(o,e),a=c(o)),o?t=a&&a.normalize?a.normalize(t,s(e)):i(t,e):(t=i(t,e),r=h(t),o=r[0],t=r[1],o&&(a=c(o))),{f:o?o+"!"+t:t,n:t,pr:o,p:a}},b={require:function(t){return n(t)},exports:function(t){var e=_[t];return"undefined"!=typeof e?e:_[t]={}},module:function(t){return{id:t,uri:"",exports:_[t],config:u(t)}}},d=function(t,e,a,i){var s,h,u,d,f,m,g=[],T=typeof a;if(i=i||t,"undefined"===T||"function"===T){for(e=!e.length&&a.length?["require","exports","module"]:e,f=0;f<e.length;f+=1)if(d=p(e[f],i),h=d.f,"require"===h)g[f]=b.require(t);else if("exports"===h)g[f]=b.exports(t),m=!0;else if("module"===h)s=g[f]=b.module(t);else if(o(_,h)||o(v,h)||o(w,h))g[f]=c(h);else{if(!d.p)throw new Error(t+" missing "+h);d.p.load(d.n,n(i,!0),l(h),{}),g[f]=_[h]}u=a?a.apply(_[t],g):void 0,t&&(s&&s.exports!==r&&s.exports!==_[t]?_[t]=s.exports:u===r&&m||(_[t]=u))}else t&&(_[t]=a)},t=e=f=function(t,e,a,o,i){if("string"==typeof t)return b[t]?b[t](e):c(p(t,e).f);if(!t.splice){if(m=t,m.deps&&f(m.deps,m.callback),!e)return;e.splice?(t=e,e=a,a=null):t=r}return e=e||function(){},"function"==typeof a&&(a=o,o=i),o?d(r,t,e,a):setTimeout(function(){d(r,t,e,a)},4),f},f.config=function(t){return f(t)},t._defined=_,a=function(t,e,a){if("string"!=typeof t)throw new Error("See almond README: incorrect module build, no module name");e.splice||(a=e,e=[]),o(_,t)||o(v,t)||(v[t]=[t,e,a])},a.amd={jQuery:!0}}(),a("libs/almond",function(){}),function(t){"undefined"!=typeof a?a("dcl/mini",[],t):"undefined"!=typeof module?module.exports=t():dcl=t()}(function(){"use strict";function t(e,r){var i,c,h,u,d,f,p,b,_,v,m=[0],w=0;if(e)if(e instanceof Array){for(d={},b=e.slice(0).reverse(),_=b.length-1;_>=0;--_)if(c=b[_],c._uniqueId=c._uniqueId||n++,i=c._meta){for(p=i.bases,w=p.length-1;w>0;--w)v=p[w]._uniqueId,d[v]=(d[v]||0)+1;b[_]=p.slice(0)}else b[_]=[c];f={};t:for(;b.length;){for(_=0;_<b.length;++_)if(p=b[_],c=p[0],v=c._uniqueId,!d[v]){f[v]||(m.push(c),f[v]=1),p.shift(),p.length?--d[p[0]._uniqueId]:b.splice(_,1);continue t}t._error("cycle",r,b)}e=e[0],w=m.length-((u=e._meta)&&e===m[m.length-(w=u.bases.length)]?w:1)-1}else e._uniqueId=e._uniqueId||n++,m=m.concat((u=e._meta)?u.bases:e);for(i=e?t.delegate(e[l]):{},p=e&&(u=e._meta)?t.delegate(u.weaver):{constructor:2};w>0;--w)if(c=m[w],u=c._meta,t.mix(i,u&&u.ownProps||c[l]),u)for(v in b=u.weaver)p[v]=(+p[v]||0)|b[v];for(v in r)a(u=r[v])?p[v]=+p[v]||0:i[v]=u;return u={bases:m,ownProps:r,weaver:p,chains:{}},m[0]={_meta:u,prototype:i},o(u,i),h=i[s],h._meta=u,h[l]=i,m[0]=h,t._postprocess(h)}function e(t){this.around=t}function a(t){return t&&t.spr instanceof e}function r(t){var e=[];for(var a in t)e.push(a);return e}function o(e,a){var r=e.weaver,o=e.bases,i=e.chains;for(var n in r)a[n]=t._stub(r[n],o,n,i)}var i,n=0,s="constructor",l="prototype",c={};return(i=function(t,e){for(var a in e)t[a]=e[a]})(t,{mix:i,delegate:function(t){return Object.create(t)},allKeys:r,Super:e,superCall:function(e){return t._makeSuper(e)},_makeSuper:function(t,a){var r=function(){};return r.spr=new(a||e)(t),r},_postprocess:function(t){return t},_error:function(t){throw Error("dcl: "+t)},_instantiate:function(t,e,a){var r=t.spr.around(e);return r.ctr=t.ctr,r},_extractChain:function(t,e,r){for(var o,i,n=t.length-1,h=[],u="around"==r;o=t[n];--n)((i=o._meta)?(i=i.ownProps).hasOwnProperty(e)&&(a(i=i[e])?u?i.spr.around:i=i.spr[r]:u):u&&(i=e==s?o:o[l][e])&&i!==c[e])&&(i.ctr=o,h.push(i));return h},_stubChain:function(t){var e,a=t.length;return a?1==a?(e=t[0],function(){e.apply(this,arguments)}):function(){for(var e=0;a>e;++e)t[e].apply(this,arguments)}:0},_stubSuper:function(e,r){for(var o,i=0,n=c[r];o=e[i];++i)n=a(o)?e[i]=t._instantiate(o,n,r):o;return r!=s?n:function(){n.apply(this,arguments)}},_stubChainSuper:function(e,r,o){for(var i,n,l=0,c=0;i=e[l];++l)a(i)&&(n=l-c,e[l]=t._instantiate(i,n?1==n?e[c]:r(e.slice(c,l)):0,o),c=l);return n=l-c,n?1==n&&o!=s?e[c]:r(c?e.slice(c):e):0},_stub:function(e,a,r,o){var i=o[r]=t._extractChain(a,r,"around");return(e?t._stubChainSuper(i,t._stubChain,r):t._stubSuper(i,r))||function(){}}}),t}),function(t){"undefined"!=typeof a?a("dcl/dcl",["./mini"],t):"undefined"!=typeof module?module.exports=t(e("./mini")):dcl=t(dcl)}(function(t){"use strict";function e(){}function a(e){return t._makeSuper(e,i)}function r(t,a,r){var o=t||e,i=a||e,n=r||e,s=function(){var t,e;o.apply(this,arguments);try{t=n.apply(this,arguments)}catch(a){t=a,e=!0}if(i.call(this,arguments,t),e)throw t;return t};return s.advices={before:t,after:a,around:r},s}function o(e){return function(a,r){var o,i=a._meta;i&&(o=+i.weaver[r]||0,o&&o!=e&&t._error("set chaining",r,a,e,o),i.weaver[r]=e)}}var i=t(t.Super,{constructor:function(){this.before=this.around.before,this.after=this.around.after,this.around=this.around.around}});return t.mix(t,{Advice:i,advise:a,before:function(e){return t.advise({before:e})},after:function(e){return t.advise({after:e})},around:t.superCall,chainBefore:o(1),chainAfter:o(2),isInstanceOf:function(t,e){if(t instanceof e)return!0;var a,r=t.constructor._meta;if(r)for(r=r.bases,a=r.length-1;a>=0;--a)if(r[a]===e)return!0;return!1},_stub:function(e,a,o,i){var n=i[o]=t._extractChain(a,o,"around"),s=t._extractChain(a,o,"before").reverse(),l=t._extractChain(a,o,"after");return n=e?t._stubChainSuper(n,1==e?function(e){return t._stubChain(e.reverse())}:t._stubChain,o):t._stubSuper(n,o),s.length||l.length?r(t._stubChain(s),t._stubChain(l),n):n||function(){}}}),t}),a("wcDocker/types",[],function(){var t={};return t.DOCK={MODAL:"modal",FLOAT:"float",TOP:"top",LEFT:"left",RIGHT:"right",BOTTOM:"bottom",STACKED:"stacked"},t.LAYOUT={SIMPLE:"wcLayoutSimple",TABLE:"wcLayoutTable"},t.EVENT={INIT:"panelInit",LOADED:"dockerLoaded",UPDATED:"panelUpdated",VISIBILITY_CHANGED:"panelVisibilityChanged",BEGIN_DOCK:"panelBeginDock",END_DOCK:"panelEndDock",GAIN_FOCUS:"panelGainFocus",LOST_FOCUS:"panelLostFocus",CLOSING:"panelClosing",CLOSED:"panelClosed",PERSISTENT_CLOSED:"panelPersistentClosed",PERSISTENT_OPENED:"panelPersistentOpened",BUTTON:"panelButton",ATTACHED:"panelAttached",DETACHED:"panelDetached",MOVE_STARTED:"panelMoveStarted",MOVE_ENDED:"panelMoveEnded",MOVED:"panelMoved",RESIZE_STARTED:"panelResizeStarted",RESIZE_ENDED:"panelResizeEnded",RESIZED:"panelResized",ORDER_CHANGED:"panelOrderChanged",SCROLLED:"panelScrolled",SAVE_LAYOUT:"layoutSave",RESTORE_LAYOUT:"layoutRestore",CUSTOM_TAB_CHANGED:"customTabChanged",CUSTOM_TAB_CLOSED:"customTabClosed"},t.PANEL_PLACEHOLDER="__wcDockerPlaceholderPanel",t.COLLAPSED="__wcDockerCollapsedPanel",t.ORIENTATION={VERTICAL:!1,HORIZONTAL:!0},t.TAB={TOP:"top",LEFT:"left",RIGHT:"right",BOTTOM:"bottom"},t}),a("wcDocker/base",["dcl/dcl"],function(t){return t(null,{getOptions:function(){return this._options||this.docker()._options||{}},option:function(t,e){return this.getOptions()[t]||e},instanceOf:function(t,e){return e=e||this,!(!e||-1==e.declaredClass.indexOf(t))},docker:function(t){for(var e=t||this._parent;e&&!e.instanceOf("wcDocker");)e=e._parent;return e},__getClass:function(t){return this.getOptions()[t+"Class"]}})}),a("wcDocker/panel",["dcl/dcl","./types","./base"],function(t,e,a){var r=t(a,{declaredClass:"wcPanel",constructor:function(t,e,a){this.$container=null,this._parent=t,this.$icon=null,this.$title=null,this.$titleText=null,this.$loading=null,this._panelObject=null,this._initialized=!1,this._collapseDirection=void 0,this._type=e,this._title=e,this._titleVisible=!0,this._options=a,this._layout=null,this._buttonList=[],this._actualPos={x:.5,y:.5},this._actualSize={x:0,y:0},this._resizeData={time:-1,timeout:!1,delta:150},this._pos={x:.5,y:.5},this._moveData={time:-1,timeout:!1,delta:150},this._size={x:-1,y:-1},this._minSize={x:100,y:100},this._maxSize={x:1/0,y:1/0},this._scroll={x:0,y:0},this._scrollable={x:!0,y:!0},this._collapsible=!0,this._overflowVisible=!1,this._moveable=!0,this._closeable=!0,this._resizeVisible=!0,this._isVisible=!1,this._events={},this.__init()},title:function(t){return"undefined"!=typeof t&&(t===!1?(this._titleVisible=!1,this.$titleText.html(this._type)):(this._title=t,this.$titleText.html(t)),this.$icon&&this.$titleText.prepend(this.$icon),this._parent&&this._parent.instanceOf("wcFrame")&&this._parent.__updateTabs()),this._title},info:function(){return this.docker().panelTypeInfo(this._type)},layout:function(){return this._layout},focus:function(t){var e=this.docker();if(e){e.__focus(this._parent,t);for(var a=0;a<this._parent._panelList.length;++a)if(this._parent._panelList[a]===this&&this._parent._curTab!==a){this._parent.panel(a);break}}},collapseDirection:function(t){this._collapseDirection=t},isVisible:function(){return this._isVisible},isFloating:function(){return this._parent&&this._parent.instanceOf("wcFrame")?this._parent._isFloating:!1},isInFocus:function(){var t=this.docker();return t&&this._parent&&this._parent.instanceOf("wcFrame")?this._parent===t._focusFrame:!1},addButton:function(t,e,a,r,o,i){this._buttonList.push({name:t,className:e,toggleClassName:i,text:a,tip:r,isTogglable:o,isToggled:!1}),this._parent&&this._parent.instanceOf("wcFrame")&&this._parent.__update()},removeButton:function(t){for(var e=0;e<this._buttonList.length;++e)if(this._buttonList[e].name===t)return this._buttonList.splice(e,1),this._parent&&this._parent.instanceOf("wcFrame")&&this._parent.__onTabChange(),this._parent&&this._parent.instanceOf("wcFrame")&&this._parent.__update(),!0;return!1},buttonState:function(t,e){for(var a=0;a<this._buttonList.length;++a)if(this._buttonList[a].name===t)return"undefined"!=typeof e&&(this._buttonList[a].isToggled=e,this._parent&&this._parent.instanceOf("wcFrame")&&this._parent.__onTabChange()),this._parent&&this._parent.instanceOf("wcFrame")&&this._parent.__update(),this._buttonList[a].isToggled;return!1},initPos:function(t,e){if("undefined"!=typeof t){var a=this.docker();a?this._pos.x=a.__stringToPercent(t,a.$container.width()):this._pos.x=t}if("undefined"!=typeof e){var a=this.docker();a?this._pos.y=a.__stringToPercent(e,a.$container.height()):this._pos.y=e}return{x:this._pos.x,y:this._pos.y}},initSize:function(t,e){if("undefined"!=typeof t){var a=this.docker();a?this._size.x=a.__stringToPixel(t,a.$container.width()):this._size.x=t}if("undefined"!=typeof e){var a=this.docker();a?this._size.y=a.__stringToPixel(e,a.$container.height()):this._size.y=e}return{x:this._size.x,y:this._size.y}},minSize:function(t,e){if("undefined"!=typeof t){var a=this.docker();a?this._minSize.x=a.__stringToPixel(t,a.$container.width()):this._minSize.x=t}if("undefined"!=typeof e){var a=this.docker();a?this._minSize.y=a.__stringToPixel(e,a.$container.height()):this._minSize.y=e}return{x:this._minSize.x,y:this._minSize.y}},maxSize:function(t,e){if("undefined"!=typeof t){var a=this.docker();a?this._maxSize.x=a.__stringToPixel(t,a.$container.width()):this._maxSize.x=t}if("undefined"!=typeof e){var a=this.docker();a?this._maxSize.y=a.__stringToPixel(e,a.$container.height()):this._maxSize.y=e}return{x:this._maxSize.x,y:this._maxSize.y}},width:function(){return this.$container?this.$container.width():0},height:function(){return this.$container?this.$container.height():0},icon:function(t){this.$icon||(this.$icon=$("<div>"),this.$titleText.prepend(this.$icon)),this.$icon.removeClass(),this.$icon.addClass("wcTabIcon "+t),this._parent&&this._parent.instanceOf("wcFrame")&&this._parent.__updateTabs()},faicon:function(t){this.$icon||(this.$icon=$("<div>"),this.$titleText.prepend(this.$icon)),this.$icon.removeClass(),this.$icon.addClass("wcTabIcon fa fa-fw fa-"+t),this._parent&&this._parent.instanceOf("wcFrame")&&this._parent.__updateTabs()},scrollable:function(t,e){return"undefined"!=typeof t&&(this._scrollable.x=t?!0:!1,this._scrollable.y=e?!0:!1),{x:this._scrollable.x,y:this._scrollable.y}},scroll:function(t,e,a){return this.$container?("undefined"!=typeof t&&(a?this.$container.parent().stop().animate({scrollLeft:t,scrollTop:e},a):(this.$container.parent().scrollLeft(t),this.$container.parent().scrollTop(e))),{x:this.$container.parent().scrollLeft(),y:this.$container.parent().scrollTop()}):{x:0,y:0}},collapsible:function(t){return"undefined"!=typeof t&&(this._collapsible=t?!0:!1),this._collapsible},overflowVisible:function(t){return"undefined"!=typeof t&&(this._overflowVisible=t?!0:!1),this._overflowVisible},resizeVisible:function(t){return"undefined"!=typeof t&&(this._resizeVisible=t?!0:!1),this._resizeVisible},moveable:function(t){return"undefined"!=typeof t&&(this._moveable=t?!0:!1,this.$title.toggleClass("wcNotMoveable",!this._moveable)),this._moveable},closeable:function(t){return"undefined"!=typeof t&&(this._closeable=t?!0:!1,this._parent&&this._parent.__update()),this._closeable},close:function(){var t=this.docker();t&&t.__closePanel(this)},startLoading:function(t,e,a){if(!this.$loading){this.$loading=$('<div class="wcLoadingContainer"></div>'),this.$container.append(this.$loading);var r=$('<div class="wcLoadingBackground"></div>');"number"!=typeof e&&(e=.4),this.$loading.append(r);var o=$('<div class="wcLoadingIconContainer"><i class="wcLoadingIcon '+this.docker()._options.loadingClass+'"></i></div>');if(this.$loading.append(o),t){var i=$('<span class="wcLoadingLabel">'+t+"</span>");this.$loading.append(i)}"number"!=typeof a&&(a=1),this.docker().$loading&&(e=0,a=0),r.css("opacity",e),o.css("opacity",a),i&&i.css("opacity",a)}},finishLoading:function(t){if(this.$loading)if(t>0){var e=this;this.$loading.fadeOut(t,function(){e.$loading.remove(),e.$loading=null,e.docker().__testLoadFinished()})}else this.$loading.remove(),this.$loading=null,this.docker().__testLoadFinished()},on:function(t,e){return t?(this._events[t]||(this._events[t]=[]),-1!==this._events[t].indexOf(e)?!1:(this._events[t].push(e),!0)):!1},off:function(t,e){if("undefined"==typeof t)return void(this._events={});if(this._events[t])if("undefined"==typeof e)this._events[t]=[];else for(var a=0;a<this._events[t].length;++a)if(this._events[t][a]===e){this._events[t].splice(a,1);break}},trigger:function(t,e){var a=this.docker();return a?a.trigger(t,e):[]},__init:function(){var t=this._options&&this._options.layout||"wcLayoutTable";this._layout=new(this.docker().__getClass(t))(this.$container,this),this.$title=$('<div class="wcPanelTab">'),this.$titleText=$("<div>"+this._title+"</div>"),this.$title.append(this.$titleText),this._options.hasOwnProperty("title")&&this.title(this._options.title),this._options.icon&&this.icon(this._options.icon),this._options.faicon&&this.faicon(this._options.faicon)},__update:function(){var t=this.docker();if(t&&(this._layout.__update(),this.$container)){if(this._resizeVisible?this._parent.$frame.removeClass("wcHideOnResize"):this._parent.$frame.addClass("wcHideOnResize"),this._initialized)this.__trigger(e.EVENT.UPDATED);else{this._initialized=!0;var a=this;setTimeout(function(){a.__trigger(e.EVENT.INIT),t.__testLoadFinished()},0)}var r=this.$container.width(),o=this.$container.height();(this._actualSize.x!==r||this._actualSize.y!==o)&&(this._resizeData.time=new Date,this._resizeData.timeout||(this._resizeData.timeout=!0,setTimeout(this.__resizeEnd.bind(this),this._resizeData.delta),this.__trigger(e.EVENT.RESIZE_STARTED,{width:this._actualSize.x,height:this._actualSize.y})),this._actualSize.x=r,this._actualSize.y=o,this.__trigger(e.EVENT.RESIZED,{width:this._actualSize.x,height:this._actualSize.y}));var i=this.$container.offset();(this._actualPos.x!==i.left||this._actualPos.y!==i.top)&&(this._moveData.time=new Date,this._moveData.timeout||(this._moveData.timeout=!0,setTimeout(this.__moveEnd.bind(this),this._moveData.delta),this.__trigger(e.EVENT.MOVE_STARTED,{x:this._actualPos.x,y:this._actualPos.y})),this._actualPos.x=i.left,this._actualPos.y=i.top,this.__trigger(e.EVENT.MOVED,{x:this._actualPos.x,y:this._actualPos.y}))}},__resizeEnd:function(){new Date-this._resizeData.time<this._resizeData.delta?setTimeout(this.__resizeEnd.bind(this),this._resizeData.delta):(this._resizeData.timeout=!1,this.__trigger(e.EVENT.RESIZE_ENDED,{width:this._actualSize.x,height:this._actualSize.y}))},__moveEnd:function(){new Date-this._moveData.time<this._moveData.delta?setTimeout(this.__moveEnd.bind(this),this._moveData.delta):(this._moveData.timeout=!1,this.__trigger(e.EVENT.MOVE_ENDED,{x:this._actualPos.x,y:this._actualPos.y}))},__isVisible:function(t){this._isVisible!==t&&(this._isVisible=t,this.__trigger(e.EVENT.VISIBILITY_CHANGED,this._isVisible))},__save:function(){var t={};return t.type="wcPanel",t.panelType=this._type,t.size={x:this._size.x,y:this._size.y},t.customData={},this.__trigger(e.EVENT.SAVE_LAYOUT,t.customData),t},__restore:function(t,a){t.size&&(this._size.x=t.size.x,this._size.y=t.size.y),this.__trigger(e.EVENT.RESTORE_LAYOUT,t.customData)},__trigger:function(t,e){if(!t)return!1;var a=[];if(this._events[t])for(var r=this._events[t].slice(0),o=0;o<r.length;++o)a.push(r[o].call(this,e));return a},__rect:function(){var t=this.$container.offset(),e=this.$container.width(),a=this.$container.height();return{x:t.left,y:t.top,w:e,h:a}},__container:function(t){return"undefined"==typeof t?this.$container:(this.$container=t,this.$container?(this._layout.__container(this.$container),this.$loading&&this.$container.append(this.$loading)):(this._layout.__container(null),this.finishLoading()),this.$container)},__destroy:function(){this._panelObject=null,this.off(),this.__container(null),this._parent=null}});return r}),a("wcDocker/ghost",["dcl/dcl","./types"],function(t,e){var a=t(null,{declaredClass:"wcGhost",constructor:function(t,e,a){this.$ghost=null,this._rect,this._anchorMouse=!1,this._anchor=null,this._docker=a,this._outer=a.__findInner(),this._outer&&this._outer.instanceOf("wcSplitter")&&(this._inner=this._outer.right()),this.__init(t,e)},update:function(t){this.__move(t);for(var e=0;e<this._docker._floatingList.length;++e){var a=this._docker._floatingList[e].__rect();if(t.x>a.x&&t.y>a.y&&t.x<a.x+a.w&&t.y<a.y+a.h)return void(this._docker._floatingList[e].__checkAnchorDrop(t,!1,this,!0,void 0,!0)?this._anchor.panel=this._docker._floatingList[e].panel():this.anchor(t,null))}for(var e=0;e<this._docker._frameList.length;++e){var a=this._docker._frameList[e].__rect();if(t.x>a.x&&t.y>a.y&&t.x<a.x+a.w&&t.y<a.y+a.h)return void(this._docker._frameList[e].__checkAnchorDrop(t,!1,this,!0,void 0,!0)?this._anchor.panel=this._docker._frameList[e].panel():this.anchor(t,null))}},anchor:function(t,a){if("undefined"==typeof t)return this._anchor;if(!a||!this._anchor||a.loc!==this._anchor.loc||a.item!==this._anchor.item){var r={x:parseInt(this.$ghost.css("left")),y:parseInt(this.$ghost.css("top")),w:parseInt(this.$ghost.css("width")),h:parseInt(this.$ghost.css("height"))};if(this._anchorMouse={x:r.x-t.x,y:r.y-t.y},this._rect.x=-this._anchorMouse.x,this._rect.y=-this._anchorMouse.y,!a){if(!this._anchor)return;if(this._docker._draggingFrame&&this._docker._draggingFrame.$container){var o=this._docker._draggingFrame._panelList[0]._options.detachToWidth||this._docker._options.detachToWidth||this._rect.w,i=this._docker._draggingFrame._panelList[0]._options.detachToHeight||this._docker._options.detachToHeight||this._rect.h;this._rect.w=this._docker.__stringToPixel(o,this._docker.$container.width()),this._rect.h=this._docker.__stringToPixel(i,this._docker.$container.height())}return this._anchor=null,this.$ghost.show(),void this.$ghost.stop().animate({opacity:.3,"margin-left":this._rect.x-this._rect.w/2+"px","margin-top":this._rect.y-10+"px",width:this._rect.w+"px",height:this._rect.h+"px"},150)}this._anchor=a;var n=.8;a.self&&a.loc===e.DOCK.STACKED?(n=0,this.$ghost.hide()):this.$ghost.show(),this.$ghost.stop().animate({opacity:n,"margin-left":"2px","margin-top":"2px",border:"0px",left:a.x+"px",top:a.y+"px",width:a.w+"px",height:a.h+"px"},150)}},rect:function(){return{x:this.$ghost.offset().left,y:this.$ghost.offset().top,w:parseInt(this.$ghost.css("width")),h:parseInt(this.$ghost.css("height")),tabOrientation:this._anchor&&this._anchor.tab}},destroy:function(){this.__destroy()},__init:function(t,e){this.$ghost=$('<div class="wcGhost">').css("opacity",0).css("top",t.y+"px").css("left",t.x+"px").css("width",t.w+"px").css("height",t.h+"px"),this._anchorMouse={x:t.x-e.x,y:t.y-e.y},this._rect={x:-this._anchorMouse.x,y:-this._anchorMouse.y,w:t.w,h:t.h},$("body").append(this.$ghost),this.anchor(e,t)},__move:function(t){if(!this._anchor){var e=parseInt(this.$ghost.css("left")),a=parseInt(this.$ghost.css("top"));e=t.x+this._anchorMouse.x,a=t.y+this._anchorMouse.y,this.$ghost.css("left",e+"px"),this.$ghost.css("top",a+"px")}},__rect:function(){return this._rect},__destroy:function(){this.$ghost.stop().animate({opacity:0},{duration:175,complete:function(){$(this).remove()}})}});return a}),a("wcDocker/splitter",["dcl/dcl","./types","./base"],function(t,e,a){var r=t(a,{declaredClass:"wcSplitter",constructor:function(t,e,a){this.$container=$(t),this._parent=e,this._orientation=a,this._pane=[!1,!1],this.$pane=[],this.$bar=null,this._pos=.5,this._posTarget=.5,this._pixelPos=-1,this._findBestPos=!1,this._anim=0,this._boundEvents=[],this.__init(),this.docker()._splitterList.push(this)},initLayouts:function(t,e){var a=t||"wcLayoutTable",r=new(this.docker().__getClass(a))(this.$pane[0],this);a=e||"wcLayoutTable";var o=new(this.docker().__getClass(a))(this.$pane[1],this);this.pane(0,r),this.pane(1,o)},orientation:function(t){return"undefined"==typeof t?this._orientation:void(this._orientation!=t&&(this._orientation=t,this._orientation?this.$bar.removeClass("wcWide").removeClass("wcSplitterBarH").addClass("wcTall").addClass("wcSplitterBarV"):this.$bar.removeClass("wcTall").removeClass("wcSplitterBarV").addClass("wcWide").addClass("wcSplitterBarH"),this.$pane[0].css("top","").css("left","").css("width","").css("height",""),this.$pane[1].css("top","").css("left","").css("width","").css("height",""),this.$bar.css("top","").css("left","").css("width","").css("height",""),this.__update(),this._parent&&this._parent.instanceOf("wcPanel")&&this._parent.__trigger(e.EVENT.UPDATED)))},minSize:function(){var t,e;return this._pane[0]&&"function"==typeof this._pane[0].minSize&&(t=this._pane[0].minSize()),this._pane[1]&&"function"==typeof this._pane[1].minSize&&(e=this._pane[1].minSize()),t&&e?(this._orientation?(t.x+=e.x,t.y=Math.max(t.y,e.y)):(t.y+=e.y,t.x=Math.max(t.x,e.x)),t):t?t:e?e:!1},maxSize:function(){var t,e;return this._pane[0]&&"function"==typeof this._pane[0].maxSize&&(t=this._pane[0].maxSize()),this._pane[1]&&"function"==typeof this._pane[1].maxSize&&(e=this._pane[1].maxSize()),t&&e?(this._orientation?(t.x+=e.x,t.y=Math.min(t.y,e.y)):(t.y+=e.y,t.x=Math.min(t.x,e.x)),t):t?t:e?e:!1},pos:function(t){return"undefined"!=typeof t&&(this._pos=this._posTarget=t,this.__update(),this._parent&&this._parent.instanceOf("wcPanel")&&this._parent.__trigger(e.EVENT.UPDATED)),this._posTarget},animPos:function(t,e){this._posTarget=t;var a=this;this.$bar.queue(function(t){a._anim&&clearInterval(a._anim),a._anim=setInterval(function(){a._pos>a._posTarget&&(a._pos-=(a._pos-a._posTarget)/5,a._pos<=a._posTarget+.01&&(a._pos=a._posTarget)),a._pos<a._posTarget&&(a._pos+=(a._posTarget-a._pos)/5,a._pos>=a._posTarget-.01&&(a._pos=a._posTarget)),a.__update(),a._pos==a._posTarget&&(e&&e(),t(),clearInterval(a._anim),a._anim=0)},5)}),this.$bar.dequeue()},pane:function(t,e){if(t>=0&&2>t){if("undefined"==typeof e)return this._pane[t];if(e)return this._pane[t]=e,e._parent=this,e.__container(this.$pane[t]),this._pane[0]&&this._pane[1]&&this.__update(),e;this._pane[t]&&(this._pane[t].__container(null),this._pane[t]=!1)}return!1},left:function(t){return this.pane(0,t)},right:function(t){return this.pane(1,t)},top:function(t){return this.pane(0,t)},bottom:function(t){return this.pane(1,t)},scrollable:function(t,e,a){return"undefined"!=typeof e&&this.$pane[t].toggleClass("wcScrollableX",e),"undefined"!=typeof a&&this.$pane[t].toggleClass("wcScrollableY",a),{x:this.$pane[t].hasClass("wcScrollableX"),y:this.$pane[t].hasClass("wcScrollableY")}},destroy:function(t){var e=this.docker();if(e){var a=this.docker()._splitterList.indexOf(this);a>-1&&this.docker()._splitterList.splice(a,1)}void 0===t||t?this.__destroy():this.__container(null)},__init:function(){if(this.$pane.push($('<div class="wcLayoutPane wcScrollableX wcScrollableY">')),this.$pane.push($('<div class="wcLayoutPane wcScrollableX wcScrollableY">')),this.$bar=$('<div class="wcSplitterBar">'),this._orientation?this.$bar.addClass("wcTall").addClass("wcSplitterBarV"):this.$bar.addClass("wcWide").addClass("wcSplitterBarH"),this.__container(this.$container),this._parent&&this._parent.instanceOf("wcPanel")){this._boundEvents.push({event:e.EVENT.UPDATED,handler:this.__update.bind(this)}),this._boundEvents.push({event:e.EVENT.CLOSED,handler:this.destroy.bind(this)});for(var t=0;t<this._boundEvents.length;++t)this._parent.on(this._boundEvents[t].event,this._boundEvents[t].handler)}},__update:function(t){var a=this.$container.outerWidth(),r=this.$container.outerHeight(),o=this.__minPos(),i=this.__maxPos();if(this._findBestPos){this._findBestPos=!1;var n,s;this._pane[0]&&"function"==typeof this._pane[0].initSize&&(n=this._pane[0].initSize(),n&&(n.x<0&&(n.x=a/2),n.y<0&&(n.y=r/2))),this._pane[1]&&"function"==typeof this._pane[1].initSize&&(s=this._pane[1].initSize(),s&&(s.x<0&&(s.x=a/2),s.y<0&&(s.y=r/2),s.x=a-s.x,s.y=r-s.y));var l;n&&s?l={x:Math.min(n.x,s.x),y:Math.min(n.y,s.y)}:n?l=n:s&&(l=s),l&&(this._orientation?this._pos=l.x/a:this._pos=l.y/r)}if(this.$bar.toggleClass("wcSplitterBarStatic",this.__isStatic()),this._orientation===e.ORIENTATION.HORIZONTAL){var c=this.$bar.outerWidth()/2,h=parseInt(this.$bar.css("border-top-width"))+parseInt(this.$bar.css("border-bottom-width"));if(t){var u=this._pixelPos-(this.$container.offset().left+parseInt(this.$container.css("border-left-width")))-this.$bar.outerWidth()/2;this._pos=u/(a-this.$bar.outerWidth())}this._pos=Math.min(Math.max(this._pos,0),1);var l=(a-this.$bar.outerWidth())*this._pos+c;o&&(l=Math.max(o.x,l)),i&&(l=Math.min(i.x,l));var d=0,f=0;if(this._parent&&"wcCollapser"===this._parent.declaredClass){var p=this.docker().$container,b=this._parent.$container;d=b.offset().top-p.offset().top,f=p.offset().top+p.outerHeight()-(b.offset().top+b.outerHeight())}this.$bar.css("left",l-c),this.$bar.css("top",d),this.$bar.css("height",r-h-f),this.$pane[0].css("width",l-c),this.$pane[0].css("left","0px"),this.$pane[0].css("right",""),this.$pane[0].css("top",d),this.$pane[0].css("bottom",f),this.$pane[1].css("left",""),this.$pane[1].css("right","0px"),this.$pane[1].css("width",a-l-c-2*parseInt(this.$container.css("border-left-width"))),this.$pane[1].css("top",d),this.$pane[1].css("bottom",f),this._pixelPos=this.$bar.offset().left+c}else{var c=this.$bar.outerHeight()/2,h=parseInt(this.$bar.css("border-left-width"))+parseInt(this.$bar.css("border-right-width"));if(t){var u=this._pixelPos-(this.$container.offset().top+parseInt(this.$container.css("border-top-width")))-this.$bar.outerHeight()/2;this._pos=u/(r-this.$bar.outerHeight())}this._pos=Math.min(Math.max(this._pos,0),1);var l=(r-this.$bar.outerHeight())*this._pos+c;o&&(l=Math.max(o.y,l)),i&&(l=Math.min(i.y,l));var _=0,v=0;if(this._parent&&"wcCollapser"===this._parent.declaredClass){var p=this.docker().$container,b=this._parent.$container;_=b.offset().left-p.offset().left,v=p.offset().left+p.outerWidth()-(b.offset().left+b.outerWidth())}this.$bar.css("top",l-c),this.$bar.css("left",_),this.$bar.css("width",a-h-f),this.$pane[0].css("height",l-c),this.$pane[0].css("top","0px"),this.$pane[0].css("bottom",""),this.$pane[0].css("left",_),this.$pane[0].css("right",v),this.$pane[1].css("top",""),this.$pane[1].css("bottom","0px"),this.$pane[1].css("height",r-l-c-2*parseInt(this.$container.css("border-top-width"))),this.$pane[1].css("left",_),this.$pane[1].css("right",v),this._pixelPos=this.$bar.offset().top+c}void 0===t&&(t=!0),this._pane[0]&&this._pane[0].__update(t),this._pane[1]&&this._pane[1].__update(t)},__save:function(){if(this._pane[0]&&"wcCollapser"===this._pane[0].declaredClass)return this._pane[1].__save();if(this._pane[1]&&"wcCollapser"===this._pane[1].declaredClass)return this._pane[0].__save();var t={};return t.type="wcSplitter",t.horizontal=this._orientation,t.isDrawer=this.$bar.hasClass("wcDrawerSplitterBar"),t.pane0=this._pane[0]?this._pane[0].__save():null,t.pane1=this._pane[1]?this._pane[1].__save():null,t.pos=this._pos,t},__restore:function(t,e){this._pos=t.pos,t.isDrawer&&this.$bar.addClass("wcDrawerSplitterBar"),t.pane0&&(this._pane[0]=e.__create(t.pane0,this,this.$pane[0]),this._pane[0].__restore(t.pane0,e)),t.pane1&&(this._pane[1]=e.__create(t.pane1,this,this.$pane[1]),this._pane[1].__restore(t.pane1,e))},__findBestPos:function(){this._findBestPos=!0},__moveBar:function(t){var a=this.$container.offset();if(t.x-=a.left,t.y-=a.top,this._orientation===e.ORIENTATION.HORIZONTAL){var r=this.$container.outerWidth()-this.$bar.outerWidth();t.x+=1-parseInt(this.$container.css("border-left-width"))-this.$bar.outerWidth()/2,this.pos(t.x/r)}else{var o=this.$container.outerHeight()-this.$bar.outerHeight();t.y+=1-parseInt(this.$container.css("border-top-width"))-this.$bar.outerHeight()/2,this.pos(t.y/o)}},__minPos:function(){var t,a=this.$container.outerWidth(),r=this.$container.outerHeight();t=this._pane[0]&&"function"==typeof this._pane[0].minSize?this._pane[0].minSize():{x:50,y:50};var o;if(o=this._pane[1]&&"function"==typeof this._pane[1].maxSize?this._pane[1].maxSize():{x:a,y:r},this._orientation===e.ORIENTATION.HORIZONTAL){var i=this.$bar.outerWidth()/2;t.x+=i,a-=i}else{var i=this.$bar.outerHeight()/2;t.y+=i,r-=i}return o.x=a-Math.min(o.x,a),o.y=r-Math.min(o.y,r),t.x=Math.max(t.x,o.x),t.y=Math.max(t.y,o.y),t},__maxPos:function(){var t,a=this.$container.outerWidth(),r=this.$container.outerHeight();t=this._pane[0]&&"function"==typeof this._pane[0].maxSize?this._pane[0].maxSize():{x:a,y:r};var o;if(o=this._pane[1]&&"function"==typeof this._pane[1].minSize?this._pane[1].minSize():{x:50,y:50},this._orientation===e.ORIENTATION.HORIZONTAL){var i=this.$bar.outerWidth()/2;t.x+=i,a-=i}else{var i=this.$bar.outerHeight()/2;t.y+=i,r-=i}return o.x=a-o.x,o.y=r-o.y,t.x=Math.min(o.x,t.x),t.y=Math.min(o.y,t.y),t},__isStatic:function(){for(var t=this._orientation===e.ORIENTATION.HORIZONTAL?"x":"y",a=0;2>a;++a)if(this._pane[a]&&this._pane[a].minSize&&this._pane[a].maxSize&&this._pane[a].maxSize()[t]-this._pane[a].minSize()[t]===0)return!0;return!1},__container:function(t){return"undefined"==typeof t?this.$container:(this.$container=t,this.$container?(this.$container.append(this.$pane[0]),this.$container.append(this.$pane[1]),this.$container.append(this.$bar)):(this.$pane[0].remove(), -this.$pane[1].remove(),this.$bar.remove()),this.$container)},__removeChild:function(t){if(this._pane[0]===t)this._pane[0]=!1;else{if(this._pane[1]!==t)return;this._pane[1]=!1}t&&(t.__container(null),t._parent=null)},__destroy:function(){for(this._anim&&(clearInterval(this._anim),this._anim=0),this.$bar.clearQueue();this._boundEvents.length;)this._parent.off(this._boundEvents[0].event,this._boundEvents[0].handler),this._boundEvents.shift();this._pane[0]&&(this._pane[0].__destroy(),this._pane[0]=null),this._pane[1]&&(this._pane[1].__destroy(),this._pane[1]=null),this.__container(null),this._parent=!1}});return r}),a("wcDocker/frame",["dcl/dcl","./types","./base"],function(t,e,a){var r=t(a,{declaredClass:"wcFrame",LEFT_TAB_BUFFER:15,constructor:function(t,a,r){this.$container=$(t),this._parent=a,this._isFloating=r,this.$frame=null,this.$title=null,this.$titleBar=null,this.$tabBar=null,this.$tabScroll=null,this.$center=null,this.$tabLeft=null,this.$tabRight=null,this.$close=null,this.$collapse=null,this.$top=null,this.$bottom=null,this.$left=null,this.$right=null,this.$corner1=null,this.$corner2=null,this.$corner3=null,this.$corner4=null,this.$buttonBar=null,this.$shadower=null,this.$modalBlocker=null,this._titleVisible=!0,this._canScrollTabs=!1,this._tabOrientation=e.TAB.TOP,this._tabScrollPos=0,this._curTab=-1,this._panelList=[],this._buttonList=[],this._resizeData={time:-1,timeout:!1,delta:150},this._pos={x:.5,y:.5},this._size={x:400,y:400},this._lastSize={x:400,y:400},this._anchorMouse={x:0,y:0},this.__init()},pos:function(t,e,a){var r=this.$container.width(),o=this.$container.height();return"undefined"==typeof t?a?{x:this._pos.x*r,y:this._pos.y*o}:{x:this._pos.x,y:this._pos.y}:void(a?(this._pos.x=t/r,this._pos.y=e/o):(this._pos.x=t,this._pos.y=e))},initSize:function(){for(var t={x:-1,y:-1},e=0;e<this._panelList.length;++e)t.x<this._panelList[e].initSize().x&&(t.x=this._panelList[e].initSize().x),t.y<this._panelList[e].initSize().y&&(t.y=this._panelList[e].initSize().y);return t.x<0||t.y<0?!1:t},minSize:function(){for(var t={x:0,y:0},e=0;e<this._panelList.length;++e)t.x=Math.max(t.x,this._panelList[e].minSize().x),t.y=Math.max(t.y,this._panelList[e].minSize().y);return t},maxSize:function(){for(var t={x:1/0,y:1/0},e=0;e<this._panelList.length;++e)t.x=Math.min(t.x,this._panelList[e].maxSize().x),t.y=Math.min(t.y,this._panelList[e].maxSize().y);return t},tabOrientation:function(t){return void 0!==t&&this._tabOrientation!==t&&this.docker()._canOrientTabs&&(this._tabOrientation=t,this.__updateTabs(),this.__updateTabs()),this._tabOrientation},addPanel:function(t,e){var a=this._panelList.indexOf(t);-1!==a&&this._panelList.splice(a,1),"undefined"==typeof e?this._panelList.push(t):this._panelList.splice(e,0,t),-1===this._curTab&&this._panelList.length&&(this.isCollapser()||(this._curTab=0),this._size=this.initSize()),this.__updateTabs()},removePanel:function(t){for(var e=0;e<this._panelList.length;++e)if(this._panelList[e]===t){this.isCollapser()?this._curTab=-1:this._curTab>=e&&this._curTab--,this._panelList[e]._parent===this&&(this._panelList[e].__container(null),this._panelList[e]._parent=null),this._panelList.splice(e,1),t._isVisible=!1;break}return-1===this._curTab&&!this.collapse()&&this._panelList.length&&(this._curTab=0),this.__updateTabs(),this._panelList.length>0},panel:function(t,e){return"undefined"!=typeof t&&(this.isCollapser()&&t===this._curTab&&(this.collapse(),t=-1),t<this._panelList.length&&(this.$tabBar.find('> .wcTabScroller > .wcPanelTab[id="'+this._curTab+'"]').removeClass("wcPanelTabActive"),this.$center.children('.wcPanelTabContent[id="'+this._curTab+'"]').addClass("wcPanelTabContentHidden"),this._curTab!==t&&this.collapse(),this._curTab=t,t>-1&&(this.$tabBar.find('> .wcTabScroller > .wcPanelTab[id="'+t+'"]').addClass("wcPanelTabActive"),this.$center.children('.wcPanelTabContent[id="'+t+'"]').removeClass("wcPanelTabContentHidden"),this.expand()),this.__updateTabs(e))),this._curTab>-1&&this._curTab<this._panelList.length?this._panelList[this._curTab]:this.isCollapser()&&this._panelList.length?this._panelList[0]:!1},isCollapser:function(){return this._parent&&"wcDrawer"===this._parent.declaredClass},collapse:function(t){return this.isCollapser()?(this._parent.collapse(t),!0):!1},expand:function(){return this.isCollapser()?(this._parent.expand(),!0):!1},isExpanded:function(){return this.isCollapser()?this._parent.isExpanded():void 0},__init:function(){this.$frame=$('<div class="wcFrame wcWide wcTall">'),this.$title=$('<div class="wcFrameTitle">'),this.$titleBar=$('<div class="wcFrameTitleBar wcFrameTopper">'),this.$tabBar=$('<div class="wcFrameTitleBar">'),this.$tabScroll=$('<div class="wcTabScroller">'),this.$center=$('<div class="wcFrameCenter wcPanelBackground">'),this.$tabLeft=$('<div class="wcFrameButton" title="Scroll tabs to the left."><span class="fa fa-arrow-left"></span><</div>'),this.$tabRight=$('<div class="wcFrameButton" title="Scroll tabs to the right."><span class="fa fa-arrow-right"></span>></div>'),this.$close=$('<div class="wcFrameButton" title="Close the currently active panel tab"><div class="fa fa-close"></div>X</div>'),this.$collapse=$('<div class="wcFrameButton" title="Collapse the active panel"><div class="fa fa-download"></div>C</div>'),this.$buttonBar=$('<div class="wcFrameButtonBar">'),this.$tabButtonBar=$('<div class="wcFrameButtonBar">'),this.$tabBar.append(this.$tabScroll),this.$tabBar.append(this.$tabButtonBar),this.$frame.append(this.$buttonBar),this.$buttonBar.append(this.$close),this.$buttonBar.append(this.$collapse),this.$frame.append(this.$center),this._isFloating&&(this.$top=$('<div class="wcFrameEdgeH wcFrameEdge"></div>').css("top","-4px").css("left","0px").css("right","0px"),this.$bottom=$('<div class="wcFrameEdgeH wcFrameEdge"></div>').css("bottom","-4px").css("left","0px").css("right","0px"),this.$left=$('<div class="wcFrameEdgeV wcFrameEdge"></div>').css("left","-4px").css("top","0px").css("bottom","0px"),this.$right=$('<div class="wcFrameEdgeV wcFrameEdge"></div>').css("right","-4px").css("top","0px").css("bottom","0px"),this.$corner1=$('<div class="wcFrameCornerNW wcFrameEdge"></div>').css("top","-4px").css("left","-4px"),this.$corner2=$('<div class="wcFrameCornerNE wcFrameEdge"></div>').css("top","-4px").css("right","-4px"),this.$corner3=$('<div class="wcFrameCornerNW wcFrameEdge"></div>').css("bottom","-4px").css("right","-4px"),this.$corner4=$('<div class="wcFrameCornerNE wcFrameEdge"></div>').css("bottom","-4px").css("left","-4px"),this.$frame.append(this.$top),this.$frame.append(this.$bottom),this.$frame.append(this.$left),this.$frame.append(this.$right),this.$frame.append(this.$corner1),this.$frame.append(this.$corner2),this.$frame.append(this.$corner3),this.$frame.append(this.$corner4)),this.__container(this.$container),this._isFloating&&this.$frame.addClass("wcFloating"),this.$center.scroll(this.__scrolled.bind(this))},__update:function(){var t=this.$container.width(),e=this.$container.height();if(this._isFloating){var a=this._pos.x*t-this._size.x/2,r=this._pos.y*e-this._size.y/2;0>r&&(r=0),a+this._size.x/2<0&&(a=-this._size.x/2),a+this._size.x/2>t&&(a=t-this._size.x/2),r+parseInt(this.$center.css("top"))>e&&(r=e-parseInt(this.$center.css("top"))),this.$frame.css("left",a+"px"),this.$frame.css("top",r+"px"),this.$frame.css("width",this._size.x+"px"),this.$frame.css("height",this._size.y+"px")}(t!==this._lastSize.x||e!==this._lastSize.y)&&(this._lastSize.x=t,this._lastSize.y=e,this._resizeData.time=new Date,this._resizeData.timeout||(this._resizeData.timeout=!0,setTimeout(this.__resizeEnd.bind(this),this._resizeData.delta))),this.__onTabChange()},__resizeEnd:function(){this.__updateTabs(),new Date-this._resizeData.time<this._resizeData.delta?setTimeout(this.__resizeEnd.bind(this),this._resizeData.delta):this._resizeData.timeout=!1},__trigger:function(t,e){for(var a=0;a<this._panelList.length;++a)this._panelList[a].__trigger(t,e)},__save:function(){var t={};t.type="wcFrame",t.floating=this._isFloating,t.isFocus=this.$frame.hasClass("wcFloatingFocus"),t.tabOrientation=this._tabOrientation,t.pos={x:this._pos.x,y:this._pos.y},t.size={x:this._size.x,y:this._size.y},t.tab=this._curTab,t.panels=[];for(var e=0;e<this._panelList.length;++e)t.panels.push(this._panelList[e].__save());return t},__restore:function(t,a){this._isFloating=t.floating,this._tabOrientation=t.tabOrientation||e.TAB.TOP,this._pos.x=t.pos.x,this._pos.y=t.pos.y,this._size.x=t.size.x,this._size.y=t.size.y,this._curTab=t.tab;for(var r=0;r<t.panels.length;++r){var o=a.__create(t.panels[r],this,this.$center);o.__restore(t.panels[r],a),this._panelList.push(o)}this.__update(),t.isFocus&&this.$frame.addClass("wcFloatingFocus")},__updateTabs:function(t){this.$tabScroll.empty();var a=function(t){switch(this._tabOrientation){case e.TAB.BOTTOM:return t.offset().left;case e.TAB.TOP:return t.offset().left;case e.TAB.LEFT:return t.offset().top;case e.TAB.RIGHT:return t.offset().top}}.bind(this),r=[],o=[],i=0,n=a(this.$tabScroll),s=this._panelList.length>1||this._isFloating||this.isCollapser();this.isCollapser()?this.$tabBar.addClass("wcNotMoveable"):(this.$titleBar.removeClass("wcNotMoveable"),this.$tabBar.removeClass("wcNotMoveable")),this.$center.children(".wcPanelTabContent").each(function(){$(this).addClass("wcPanelTabContentHidden wcPanelTabUnused")}),this._titleVisible=!0,this.$title.html("");for(var l=0;l<this._panelList.length;++l){var c=this._panelList[l],h=null;s&&(h=c.$title,c.$title.attr("id",l),this.$tabScroll.append(c.$title)),c.moveable()||(this.$titleBar.addClass("wcNotMoveable"),this.$tabBar.addClass("wcNotMoveable")),c._titleVisible||(this._titleVisible=!1);var u=this.$center.children('.wcPanelTabContent[id="'+l+'"]');u.length||(u=$('<div class="wcPanelTabContent wcPanelTabContentHidden" id="'+l+'">'),this.$center.append(u)),c.__container(u),c._parent=this;var d=this._curTab===l;if(c.isVisible()!==d&&r.push({panel:c,isVisible:d}),u.removeClass("wcPanelTabUnused"),d&&(h&&h.addClass("wcPanelTabActive"),u.removeClass("wcPanelTabContentHidden"),this.$title.html(c.title()),c.$icon)){var f=c.$icon.clone();this.$title.prepend(f)}h&&(i=a(h)-n,o.push(i),i+=h.outerWidth())}var p=this.$titleBar,b=0;if(this._titleVisible){switch(this.$frame.parent()||this.$center.css("top",""),this._tabOrientation){case e.TAB.TOP:this.$frame.prepend(this.$tabBar),this.$titleBar.remove(),this.$tabBar.addClass("wcTabTop").removeClass("wcTabLeft wcTabRight wcTabBottom"),s?this.$title.remove():this.$tabBar.prepend(this.$title),p=this.$tabBar,this.$center.css("left",0).css("right",0).css("bottom",0),b=this.$center.width();break;case e.TAB.BOTTOM:if(this.$frame.prepend(this.$titleBar),this.$titleBar.append(this.$title),s){var _=this.$titleBar.height();this.$frame.append(this.$tabBar),this.$tabBar.addClass("wcTabBottom").removeClass("wcTabTop wcTabLeft wcTabRight"),this.$center.css("left",0).css("right",0).css("bottom",_)}else this.$tabBar.remove();b=this.$center.width();break;case e.TAB.LEFT:if(this.$frame.prepend(this.$titleBar),this.$titleBar.append(this.$title),s){var _=this.$titleBar.height();this.$frame.append(this.$tabBar),this.$tabBar.addClass("wcTabLeft").removeClass("wcTabTop wcTabRight wcTabBottom"),this.$center.css("left",_).css("right",0).css("bottom",0)}else this.$tabBar.remove();b=this.$center.height();break;case e.TAB.RIGHT:if(this.$frame.prepend(this.$titleBar),this.$titleBar.append(this.$title),s){var _=this.$titleBar.height();this.$frame.append(this.$tabBar),this.$tabBar.addClass("wcTabRight").removeClass("wcTabTop wcTabLeft wcTabBottom"),this.$center.css("left",0).css("right",_).css("bottom",0)}else this.$tabBar.remove();b=this.$center.height()}s||this.$center.css("left",0).css("right",0).css("bottom",0)}else this.$titleBar.remove(),this.$tabBar.remove(),this.$center.css("top",0).css("left",0).css("right",0).css("bottom",0);if(this.$center.children(".wcPanelTabUnused").each(function(){$(this).remove()}),this._titleVisible){var v=this.__onTabChange();if(t)for(var l=0;l<o.length;++l)if(l===this._curTab){var m=o[l],w=i;l+1<o.length&&(w=o[l+1]);var g=-parseInt(this.$tabScroll.css("left")),T=b-v;g>m?(this._tabScrollPos=m-this.LEFT_TAB_BUFFER,this._tabScrollPos<0&&(this._tabScrollPos=0)):w-g>T&&(this._tabScrollPos=w-T+this.LEFT_TAB_BUFFER);break}if(this._canScrollTabs=!1,i>b-v){this._canScrollTabs=this._titleVisible,this._canScrollTabs&&(this.$tabButtonBar.append(this.$tabRight),this.$tabButtonBar.append(this.$tabLeft),v+=this.$tabRight.outerWidth(),v+=this.$tabLeft.outerWidth());var x=i-(b-v)/2;if(this._tabScrollPos>x)for(var y=this.$tabScroll.children(),l=0;l<y.length;++l){var h=$(y[l]);if(i=a(h)-n,i+h.outerWidth()>x){this._tabScrollPos=i-this.LEFT_TAB_BUFFER,this._tabScrollPos<0&&(this._tabScrollPos=0);break}}}else this._tabScrollPos=0,this.$tabLeft.remove(),this.$tabRight.remove();this.$tabScroll.stop().animate({left:-this._tabScrollPos+"px"},"fast");for(var l=0;l<r.length;++l)r[l].panel.__isVisible(r[l].isVisible)}},__onTabChange:function(){var t=0,a=0,r=this.panel();for(this.$tabLeft.remove(),this.$tabRight.remove(),this.$close.hide(),this.$collapse.hide();this._buttonList.length;)this._buttonList.pop().remove();if(r){var o=r.scrollable();if(this.$center.toggleClass("wcScrollableX",o.x),this.$center.toggleClass("wcScrollableY",o.y),this.$frame.toggleClass("wcOverflowVisible",r.overflowVisible()),this.$center.toggleClass("wcOverflowVisible",r.overflowVisible()),!this.isCollapser()||this.isExpanded()){r.closeable()&&(this.$close.show(),t+=this.$close.outerWidth());var i=this.docker();if(i.isCollapseEnabled()&&r.moveable()&&r.collapsible()&&!this._isFloating&&!r._isPlaceholder)if(this.isCollapser()){var n=this.$collapse.children("div");switch(n[0].className="fa fa-sign-out",this._parent._position){case e.DOCK.LEFT:n.addClass("wcCollapseLeft");break;case e.DOCK.RIGHT:n.addClass("wcCollapseRight");break;case e.DOCK.BOTTOM:n.addClass("wcCollapseBottom")}n.addClass("wcCollapsed"),this.$collapse.show(),this.$collapse.attr("title","Dock this collapsed panel back into the main layout."),t+=this.$collapse.outerWidth()}else{var s=e.DOCK.BOTTOM;if(r._collapseDirection===e.DOCK.LEFT||r._collapseDirection===e.DOCK.RIGHT||r._collapseDirection===e.DOCK.BOTTOM)s=r._collapseDirection;else{var l=i.$container;!$.isEmptyObject(i._collapser)&&i._collapser.hasOwnProperty(e.DOCK.RIGHT)&&(l=i._collapser[e.DOCK.RIGHT]._parent.$pane[0]);var c=l.offset(),h=this.$container.offset();h.right=(h.left+this.$container.width()-c.left)/l.width(),h.bottom=(h.top+this.$container.height()-c.top)/l.height(),h.top=(h.top-c.top)/l.height(),h.left=(h.left-c.left)/l.width(),"function"==typeof r._collapseDirection?s=r._collapseDirection(h):h.top>.5&&h.bottom>.95?s=e.DOCK.BOTTOM:h.left<=.05?s=e.DOCK.LEFT:h.right>=.95?s=e.DOCK.RIGHT:h.bottom>.95&&(s=e.DOCK.BOTTOM)}var u="",d="";switch(s){case e.DOCK.LEFT:u="left side.",d="wcCollapseLeft";break;case e.DOCK.RIGHT:u="right side.",d="wcCollapseRight";break;case e.DOCK.BOTTOM:u="bottom.",d="wcCollapseBottom"}if(u){var n=this.$collapse.children("div");n[0].className="fa fa-sign-in",n.addClass(d),n.addClass("wcCollapsible"),this.$collapse.show(),this.$collapse.attr("title","Collapse this panel into the "+u),t+=this.$collapse.outerWidth()}}for(var f=0;f<r._buttonList.length;++f){var p=r._buttonList[f],b=$("<div>"),_=p.className;b.addClass("wcFrameButton"),p.isTogglable&&(b.addClass("wcFrameButtonToggler"),p.isToggled&&(b.addClass("wcFrameButtonToggled"),_=p.toggleClassName||_)),b.attr("title",p.tip),b.data("name",p.name),b.text(p.text),_&&b.prepend($('<div class="'+_+'">')),this._buttonList.push(b),this.$buttonBar.append(b),t+=b.outerWidth()}}if(this._canScrollTabs&&(this.$tabButtonBar.append(this.$tabRight),this.$tabButtonBar.append(this.$tabLeft),a+=this.$tabRight.outerWidth()+this.$tabLeft.outerWidth()),this._titleVisible)switch(this.$buttonBar.css("right",""),this._tabOrientation){case e.TAB.RIGHT:this.$buttonBar.css("right",this.$tabBar.height());case e.TAB.LEFT:this.$tabBar.css("width",this.$center.height()+this.$tabBar.height());break;case e.TAB.TOP:case e.TAB.BOTTOM:this.$tabBar.css("width",this.$center.width())}r.__update(),this.$center.scrollLeft(r._scroll.x),this.$center.scrollTop(r._scroll.y)}return this.$buttonBar.css("min-width",t).css("width",t),this.$tabButtonBar.css("min-width",a).css("width",a),this._tabOrientation===e.TAB.TOP?(this.$tabButtonBar.css("right",t),t+a):(this.$tabButtonBar.css("right",0),a)},__scrolled:function(){var t=this.panel();t._scroll.x=this.$center.scrollLeft(),t._scroll.y=this.$center.scrollTop(),t.__trigger(e.EVENT.SCROLLED)},__focus:function(t){if(t){var e=$('<div class="wcFrameFlasher">');this.$frame.append(e),e.animate({opacity:1},100).animate({opacity:0},100).animate({opacity:.6},50).animate({opacity:0},50).queue(function(t){e.remove(),t()})}},__move:function(t){var e=this.$container.width(),a=this.$container.height();this._pos.x=(t.x+this._anchorMouse.x)/e,this._pos.y=(t.y+this._anchorMouse.y)/a},__anchorMove:function(t){var e=this.$container.width(),a=this.$container.height();this._anchorMouse.x=this._pos.x*e-t.x,this._anchorMouse.y=this._pos.y*a-t.y},__tabMove:function(t,e){if(t>=0&&t<this._panelList.length&&e>=0&&e<this._panelList.length){var a=this._panelList.splice(t,1);return this._panelList.splice(e,0,a[0]),this._curTab===t&&(this._curTab=e),this.__updateTabs(),this.$tabBar.find('> .wcTabScroller > .wcPanelTab[id="'+e+'"]')[0]}return!1},__checkAnchorDrop:function(t,e,a,r,o,i){var n=this.panel();return n&&n.moveable()?n.layout().__checkAnchorDrop(t,e&&this._tabOrientation,a,!this._isFloating&&!this.isCollapser()&&r,this.$frame,n.moveable()&&n.title(),o,this.isCollapser()?this._tabOrientation:void 0,i):!1},__resize:function(t,e){var a=this.$container.width(),r=this.$container.height(),o=this.$container.offset();e.x-=o.left,e.y-=o.top;for(var i=this.minSize(),n=this.maxSize(),s={x:this._pos.x*a-this._size.x/2,y:this._pos.y*r-this._size.y/2},l=0;l<t.length;++l){switch(t[l]){case"top":this._size.y+=s.y-e.y-2,s.y=e.y+2,this._size.y<i.y&&(s.y+=this._size.y-i.y,this._size.y=i.y),this._size.y>n.y&&(s.y+=this._size.y-n.y,this._size.y=n.y);break;case"bottom":this._size.y=e.y-4-s.y,this._size.y<i.y&&(this._size.y=i.y),this._size.y>n.y&&(this._size.y=n.y);break;case"left":this._size.x+=s.x-e.x-2,s.x=e.x+2,this._size.x<i.x&&(s.x+=this._size.x-i.x,this._size.x=i.x),this._size.x>n.x&&(s.x+=this._size.x-n.x,this._size.x=n.x);break;case"right":this._size.x=e.x-4-s.x,this._size.x<i.x&&(this._size.x=i.x),this._size.x>n.x&&(this._size.x=n.x)}this._pos.x=(s.x+this._size.x/2)/a,this._pos.y=(s.y+this._size.y/2)/r}},__shadow:function(t){if(t)this.$shadower||(this.$shadower=$('<div class="wcFrameShadower">'),this.$frame.append(this.$shadower),this.$shadower.animate({opacity:.5},300));else if(this.$shadower){var e=this;this.$shadower.animate({opacity:0},300).queue(function(t){e.$shadower.remove(),e.$shadower=null,t()})}},__rect:function(){if(this.isCollapser())return this._parent.__rect();var t=this.$frame.offset(),e=this.$frame.width(),a=this.$frame.height();return{x:t.left,y:t.top,w:e,h:a}},__container:function(t){return"undefined"==typeof t?this.$container:(this.$container=t,this.$container?this.$container.append(this.$frame):this.$frame.remove(),this.$container)},__destroy:function(){this._curTab=-1;for(var t=0;t<this._panelList.length;++t)this._panelList[t].__destroy();for(;this._panelList.length;)this._panelList.pop();this.$modalBlocker&&(this.$modalBlocker.remove(),this.$modalBlocker=null),this.__container(null),this._parent=null}});return r}),a("wcDocker/drawer",["dcl/dcl","./types","./frame","./base"],function(t,e,a,r){var o=t(r,{declaredClass:"wcDrawer",constructor:function(t,a,r){this.$container=$(t),this.$frame=null,this._position=r,this._parent=a,this._frame=null,this._closeSize=0,this._expanded=!1,this._sliding=!1,this._orientation=this._position===e.DOCK.LEFT||this._position===e.DOCK.RIGHT?e.ORIENTATION.HORIZONTAL:e.ORIENTATION.VERTICAL,this.__init()},collapse:function(t){if(this._expanded){var a=this._frame.panel();if(a){var r=this._parent.pos();this._position!==e.DOCK.LEFT&&(r=1-r);var o;this._position===e.DOCK.BOTTOM?(o=this.docker().$container.height(),a._size.y=r*o):(o=this.docker().$container.width(),a._size.x=r*o)}if(this._expanded=!1,t)switch(this._position){case e.DOCK.TOP:case e.DOCK.LEFT:this._parent.pos(0);break;case e.DOCK.RIGHT:case e.DOCK.BOTTOM:this._parent.pos(1)}else{this._sliding=!0;var i=this,n=function(){i._sliding=!1,i._parent.__update()};switch(this._position){case e.DOCK.TOP:case e.DOCK.LEFT:this._parent.animPos(0,n);break;case e.DOCK.RIGHT:case e.DOCK.BOTTOM:this._parent.animPos(1,n)}}}},expand:function(){if(!this._expanded){this._expanded=!0,this._sliding=!0;var t=this._frame.panel();if(t){var a,r;this._position===e.DOCK.BOTTOM?(a=t._size.y,r=this.docker().$container.height()):(a=t._size.x,r=this.docker().$container.width()),this._position!==e.DOCK.LEFT&&(a=r-a),a/=r;var o=this;this._parent.animPos(a,function(){o._sliding=!1,o._parent.__update()})}}},isExpanded:function(){return this._expanded},minSize:function(){return this._expanded?this._root&&"function"==typeof this._root.minSize?this._root.minSize():{x:100,y:100}:(this.__adjustCollapsedSize(),{x:this._closeSize,y:this._closeSize})},maxSize:function(){var t=this._orientation===e.ORIENTATION.HORIZONTAL?!0:!1;return this._expanded||this._sliding?this._root&&"function"==typeof this._root.maxSize?{x:t?this._root.maxSize().x:1/0,y:t?1/0:this._root.maxSize().y}:{x:1/0,y:1/0}:(this.__adjustCollapsedSize(),{x:t?this._closeSize:1/0,y:t?1/0:this._closeSize})},__init:function(){this.$frame=$('<div class="wcCollapserFrame">'),this.__container(this.$container),this._frame=new(this.docker().__getClass("wcFrame"))(this.$frame,this,!1),this._frame.tabOrientation(this._position)},__update:function(t){this.__adjustCollapsedSize(),this._frame.__update()},__adjustCollapsedSize:function(){this._frame._panelList.length?(this._closeSize=this._frame.$tabBar.outerHeight(),this._parent.$bar.removeClass("wcSplitterHidden")):(this._closeSize=0,this._parent.$bar.addClass("wcSplitterHidden"))},__rect:function(){var t=this.$frame.offset(),a=this.$frame.width(),r=this.$frame.height(),o=this._frame.panel();return o&&(this._position===e.DOCK.BOTTOM?(r=o._size.y,a/=3):(a=o._size.x,r/=3)),{x:t.left,y:t.top,w:a,h:r}},__save:function(){var t={};return t.closeSize=this._closeSize,t.frame=this._frame.__save(),t},__restore:function(t,e){this._closeSize=t.closeSize,this._frame.__restore(t.frame,e),this.__adjustCollapsedSize()},__container:function(t){return"undefined"==typeof t?this.$container:(this.$container=t,this.$container?this.$container.append(this.$frame):this.$frame.remove(),this.$container)},__destroy:function(){this._frame&&(this._frame.__destroy(),this._frame=null),this.__container(null),this._parent=null}});return o}),a("wcDocker/collapser",["dcl/dcl","./types","./splitter","./drawer","./base"],function(t,e,a,r,o){var i=t(o,{declaredClass:"wcCollapser",constructor:function(t,a,r){this.$container=$(t),this.$frame=null,this._position=r,this._parent=a,this._splitter=null,this._drawer=null,this._size=0,this._orientation=this._position===e.DOCK.LEFT||this._position===e.DOCK.RIGHT?e.ORIENTATION.HORIZONTAL:e.ORIENTATION.VERTICAL,this.__init()},collapse:function(t){this._drawer.collapse()},expand:function(){this._drawer.expand()},isExpanded:function(){return this._drawer.isExpanded()},minSize:function(){return{x:this._size,y:this._size}},maxSize:function(){var t=this._orientation===e.ORIENTATION.HORIZONTAL?!0:!1;return{x:t?this._size:1/0,y:t?1/0:this._size}},__init:function(){this.$frame=$('<div class="wcCollapserFrame">'),this.__container(this.$container);var t=this.docker();switch(this._splitter=new(this.docker().__getClass("wcSplitter"))(t.$container,this,this._orientation),this._drawer=new(this.docker().__getClass("wcDrawer"))(t.$transition,this._splitter,this._position),this._position){case e.DOCK.LEFT:this._splitter.pane(0,this._drawer),this._splitter.$pane[1].remove(),this._splitter.$pane[0].addClass("wcDrawer"),this._splitter.pos(0);break;case e.DOCK.RIGHT:case e.DOCK.BOTTOM:this._splitter.pane(1,this._drawer),this._splitter.$pane[0].remove(),this._splitter.$pane[1].addClass("wcDrawer"),this._splitter.pos(1)}this._parent.$bar.addClass("wcSplitterHidden")},__update:function(t){this._splitter.__update(),this.__adjustSize()},__adjustSize:function(){this._drawer._frame._panelList.length?this._size=this._drawer._frame.$tabBar.outerHeight():this._size=0},__rect:function(){return this._drawer.__rect()},__save:function(){var t={};return t.size=this._size,t.drawer=this._drawer.__save(),t},__restore:function(t,e){this._size=t.size,this._drawer.__restore(t.drawer,e),this.__adjustSize()},__container:function(t){return"undefined"==typeof t?this.$container:(this.$container=t,this.$container?this.$container.append(this.$frame):this.$frame.remove(),this.$container)},__destroy:function(){this._splitter&&(this._splitter.__destroy(),this._splitter=null,this._frame=null),this.__container(null),this._parent=null}});return i}),a("wcDocker/layout",["dcl/dcl","./types"],function(t,e){var a=t(null,{declaredClass:"wcLayout",constructor:function(t,e){this.$container=$(t),this._parent=e,this.$elem=null,this.__init()},addItem:function(t){},clear:function(){},scene:function(){return this.$elem},__init:function(){},__update:function(){},__checkAnchorDrop:function(t,a,r,o,i,n,s,l,c){function h(t,e,a){return"number"==typeof t||"string"==typeof t&&-1!==t.indexOf("px",t.length-2)?(t=parseInt(t),{x:t,y:t}):"string"==typeof t&&-1!==t.indexOf("%",t.length-1)?(t=parseInt(t)/100,{x:e*t,y:a*t}):{x:0,y:0}}var u=this._parent.docker(),d=i.outerWidth(),f=i.outerHeight(),p=i.offset(),b=i.find(".wcFrameTitleBar").height();n||(b=0);var _=h(u._options.edgeAnchorSize,u.$container.outerWidth(),u.$container.outerHeight()),v=h(u._options.panelAnchorSize,d,f);if(n){if((!l||l===e.TAB.TOP)&&t.y>=p.top&&t.y<=p.top+b&&t.x>=p.left&&t.x<=p.left+d)return r.anchor(t,{x:p.left-2,y:p.top-2,w:d,h:b-2,loc:e.DOCK.STACKED,tab:e.TAB.TOP,item:this,self:a===e.TAB.TOP||s&&a}),!0;if(u._canOrientTabs){if((!l||l===e.TAB.BOTTOM)&&t.y>=p.top+f-b&&t.y<=p.top+f&&t.x>=p.left&&t.x<=p.left+d)return r.anchor(t,{x:p.left-2,y:p.top+f-b-2,w:d,h:b,loc:e.DOCK.STACKED,tab:e.TAB.BOTTOM,item:this,self:a===e.TAB.BOTTOM}),!0;if((!l||l===e.TAB.LEFT)&&t.y>=p.top&&t.y<=p.top+f&&t.x>=p.left&&t.x<=p.left+b)return r.anchor(t,{x:p.left-2,y:p.top-2,w:b-2,h:f,loc:e.DOCK.STACKED,tab:e.TAB.LEFT,item:this,self:a===e.TAB.LEFT}),!0;if((!l||l===e.TAB.RIGHT)&&t.y>=p.top&&t.y<=p.top+f&&t.x>=p.left+d-b&&t.x<=p.left+d)return r.anchor(t,{x:p.left+d-b-2,y:p.top-2,w:b,h:f,loc:e.DOCK.STACKED,tab:e.TAB.RIGHT,item:this,self:a===e.TAB.RIGHT}),!0}}if(c&&r._outer&&r._inner){var m=r._outer.$container.outerWidth(),w=r._outer.$container.outerHeight(),g=r._outer.$container.offset();if(t.y>=g.top&&t.y<=g.top+w&&t.x>=g.left+b&&t.x<=g.left+b+_.x)return r.anchor(t,{x:g.left-2,y:g.top-2,w:m/3,h:w,loc:e.DOCK.LEFT,item:r._inner,self:!1}),!0;if(t.y>=g.top&&t.y<=g.top+w&&t.x>=g.left+m-_.x-b&&t.x<=g.left+m-b)return r.anchor(t,{x:g.left+m-m/3-2,y:g.top-2,w:m/3,h:w,loc:e.DOCK.RIGHT,item:r._inner,self:!1}),!0;if(t.y>=g.top+b&&t.y<=g.top+b+_.y&&t.x>=g.left&&t.x<=g.left+m)return r.anchor(t,{x:g.left-2,y:g.top-2,w:m,h:w/3,loc:e.DOCK.TOP,item:r._inner,self:!1}),!0;if(t.y>=g.top+w-b-_.y&&t.y<=g.top+w-b&&t.x>=g.left&&t.x<=g.left+m)return r.anchor(t,{x:g.left-2,y:g.top+w-w/3-2,w:m,h:w/3,loc:e.DOCK.BOTTOM,item:r._inner,self:!1}),!0}if(!o)return!1;if(this._parent&&this._parent.instanceOf("wcPanel")&&this._parent._isPlaceholder)return r.anchor(t,{x:p.left-2,y:p.top-2,w:d,h:f,loc:e.DOCK.TOP,item:this,self:!1}),!0;if(f>d){if(t.y>=p.top&&t.y<=p.top+b+v.y&&t.x>=p.left&&t.x<=p.left+d)return r.anchor(t,{x:p.left-2,y:p.top-2,w:d,h:.5*f,loc:e.DOCK.TOP,item:this,self:!1}),!0;if(t.y>=p.top+f-v.y-b&&t.y<=p.top+f&&t.x>=p.left&&t.x<=p.left+d)return r.anchor(t,{x:p.left-2,y:p.top+(f-.5*f)-2,w:d,h:.5*f,loc:e.DOCK.BOTTOM,item:this,self:!1}),!0}if(t.y>=p.top&&t.y<=p.top+f){if(t.x>=p.left&&t.x<=p.left+v.x+b)return r.anchor(t,{x:p.left-2,y:p.top-2,w:.5*d,h:f,loc:e.DOCK.LEFT,item:this,self:!1}),!0;if(t.x>=p.left+d-v.x-b&&t.x<=p.left+d)return r.anchor(t,{x:p.left+.5*d-2,y:p.top-2,w:.5*d,h:f,loc:e.DOCK.RIGHT,item:this,self:!1}),!0}if(d>=f){if(t.y>=p.top&&t.y<=p.top+v.y+b&&t.x>=p.left&&t.x<=p.left+d)return r.anchor(t,{x:p.left-2,y:p.top-2,w:d,h:.5*f,loc:e.DOCK.TOP,item:this,self:!1}),!0;if(t.y>=p.top+f-v.y-b&&t.y<=p.top+f&&t.x>=p.left&&t.x<=p.left+d)return r.anchor(t,{x:p.left-2,y:p.top+(f-.5*f)-2,w:d,h:.5*f,loc:e.DOCK.BOTTOM,item:this,self:!1}),!0}return!1},__container:function(t){return"undefined"==typeof t?this.$container:(this.$container=t,this.$container?this.$container.append(this.$elem):this.$elem.remove(),this.$container)},__destroy:function(){this.__container(null),this._parent=null,this.clear(),this.$elem.remove(),this.$elem=null}});return a}),a("wcDocker/layoutsimple",["dcl/dcl","./types","./layout"],function(t,e,a){var r=t(a,{declaredClass:"wcLayoutSimple",addItem:function(t){this.$elem.append(t)},clear:function(){this.$elem.remove(),this.$elem=null,this.__init()},__init:function(){this.$elem=$('<div class="wcLayout wcWide wcTall"></div>'),this.__container(this.$container)},__update:function(){}});return r}),a("wcDocker/layouttable",["dcl/dcl","./types","./layout"],function(t,e,a){var r=t(a,{declaredClass:"wcLayoutTable",addItem:function(t,e,a,r,o){return("undefined"==typeof e||0>e)&&(e=0),("undefined"==typeof a||0>a)&&(a=0),("undefined"==typeof r||0>=r)&&(r=1),("undefined"==typeof o||0>=o)&&(o=1),this.__resizeGrid(e+r-1,a+o-1),(r>1||o>1)&&!this.__mergeGrid(e,a,r,o)?!1:(this._grid[a][e].$el.append($(t)),this.item(e,a))},item:function(t,e){if(e>=this._grid.length)return!1;if(t>=this._grid[e].length)return!1;var a=this,r={$:a._grid[e][t].$el,css:function(o,i){if(a._grid[e][t].$el){if(void 0===i)return a._grid[e][t].$el.css(o);a._grid[e][t].$el.css(o,i)}return r},stretch:function(o,i){return a.itemStretch(t,e,o,i),r}};return r},itemStretch:function(t,e,a,r){var o=this._batchProcess;this._batchProcess=!0,this.__resizeGrid(t,e);var i=this._grid[e][t];return i.x<0||i.y<0?!1:(void 0!==a&&(i.sx=a),void 0!==r&&(i.sy=r),this._batchProcess=o,o||this.__resizeGrid(0,0),!0)},clear:function(){var t=this.showGrid(),e=this.gridSpacing(),a=this.gridAlternate();this.$elem.remove(),this.__init(),this.showGrid(t),this.gridSpacing(e),this.gridAlternate(a),this._grid=[]},startBatch:function(){this._batchProcess=!0},finishBatch:function(){this._batchProcess=!1,this.__resizeGrid(0,0)},showGrid:function(t){return"undefined"!=typeof t&&this.$elem.toggleClass("wcLayoutGrid",t),this.$elem.hasClass("wcLayoutGrid")},gridSpacing:function(t){return"undefined"!=typeof t&&this.$elem.css("border-spacing",t+"px"),parseInt(this.$elem.css("border-spacing"))},gridAlternate:function(t){return"undefined"!=typeof t&&this.$elem.toggleClass("wcLayoutGridAlternate",t),this.$elem.hasClass("wcLayoutGridAlternate")},__init:function(){this.$elem=$('<table class="wcLayout wcWide wcTall"></table>'),this.$elem.append($("<tbody></tbody>")),this._grid=[],this.__container(this.$container)},__update:function(){},__resizeGrid:function(t,e){for(var a=0;e>=a;++a){if(this._grid.length<=a){var r=[];r.$row=$("<tr>"),this._grid.push(r)}for(var o=0;t>=o;++o)this._grid[a].length<=o&&this._grid[a].push({$el:$("<td>"),x:0,y:0,sx:"",sy:""})}if(!this._batchProcess){var i=this.$elem.find("tbody");$(".wcDockerTransition").append(i);for(var n=$("<tbody>"),a=0;a<this._grid.length;++a)for(var s=null,o=0;o<this._grid[a].length;++o){var l=this._grid[a][o];l.$el&&(s||(s=this._grid[a].$row,n.append(s)),l.$el.css("width",l.sx),l.$el.css("height",l.sy),s.append(l.$el))}this.$elem.append(n),i.remove()}},__mergeGrid:function(t,e,a,r){for(var o=0;r>o;++o)for(var i=0;a>i;++i){var n=this._grid[e+o][t+i];if(!n.$el||0!==n.x||0!==n.y)return!1}var n=this._grid[e][t];a>1&&(n.$el.attr("colspan",""+a),n.x=a-1),r>1&&(n.$el.attr("rowspan",""+r), -n.y=r-1);for(var o=0;r>o;++o)for(var i=0;a>i;++i)if(0!==o||0!==i){var n=this._grid[e+o][t+i];n.$el.remove(),n.$el=null,n.x=-i,n.y=-o}return!0}});return r}),a("wcDocker/tabframe",["dcl/dcl","./types","./base"],function(t,e,a){var r=t(a,{declaredClass:"wcTabFrame",LEFT_TAB_BUFFER:15,constructor:function(t,a){this.$container=$(t),this._parent=a,this.$frame=null,this.$tabBar=null,this.$tabScroll=null,this.$center=null,this.$tabLeft=null,this.$tabRight=null,this.$close=null,this._tabOrientation=e.TAB.TOP,this._canScrollTabs=!1,this._tabScrollPos=0,this._curTab=-1,this._layoutList=[],this._moveable=!0,this._boundEvents=[],this.__init()},update:function(){var t=this.$center.scrollTop();this.__updateTabs(),this.$center.scrollTop(t)},destroy:function(){this.__destroy()},tabCount:function(){return this._layoutList.length},tabOrientation:function(t){return void 0!==t&&this._tabOrientation!==t&&this.docker()._canOrientTabs&&(this._tabOrientation=t,this.__updateTabs(),this.__updateTabs()),this._tabOrientation},addTab:function(t,e,a){var r=a||"wcLayoutTable",o=new(this.docker().__getClass(r))(".wcDockerTransition",this._parent);return o.name=t,o._scrollable={x:!0,y:!0},o._scroll={x:0,y:0},o._closeable=!1,o._overflowVisible=!1,"undefined"==typeof e||-1>=e?this._layoutList.push(o):this._layoutList.splice(e,0,o),-1===this._curTab&&this._layoutList.length&&(this._curTab=0),this.__updateTabs(),o},removeTab:function(t){if(t>-1&&t<this._layoutList.length){var a=this._layoutList[t].name;return this._layoutList[t].__destroy(),this._layoutList.splice(t,1),this._curTab>=t&&(this._curTab--,this._curTab<0&&(this._curTab=0)),this.__updateTabs(),this._parent.__trigger(e.EVENT.CUSTOM_TAB_CLOSED,{obj:this,name:a,index:t}),!0}return!1},tab:function(t,a){if("undefined"!=typeof t&&t>-1&&t<this._layoutList.length){this.$tabBar.find('> .wcTabScroller > .wcPanelTab[id="'+this._curTab+'"]').removeClass("wcPanelTabActive"),this.$center.children('.wcPanelTabContent[id="'+this._curTab+'"]').addClass("wcPanelTabContentHidden"),this._curTab=t,this.$tabBar.find('> .wcTabScroller > .wcPanelTab[id="'+t+'"]').addClass("wcPanelTabActive"),this.$center.children('.wcPanelTabContent[id="'+t+'"]').removeClass("wcPanelTabContentHidden"),this.__updateTabs(a);var r=this._layoutList[this._curTab].name;this._parent.__trigger(e.EVENT.CUSTOM_TAB_CHANGED,{obj:this,name:r,index:t})}return this._curTab},layout:function(t){return t>-1&&t<this._layoutList.length?this._layoutList[t]:!1},moveTab:function(t,e){if(t>=0&&t<this._layoutList.length&&e>=0&&e<this._layoutList.length){var a=this._layoutList.splice(t,1);return this._layoutList.splice(e,0,a[0]),this._curTab===t&&(this._curTab=e),this.__updateTabs(),this.$tabBar.find('> .wcTabScroller > .wcPanelTab[id="'+e+'"]')[0]}return!1},moveable:function(t){return"undefined"!=typeof t&&(this._moveable=t),this._moveable},closeable:function(t,e){if(t>-1&&t<this._layoutList.length){var a=this._layoutList[t];return"undefined"!=typeof e&&(a._closeable=e),a._closeable}return!1},scrollable:function(t,e,a){if(t>-1&&t<this._layoutList.length){var r=this._layoutList[t],o=!1;return"undefined"!=typeof e&&(r._scrollable.x=e,o=!0),"undefined"!=typeof a&&(r._scrollable.y=a,o=!0),o&&this.__onTabChange(),{x:r._scrollable.x,y:r._scrollable.y}}return!1},overflowVisible:function(t,e){if(t>-1&&t<this._layoutList.length){var a=this._layoutList[t];return"undefined"!=typeof overflow&&(a._overflowVisible=overflow,this.__onTabChange()),a._overflowVisible}return!1},fitContents:function(t,e,a){if(t>-1&&t<this._layoutList.length){var r=this._layoutList[t];r.hasOwnProperty("_fitContents")||(r._fitContents={x:!1,y:!1});var o=!1;return"undefined"!=typeof e&&(r._fitContents.x=e,o=!0),"undefined"!=typeof a&&(r._fitContents.y=a,o=!0),o&&this.__onTabChange(),{x:r._fitContents.x,y:r._fitContents.y}}return!1},icon:function(t,e){if(t>-1&&t<this._layoutList.length){var a=this._layoutList[t];a.$icon||(a.$icon=$("<div>")),a.$icon.removeClass(),a.$icon.addClass("wcTabIcon "+e)}},faicon:function(t,e){if(t>-1&&t<this._layoutList.length){var a=this._layoutList[t];a.$icon||(a.$icon=$("<div>")),a.$icon.removeClass(),a.$icon.addClass("fa fa-fw fa-"+e)}},__init:function(){this.$frame=$('<div class="wcCustomTab wcWide wcTall">'),this.$tabBar=$('<div class="wcFrameTitleBar wcCustomTabTitle wcWide">'),this.$tabScroll=$('<div class="wcTabScroller">'),this.$center=$('<div class="wcFrameCenter wcPanelBackground">'),this.$tabLeft=$('<div class="wcFrameButton" title="Scroll tabs to the left."><span class="fa fa-arrow-left"></span><</div>'),this.$tabRight=$('<div class="wcFrameButton" title="Scroll tabs to the right."><span class="fa fa-arrow-right"></span>></div>'),this.$close=$('<div class="wcFrameButton" title="Close the currently active panel tab"><span class="fa fa-close"></span>X</div>'),this.$buttonBar=$('<div class="wcFrameButtonBar">'),this.$tabBar.append(this.$tabScroll),this.$tabBar.append(this.$buttonBar),this.$buttonBar.append(this.$close),this.$frame.append(this.$center),this.$frame.append(this.$tabBar),this.__container(this.$container),this._boundEvents.push({event:e.EVENT.UPDATED,handler:this.update.bind(this)}),this._boundEvents.push({event:e.EVENT.CLOSED,handler:this.destroy.bind(this)});for(var t=0;t<this._boundEvents.length;++t)this._parent.on(this._boundEvents[t].event,this._boundEvents[t].handler);var a=this.docker();a&&a._tabList.push(this)},__updateTabs:function(t){this.$tabScroll.empty();var a=function(t){switch(this._tabOrientation){case e.TAB.BOTTOM:return t.offset().left;case e.TAB.TOP:return t.offset().left;case e.TAB.LEFT:return t.offset().top;case e.TAB.RIGHT:return t.offset().top}}.bind(this),r=[],o=0,i=a(this.$tabScroll);this.$center.children(".wcPanelTabContent").each(function(){$(this).addClass("wcPanelTabContentHidden wcPanelTabUnused")});for(var n=0;n<this._layoutList.length;++n){var s=$('<div id="'+n+'" class="wcPanelTab"><div>'+this._layoutList[n].name+"</div></div>");this._moveable&&s.addClass("wcCustomTabMoveable"),this.$tabScroll.append(s),this._layoutList[n].$icon&&s.find("div").prepend(this._layoutList[n].$icon);var l=this.$center.children('.wcPanelTabContent[id="'+n+'"]');l.length||(l=$('<div class="wcPanelTabContent wcPanelTabContentHidden" id="'+n+'">'),this.$center.append(l)),this._layoutList[n].__container(l),this._layoutList[n]._parent=this;var c=this._curTab===n;l.removeClass("wcPanelTabUnused"),c&&(s.addClass("wcPanelTabActive"),l.removeClass("wcPanelTabContentHidden")),o=a(s)-i,r.push(o),o+=s.outerWidth()}var h=0,u=this.$tabBar.height();switch(this._tabOrientation){case e.TAB.TOP:this.$tabBar.addClass("wcTabTop").removeClass("wcTabLeft wcTabRight wcTabBottom"),this.$center.css("top",u).css("left",0).css("right",0).css("bottom",0),h=this.$center.width();break;case e.TAB.BOTTOM:this.$tabBar.addClass("wcTabBottom").removeClass("wcTabTop wcTabLeft wcTabRight"),this.$center.css("top",0).css("left",0).css("right",0).css("bottom",u),h=this.$center.width();break;case e.TAB.LEFT:this.$tabBar.addClass("wcTabLeft").removeClass("wcTabTop wcTabRight wcTabBottom"),this.$center.css("top",0).css("left",u).css("right",0).css("bottom",0),h=this.$center.height();break;case e.TAB.RIGHT:this.$tabBar.addClass("wcTabRight").removeClass("wcTabTop wcTabLeft wcTabBottom"),this.$center.css("top",0).css("left",0).css("right",u).css("bottom",0),h=this.$center.height()}this.$center.children(".wcPanelTabUnused").each(function(){$(this).remove()});var d=this.__onTabChange();if(t)for(var n=0;n<r.length;++n)if(n===this._curTab){var f=r[n],p=o;n+1<r.length&&(p=r[n+1]);var b=-parseInt(this.$tabScroll.css("left")),_=h-d;b>f?(this._tabScrollPos=f-this.LEFT_TAB_BUFFER,this._tabScrollPos<0&&(this._tabScrollPos=0)):p-b>_&&(this._tabScrollPos=p-_+this.LEFT_TAB_BUFFER);break}if(this._canScrollTabs=!1,o>h-d){this._canScrollTabs=!0,this.$buttonBar.append(this.$tabRight),this.$buttonBar.append(this.$tabLeft),d+=this.$tabRight.outerWidth(),d+=this.$tabLeft.outerWidth();var v=o-(h-d)/2;if(this._tabScrollPos>v)for(var m=this.$tabScroll.children(),n=0;n<m.length;++n){var s=$(m[n]);if(o=a(s)-i,o+s.outerWidth()>v){this._tabScrollPos=o-this.LEFT_TAB_BUFFER,this._tabScrollPos<0&&(this._tabScrollPos=0);break}}}else this._tabScrollPos=0,this.$tabLeft.remove(),this.$tabRight.remove();this.$tabScroll.stop().animate({left:-this._tabScrollPos+"px"},"fast")},__onTabChange:function(){var t=0,a=this.layout(this._curTab);if(a){this.$center.toggleClass("wcScrollableX",a._scrollable.x),this.$center.toggleClass("wcScrollableY",a._scrollable.y),this.$center.toggleClass("wcOverflowVisible",a._overflowVisible),this.$tabLeft.remove(),this.$tabRight.remove(),a._closeable?(this.$close.show(),t+=this.$close.outerWidth()):this.$close.hide(),this._canScrollTabs&&(this.$tabBar.append(this.$tabRight),this.$tabBar.append(this.$tabLeft),t+=this.$tabRight.outerWidth()+this.$tabLeft.outerWidth());var r=this.fitContents(this._curTab);if(r.x){var o=a.scene().outerWidth();(this._tabOrientation===e.TAB.LEFT||this._tabOrientation===e.TAB.RIGHT)&&(o+=this.$tabScroll.height()),this.$container.css("width",o)}else this.$container.css("width","");if(r.y){var i=a.scene().outerHeight();(this._tabOrientation===e.TAB.TOP||this._tabOrientation===e.TAB.BOTTOM)&&(i+=this.$tabScroll.height()),this.$container.css("height",i)}else this.$container.css("height","");switch(this._tabOrientation){case e.TAB.RIGHT:case e.TAB.LEFT:this.$tabBar.css("width",this.$center.height()||"100%");break;case e.TAB.TOP:case e.TAB.BOTTOM:this.$tabBar.css("width",this.$center.width()||"100%")}this.$center.scrollLeft(a._scroll.x),this.$center.scrollTop(a._scroll.y)}return this.$buttonBar.css("min-width",t).css("width",t),t},__scrolled:function(){var t=this.layout(this._curTab);t._scroll.x=this.$center.scrollLeft(),t._scroll.y=this.$center.scrollTop()},__container:function(t){return"undefined"==typeof t?this.$container:(this.$container=t,this.$container?this.$container.append(this.$frame):this.$frame.remove(),this.$container)},__destroy:function(){var t=this.docker();if(t){var e=t._tabList.indexOf(this);e>-1&&t._tabList.splice(e,1)}for(;this._boundEvents.length;)this._parent.off(this._boundEvents[0].event,this._boundEvents[0].handler),this._boundEvents.shift();this._curTab=-1;for(var a=0;a<this._layoutList.length;++a)this._layoutList[a].__destroy();for(;this._layoutList.length;)this._layoutList.pop();this.__container(null),this._parent=null}});return r}),function(){function t(t,e){if(t!==e){var a=null===t,r=t===y,o=t===t,i=null===e,n=e===y,s=e===e;if(t>e&&!i||!o||a&&!n&&s||r&&s)return 1;if(e>t&&!a||!s||i&&!r&&o||n&&o)return-1}return 0}function e(t,e,a){for(var r=t.length,o=a?r:-1;a?o--:++o<r;)if(e(t[o],o,t))return o;return-1}function r(t,e,a){if(e!==e)return p(t,a);for(var r=a-1,o=t.length;++r<o;)if(t[r]===e)return r;return-1}function o(t){return"function"==typeof t||!1}function i(t){return null==t?"":t+""}function n(t,e){for(var a=-1,r=t.length;++a<r&&e.indexOf(t.charAt(a))>-1;);return a}function s(t,e){for(var a=t.length;a--&&e.indexOf(t.charAt(a))>-1;);return a}function l(e,a){return t(e.criteria,a.criteria)||e.index-a.index}function c(e,a,r){for(var o=-1,i=e.criteria,n=a.criteria,s=i.length,l=r.length;++o<s;){var c=t(i[o],n[o]);if(c){if(o>=l)return c;var h=r[o];return c*("asc"===h||h===!0?1:-1)}}return e.index-a.index}function h(t){return Kt[t]}function u(t){return Wt[t]}function d(t,e,a){return e?t=Ut[t]:a&&(t=qt[t]),"\\"+t}function f(t){return"\\"+qt[t]}function p(t,e,a){for(var r=t.length,o=e+(a?0:-1);a?o--:++o<r;){var i=t[o];if(i!==i)return o}return-1}function b(t){return!!t&&"object"==typeof t}function _(t){return 160>=t&&t>=9&&13>=t||32==t||160==t||5760==t||6158==t||t>=8192&&(8202>=t||8232==t||8233==t||8239==t||8287==t||12288==t||65279==t)}function v(t,e){for(var a=-1,r=t.length,o=-1,i=[];++a<r;)t[a]===e&&(t[a]=N,i[++o]=a);return i}function m(t,e){for(var a,r=-1,o=t.length,i=-1,n=[];++r<o;){var s=t[r],l=e?e(s,r,t):s;r&&a===l||(a=l,n[++i]=s)}return n}function w(t){for(var e=-1,a=t.length;++e<a&&_(t.charCodeAt(e)););return e}function g(t){for(var e=t.length;e--&&_(t.charCodeAt(e)););return e}function T(t){return Gt[t]}function x(a){function _(t){if(b(t)&&!ks(t)&&!(t instanceof et)){if(t instanceof Q)return t;if(rn.call(t,"__chain__")&&rn.call(t,"__wrapped__"))return pr(t)}return new Q(t)}function Z(){}function Q(t,e,a){this.__wrapped__=t,this.__actions__=a||[],this.__chain__=!!e}function et(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=On,this.__views__=[]}function Kt(){var t=new et(this.__wrapped__);return t.__actions__=oe(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=oe(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=oe(this.__views__),t}function Wt(){if(this.__filtered__){var t=new et(this);t.__dir__=-1,t.__filtered__=!0}else t=this.clone(),t.__dir__*=-1;return t}function Gt(){var t=this.__wrapped__.value(),e=this.__dir__,a=ks(t),r=0>e,o=a?t.length:0,i=Ua(0,o,this.__views__),n=i.start,s=i.end,l=s-n,c=r?s:n-1,h=this.__iteratees__,u=h.length,d=0,f=Sn(l,this.__takeCount__);if(!a||I>o||o==l&&f==l)return oa(t,this.__actions__);var p=[];t:for(;l--&&f>d;){c+=e;for(var b=-1,_=t[c];++b<u;){var v=h[b],m=v.iteratee,w=v.type,g=m(_);if(w==M)_=g;else if(!g){if(w==V)continue t;break t}}p[d++]=_}return p}function jt(){this.__data__={}}function Ut(t){return this.has(t)&&delete this.__data__[t]}function qt(t){return"__proto__"==t?y:this.__data__[t]}function Zt(t){return"__proto__"!=t&&rn.call(this.__data__,t)}function Yt(t,e){return"__proto__"!=t&&(this.__data__[t]=e),this}function Xt(t){var e=t?t.length:0;for(this.data={hash:gn(null),set:new pn};e--;)this.push(t[e])}function Jt(t,e){var a=t.data,r="string"==typeof e||zo(e)?a.set.has(e):a.hash[e];return r?0:-1}function Qt(t){var e=this.data;"string"==typeof t||zo(t)?e.set.add(t):e.hash[t]=!0}function re(t,e){for(var a=-1,r=t.length,o=-1,i=e.length,n=Ni(r+i);++a<r;)n[a]=t[a];for(;++o<i;)n[a++]=e[o];return n}function oe(t,e){var a=-1,r=t.length;for(e||(e=Ni(r));++a<r;)e[a]=t[a];return e}function ie(t,e){for(var a=-1,r=t.length;++a<r&&e(t[a],a,t)!==!1;);return t}function ne(t,e){for(var a=t.length;a--&&e(t[a],a,t)!==!1;);return t}function se(t,e){for(var a=-1,r=t.length;++a<r;)if(!e(t[a],a,t))return!1;return!0}function le(t,e,a,r){for(var o=-1,i=t.length,n=r,s=n;++o<i;){var l=t[o],c=+e(l);a(c,n)&&(n=c,s=l)}return s}function ce(t,e){for(var a=-1,r=t.length,o=-1,i=[];++a<r;){var n=t[a];e(n,a,t)&&(i[++o]=n)}return i}function he(t,e){for(var a=-1,r=t.length,o=Ni(r);++a<r;)o[a]=e(t[a],a,t);return o}function ue(t,e){for(var a=-1,r=e.length,o=t.length;++a<r;)t[o+a]=e[a];return t}function de(t,e,a,r){var o=-1,i=t.length;for(r&&i&&(a=t[++o]);++o<i;)a=e(a,t[o],o,t);return a}function fe(t,e,a,r){var o=t.length;for(r&&o&&(a=t[--o]);o--;)a=e(a,t[o],o,t);return a}function pe(t,e){for(var a=-1,r=t.length;++a<r;)if(e(t[a],a,t))return!0;return!1}function be(t,e){for(var a=t.length,r=0;a--;)r+=+e(t[a])||0;return r}function _e(t,e){return t===y?e:t}function ve(t,e,a,r){return t!==y&&rn.call(r,a)?t:e}function me(t,e,a){for(var r=-1,o=js(e),i=o.length;++r<i;){var n=o[r],s=t[n],l=a(s,e[n],n,t,e);(l===l?l===s:s!==s)&&(s!==y||n in t)||(t[n]=l)}return t}function we(t,e){return null==e?t:Te(e,js(e),t)}function ge(t,e){for(var a=-1,r=null==t,o=!r&&Ja(t),i=o?t.length:0,n=e.length,s=Ni(n);++a<n;){var l=e[a];o?s[a]=Qa(l,i)?t[l]:y:s[a]=r?y:t[l]}return s}function Te(t,e,a){a||(a={});for(var r=-1,o=e.length;++r<o;){var i=e[r];a[i]=t[i]}return a}function xe(t,e,a){var r=typeof t;return"function"==r?e===y?t:sa(t,e,a):null==t?Fi:"object"==r?Re(t):e===y?ki(t):Ne(t,e)}function ye(t,e,a,r,o,i,n){var s;if(a&&(s=o?a(t,r,o):a(t)),s!==y)return s;if(!zo(t))return t;var l=ks(t);if(l){if(s=qa(t),!e)return oe(t,s)}else{var c=nn.call(t),h=c==q;if(c!=X&&c!=K&&(!h||o))return Nt[c]?Ya(t,c,e):o?t:{};if(ee(t))return o?t:{};if(s=Za(h?{}:t),!e)return we(s,t)}i||(i=[]),n||(n=[]);for(var u=i.length;u--;)if(i[u]==t)return n[u];return i.push(t),n.push(s),(l?ie:Ee)(t,function(r,o){s[o]=ye(r,e,a,o,t,i,n)}),s}function Be(t,e,a){if("function"!=typeof t)throw new Xi(R);return bn(function(){t.apply(y,a)},e)}function Ce(t,e){var a=t?t.length:0,o=[];if(!a)return o;var i=-1,n=Wa(),s=n===r,l=s&&e.length>=I?_a(e):null,c=e.length;l&&(n=Jt,s=!1,e=l);t:for(;++i<a;){var h=t[i];if(s&&h===h){for(var u=c;u--;)if(e[u]===h)continue t;o.push(h)}else n(e,h,0)<0&&o.push(h)}return o}function Se(t,e){var a=!0;return Nn(t,function(t,r,o){return a=!!e(t,r,o)}),a}function $e(t,e,a,r){var o=r,i=o;return Nn(t,function(t,n,s){var l=+e(t,n,s);(a(l,o)||l===r&&l===i)&&(o=l,i=t)}),i}function Pe(t,e,a,r){var o=t.length;for(a=null==a?0:+a||0,0>a&&(a=-a>o?0:o+a),r=r===y||r>o?o:+r||0,0>r&&(r+=o),o=a>r?0:r>>>0,a>>>=0;o>a;)t[a++]=e;return t}function Fe(t,e){var a=[];return Nn(t,function(t,r,o){e(t,r,o)&&a.push(t)}),a}function Le(t,e,a,r){var o;return a(t,function(t,a,i){return e(t,a,i)?(o=r?a:t,!1):void 0}),o}function Oe(t,e,a,r){r||(r=[]);for(var o=-1,i=t.length;++o<i;){var n=t[o];b(n)&&Ja(n)&&(a||ks(n)||$o(n))?e?Oe(n,e,a,r):ue(r,n):a||(r[r.length]=n)}return r}function Ae(t,e){return Wn(t,e,ai)}function Ee(t,e){return Wn(t,e,js)}function De(t,e){return Gn(t,e,js)}function ke(t,e){for(var a=-1,r=e.length,o=-1,i=[];++a<r;){var n=e[a];ko(t[n])&&(i[++o]=n)}return i}function ze(t,e,a){if(null!=t){t=dr(t),a!==y&&a in t&&(e=[a]);for(var r=0,o=e.length;null!=t&&o>r;)t=dr(t)[e[r++]];return r&&r==o?t:y}}function He(t,e,a,r,o,i){return t===e?!0:null==t||null==e||!zo(t)&&!b(e)?t!==t&&e!==e:Ie(t,e,He,a,r,o,i)}function Ie(t,e,a,r,o,i,n){var s=ks(t),l=ks(e),c=W,h=W;s||(c=nn.call(t),c==K?c=X:c!=X&&(s=Go(t))),l||(h=nn.call(e),h==K?h=X:h!=X&&(l=Go(e)));var u=c==X&&!ee(t),d=h==X&&!ee(e),f=c==h;if(f&&!s&&!u)return Ma(t,e,c);if(!o){var p=u&&rn.call(t,"__wrapped__"),b=d&&rn.call(e,"__wrapped__");if(p||b)return a(p?t.value():t,b?e.value():e,r,o,i,n)}if(!f)return!1;i||(i=[]),n||(n=[]);for(var _=i.length;_--;)if(i[_]==t)return n[_]==e;i.push(t),n.push(e);var v=(s?Va:Ra)(t,e,a,r,o,i,n);return i.pop(),n.pop(),v}function Ve(t,e,a){var r=e.length,o=r,i=!a;if(null==t)return!o;for(t=dr(t);r--;){var n=e[r];if(i&&n[2]?n[1]!==t[n[0]]:!(n[0]in t))return!1}for(;++r<o;){n=e[r];var s=n[0],l=t[s],c=n[1];if(i&&n[2]){if(l===y&&!(s in t))return!1}else{var h=a?a(l,c,s):y;if(!(h===y?He(c,l,a,!0):h))return!1}}return!0}function Me(t,e){var a=-1,r=Ja(t)?Ni(t.length):[];return Nn(t,function(t,o,i){r[++a]=e(t,o,i)}),r}function Re(t){var e=Ga(t);if(1==e.length&&e[0][2]){var a=e[0][0],r=e[0][1];return function(t){return null==t?!1:(t=dr(t),t[a]===r&&(r!==y||a in t))}}return function(t){return Ve(t,e)}}function Ne(t,e){var a=ks(t),r=er(t)&&or(e),o=t+"";return t=fr(t),function(i){if(null==i)return!1;var n=o;if(i=dr(i),!(!a&&r||n in i)){if(i=1==t.length?i:ze(i,Ye(t,0,-1)),null==i)return!1;n=$r(t),i=dr(i)}return i[n]===e?e!==y||n in i:He(e,i[n],y,!0)}}function Ke(t,e,a,r,o){if(!zo(t))return t;var i=Ja(e)&&(ks(e)||Go(e)),n=i?y:js(e);return ie(n||e,function(s,l){if(n&&(l=s,s=e[l]),b(s))r||(r=[]),o||(o=[]),We(t,e,l,Ke,a,r,o);else{var c=t[l],h=a?a(c,s,l,t,e):y,u=h===y;u&&(h=s),h===y&&(!i||l in t)||!u&&(h===h?h===c:c!==c)||(t[l]=h)}}),t}function We(t,e,a,r,o,i,n){for(var s=i.length,l=e[a];s--;)if(i[s]==l)return void(t[a]=n[s]);var c=t[a],h=o?o(c,l,a,t,e):y,u=h===y;u&&(h=l,Ja(l)&&(ks(l)||Go(l))?h=ks(c)?c:Ja(c)?oe(c):[]:No(l)||$o(l)?h=$o(c)?Yo(c):No(c)?c:{}:u=!1),i.push(l),n.push(h),u?t[a]=r(h,l,o,i,n):(h===h?h!==c:c===c)&&(t[a]=h)}function Ge(t){return function(e){return null==e?y:dr(e)[t]}}function je(t){var e=t+"";return t=fr(t),function(a){return ze(a,t,e)}}function Ue(t,e){for(var a=t?e.length:0;a--;){var r=e[a];if(r!=o&&Qa(r)){var o=r;_n.call(t,r,1)}}return t}function qe(t,e){return t+Tn(Fn()*(e-t+1))}function Ze(t,e,a,r,o){return o(t,function(t,o,i){a=r?(r=!1,t):e(a,t,o,i)}),a}function Ye(t,e,a){var r=-1,o=t.length;e=null==e?0:+e||0,0>e&&(e=-e>o?0:o+e),a=a===y||a>o?o:+a||0,0>a&&(a+=o),o=e>a?0:a-e>>>0,e>>>=0;for(var i=Ni(o);++r<o;)i[r]=t[r+e];return i}function Xe(t,e){var a;return Nn(t,function(t,r,o){return a=e(t,r,o),!a}),!!a}function Je(t,e){var a=t.length;for(t.sort(e);a--;)t[a]=t[a].value;return t}function Qe(t,e,a){var r=Na(),o=-1;e=he(e,function(t){return r(t)});var i=Me(t,function(t){var a=he(e,function(e){return e(t)});return{criteria:a,index:++o,value:t}});return Je(i,function(t,e){return c(t,e,a)})}function ta(t,e){var a=0;return Nn(t,function(t,r,o){a+=+e(t,r,o)||0}),a}function ea(t,e){var a=-1,o=Wa(),i=t.length,n=o===r,s=n&&i>=I,l=s?_a():null,c=[];l?(o=Jt,n=!1):(s=!1,l=e?[]:c);t:for(;++a<i;){var h=t[a],u=e?e(h,a,t):h;if(n&&h===h){for(var d=l.length;d--;)if(l[d]===u)continue t;e&&l.push(u),c.push(h)}else o(l,u,0)<0&&((e||s)&&l.push(u),c.push(h))}return c}function aa(t,e){for(var a=-1,r=e.length,o=Ni(r);++a<r;)o[a]=t[e[a]];return o}function ra(t,e,a,r){for(var o=t.length,i=r?o:-1;(r?i--:++i<o)&&e(t[i],i,t););return a?Ye(t,r?0:i,r?i+1:o):Ye(t,r?i+1:0,r?o:i)}function oa(t,e){var a=t;a instanceof et&&(a=a.value());for(var r=-1,o=e.length;++r<o;){var i=e[r];a=i.func.apply(i.thisArg,ue([a],i.args))}return a}function ia(t,e,a){var r=0,o=t?t.length:r;if("number"==typeof e&&e===e&&Dn>=o){for(;o>r;){var i=r+o>>>1,n=t[i];(a?e>=n:e>n)&&null!==n?r=i+1:o=i}return o}return na(t,e,Fi,a)}function na(t,e,a,r){e=a(e);for(var o=0,i=t?t.length:0,n=e!==e,s=null===e,l=e===y;i>o;){var c=Tn((o+i)/2),h=a(t[c]),u=h!==y,d=h===h;if(n)var f=d||r;else f=s?d&&u&&(r||null!=h):l?d&&(r||u):null==h?!1:r?e>=h:e>h;f?o=c+1:i=c}return Sn(i,En)}function sa(t,e,a){if("function"!=typeof t)return Fi;if(e===y)return t;switch(a){case 1:return function(a){return t.call(e,a)};case 3:return function(a,r,o){return t.call(e,a,r,o)};case 4:return function(a,r,o,i){return t.call(e,a,r,o,i)};case 5:return function(a,r,o,i,n){return t.call(e,a,r,o,i,n)}}return function(){return t.apply(e,arguments)}}function la(t){var e=new cn(t.byteLength),a=new vn(e);return a.set(new vn(t)),e}function ca(t,e,a){for(var r=a.length,o=-1,i=Cn(t.length-r,0),n=-1,s=e.length,l=Ni(s+i);++n<s;)l[n]=e[n];for(;++o<r;)l[a[o]]=t[o];for(;i--;)l[n++]=t[o++];return l}function ha(t,e,a){for(var r=-1,o=a.length,i=-1,n=Cn(t.length-o,0),s=-1,l=e.length,c=Ni(n+l);++i<n;)c[i]=t[i];for(var h=i;++s<l;)c[h+s]=e[s];for(;++r<o;)c[h+a[r]]=t[i++];return c}function ua(t,e){return function(a,r,o){var i=e?e():{};if(r=Na(r,o,3),ks(a))for(var n=-1,s=a.length;++n<s;){var l=a[n];t(i,l,r(l,n,a),a)}else Nn(a,function(e,a,o){t(i,e,r(e,a,o),o)});return i}}function da(t){return wo(function(e,a){var r=-1,o=null==e?0:a.length,i=o>2?a[o-2]:y,n=o>2?a[2]:y,s=o>1?a[o-1]:y;for("function"==typeof i?(i=sa(i,s,5),o-=2):(i="function"==typeof s?s:y,o-=i?1:0),n&&tr(a[0],a[1],n)&&(i=3>o?y:i,o=1);++r<o;){var l=a[r];l&&t(e,l,i)}return e})}function fa(t,e){return function(a,r){var o=a?qn(a):0;if(!rr(o))return t(a,r);for(var i=e?o:-1,n=dr(a);(e?i--:++i<o)&&r(n[i],i,n)!==!1;);return a}}function pa(t){return function(e,a,r){for(var o=dr(e),i=r(e),n=i.length,s=t?n:-1;t?s--:++s<n;){var l=i[s];if(a(o[l],l,o)===!1)break}return e}}function ba(t,e){function a(){var o=this&&this!==te&&this instanceof a?r:t;return o.apply(e,arguments)}var r=ma(t);return a}function _a(t){return gn&&pn?new Xt(t):null}function va(t){return function(e){for(var a=-1,r=Si(di(e)),o=r.length,i="";++a<o;)i=t(i,r[a],a);return i}}function ma(t){return function(){var e=arguments;switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3]);case 5:return new t(e[0],e[1],e[2],e[3],e[4]);case 6:return new t(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return new t(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}var a=Rn(t.prototype),r=t.apply(a,e);return zo(r)?r:a}}function wa(t){function e(a,r,o){o&&tr(a,r,o)&&(r=y);var i=Ia(a,t,y,y,y,y,y,r);return i.placeholder=e.placeholder,i}return e}function ga(t,e){return wo(function(a){var r=a[0];return null==r?r:(a.push(e),t.apply(y,a))})}function Ta(t,e){return function(a,r,o){if(o&&tr(a,r,o)&&(r=y),r=Na(r,o,3),1==r.length){a=ks(a)?a:ur(a);var i=le(a,r,t,e);if(!a.length||i!==e)return i}return $e(a,r,t,e)}}function xa(t,a){return function(r,o,i){if(o=Na(o,i,3),ks(r)){var n=e(r,o,a);return n>-1?r[n]:y}return Le(r,o,t)}}function ya(t){return function(a,r,o){return a&&a.length?(r=Na(r,o,3),e(a,r,t)):-1}}function Ba(t){return function(e,a,r){return a=Na(a,r,3),Le(e,a,t,!0)}}function Ca(t){return function(){for(var e,a=arguments.length,r=t?a:-1,o=0,i=Ni(a);t?r--:++r<a;){var n=i[o++]=arguments[r];if("function"!=typeof n)throw new Xi(R);!e&&Q.prototype.thru&&"wrapper"==Ka(n)&&(e=new Q([],!0))}for(r=e?-1:a;++r<a;){n=i[r];var s=Ka(n),l="wrapper"==s?Un(n):y;e=l&&ar(l[0])&&l[1]==(A|P|L|E)&&!l[4].length&&1==l[9]?e[Ka(l[0])].apply(e,l[3]):1==n.length&&ar(n)?e[s]():e.thru(n)}return function(){var t=arguments,r=t[0];if(e&&1==t.length&&ks(r)&&r.length>=I)return e.plant(r).value();for(var o=0,n=a?i[o].apply(this,t):r;++o<a;)n=i[o].call(this,n);return n}}}function Sa(t,e){return function(a,r,o){return"function"==typeof r&&o===y&&ks(a)?t(a,r):e(a,sa(r,o,3))}}function $a(t){return function(e,a,r){return("function"!=typeof a||r!==y)&&(a=sa(a,r,3)),t(e,a,ai)}}function Pa(t){return function(e,a,r){return("function"!=typeof a||r!==y)&&(a=sa(a,r,3)),t(e,a)}}function Fa(t){return function(e,a,r){var o={};return a=Na(a,r,3),Ee(e,function(e,r,i){var n=a(e,r,i);r=t?n:r,e=t?e:n,o[r]=e}),o}}function La(t){return function(e,a,r){return e=i(e),(t?e:"")+Da(e,a,r)+(t?"":e)}}function Oa(t){var e=wo(function(a,r){var o=v(r,e.placeholder);return Ia(a,t,y,r,o)});return e}function Aa(t,e){return function(a,r,o,i){var n=arguments.length<3;return"function"==typeof r&&i===y&&ks(a)?t(a,r,o,n):Ze(a,Na(r,i,4),o,n,e)}}function Ea(t,e,a,r,o,i,n,s,l,c){function h(){for(var w=arguments.length,g=w,T=Ni(w);g--;)T[g]=arguments[g];if(r&&(T=ca(T,r,o)),i&&(T=ha(T,i,n)),p||_){var x=h.placeholder,B=v(T,x);if(w-=B.length,c>w){var $=s?oe(s):y,P=Cn(c-w,0),F=p?B:y,A=p?y:B,E=p?T:y,D=p?y:T;e|=p?L:O,e&=~(p?O:L),b||(e&=~(C|S));var k=[t,e,a,E,F,D,A,$,l,P],z=Ea.apply(y,k);return ar(t)&&Zn(z,k),z.placeholder=x,z}}var H=d?a:this,I=f?H[t]:t;return s&&(T=cr(T,s)),u&&l<T.length&&(T.length=l),this&&this!==te&&this instanceof h&&(I=m||ma(t)),I.apply(H,T)}var u=e&A,d=e&C,f=e&S,p=e&P,b=e&$,_=e&F,m=f?y:ma(t);return h}function Da(t,e,a){var r=t.length;if(e=+e,r>=e||!yn(e))return"";var o=e-r;return a=null==a?" ":a+"",mi(a,wn(o/a.length)).slice(0,o)}function ka(t,e,a,r){function o(){for(var e=-1,s=arguments.length,l=-1,c=r.length,h=Ni(c+s);++l<c;)h[l]=r[l];for(;s--;)h[l++]=arguments[++e];var u=this&&this!==te&&this instanceof o?n:t;return u.apply(i?a:this,h)}var i=e&C,n=ma(t);return o}function za(t){var e=ji[t];return function(t,a){return a=a===y?0:+a||0,a?(a=dn(10,a),e(t*a)/a):e(t)}}function Ha(t){return function(e,a,r,o){var i=Na(r);return null==r&&i===xe?ia(e,a,t):na(e,a,i(r,o,1),t)}}function Ia(t,e,a,r,o,i,n,s){var l=e&S;if(!l&&"function"!=typeof t)throw new Xi(R);var c=r?r.length:0;if(c||(e&=~(L|O),r=o=y),c-=o?o.length:0,e&O){var h=r,u=o;r=o=y}var d=l?y:Un(t),f=[t,e,a,r,o,h,u,i,n,s];if(d&&(ir(f,d),e=f[1],s=f[9]),f[9]=null==s?l?0:t.length:Cn(s-c,0)||0,e==C)var p=ba(f[0],f[2]);else p=e!=L&&e!=(C|L)||f[4].length?Ea.apply(y,f):ka.apply(y,f);var b=d?jn:Zn;return b(p,f)}function Va(t,e,a,r,o,i,n){var s=-1,l=t.length,c=e.length;if(l!=c&&!(o&&c>l))return!1;for(;++s<l;){var h=t[s],u=e[s],d=r?r(o?u:h,o?h:u,s):y;if(d!==y){if(d)continue;return!1}if(o){if(!pe(e,function(t){return h===t||a(h,t,r,o,i,n)}))return!1}else if(h!==u&&!a(h,u,r,o,i,n))return!1}return!0}function Ma(t,e,a){switch(a){case G:case j:return+t==+e;case U:return t.name==e.name&&t.message==e.message;case Y:return t!=+t?e!=+e:t==+e;case J:case tt:return t==e+""}return!1}function Ra(t,e,a,r,o,i,n){var s=js(t),l=s.length,c=js(e),h=c.length;if(l!=h&&!o)return!1;for(var u=l;u--;){var d=s[u];if(!(o?d in e:rn.call(e,d)))return!1}for(var f=o;++u<l;){d=s[u];var p=t[d],b=e[d],_=r?r(o?b:p,o?p:b,d):y;if(!(_===y?a(p,b,r,o,i,n):_))return!1;f||(f="constructor"==d)}if(!f){var v=t.constructor,m=e.constructor;if(v!=m&&"constructor"in t&&"constructor"in e&&!("function"==typeof v&&v instanceof v&&"function"==typeof m&&m instanceof m))return!1}return!0}function Na(t,e,a){var r=_.callback||$i;return r=r===$i?xe:r,a?r(t,e,a):r}function Ka(t){for(var e=t.name+"",a=Hn[e],r=a?a.length:0;r--;){var o=a[r],i=o.func;if(null==i||i==t)return o.name}return e}function Wa(t,e,a){var o=_.indexOf||Cr;return o=o===Cr?r:o,t?o(t,e,a):o}function Ga(t){for(var e=ri(t),a=e.length;a--;)e[a][2]=or(e[a][1]);return e}function ja(t,e){var a=null==t?y:t[e];return Vo(a)?a:y}function Ua(t,e,a){for(var r=-1,o=a.length;++r<o;){var i=a[r],n=i.size;switch(i.type){case"drop":t+=n;break;case"dropRight":e-=n;break;case"take":e=Sn(e,t+n);break;case"takeRight":t=Cn(t,e-n)}}return{start:t,end:e}}function qa(t){var e=t.length,a=new t.constructor(e);return e&&"string"==typeof t[0]&&rn.call(t,"index")&&(a.index=t.index,a.input=t.input),a}function Za(t){var e=t.constructor;return"function"==typeof e&&e instanceof e||(e=qi),new e}function Ya(t,e,a){var r=t.constructor;switch(e){case at:return la(t);case G:case j:return new r(+t);case rt:case ot:case it:case nt:case st:case lt:case ct:case ht:case ut:r instanceof r&&(r=In[e]);var o=t.buffer;return new r(a?la(o):o,t.byteOffset,t.length);case Y:case tt:return new r(t);case J:var i=new r(t.source,Lt.exec(t));i.lastIndex=t.lastIndex}return i}function Xa(t,e,a){null==t||er(e,t)||(e=fr(e),t=1==e.length?t:ze(t,Ye(e,0,-1)),e=$r(e));var r=null==t?t:t[e];return null==r?y:r.apply(t,a)}function Ja(t){return null!=t&&rr(qn(t))}function Qa(t,e){return t="number"==typeof t||Et.test(t)?+t:-1,e=null==e?kn:e,t>-1&&t%1==0&&e>t}function tr(t,e,a){if(!zo(a))return!1;var r=typeof e;if("number"==r?Ja(a)&&Qa(e,a.length):"string"==r&&e in a){var o=a[e];return t===t?t===o:o!==o}return!1}function er(t,e){var a=typeof t;if("string"==a&&yt.test(t)||"number"==a)return!0;if(ks(t))return!1;var r=!xt.test(t);return r||null!=e&&t in dr(e)}function ar(t){var e=Ka(t),a=_[e];if("function"!=typeof a||!(e in et.prototype))return!1;if(t===a)return!0;var r=Un(a);return!!r&&t===r[0]}function rr(t){return"number"==typeof t&&t>-1&&t%1==0&&kn>=t}function or(t){return t===t&&!zo(t)}function ir(t,e){var a=t[1],r=e[1],o=a|r,i=A>o,n=r==A&&a==P||r==A&&a==E&&t[7].length<=e[8]||r==(A|E)&&a==P;if(!i&&!n)return t;r&C&&(t[2]=e[2],o|=a&C?0:$);var s=e[3];if(s){var l=t[3];t[3]=l?ca(l,s,e[4]):oe(s),t[4]=l?v(t[3],N):oe(e[4])}return s=e[5],s&&(l=t[5],t[5]=l?ha(l,s,e[6]):oe(s),t[6]=l?v(t[5],N):oe(e[6])),s=e[7],s&&(t[7]=oe(s)),r&A&&(t[8]=null==t[8]?e[8]:Sn(t[8],e[8])),null==t[9]&&(t[9]=e[9]),t[0]=e[0],t[1]=o,t}function nr(t,e){return t===y?e:zs(t,e,nr)}function sr(t,e){t=dr(t);for(var a=-1,r=e.length,o={};++a<r;){var i=e[a];i in t&&(o[i]=t[i])}return o}function lr(t,e){var a={};return Ae(t,function(t,r,o){e(t,r,o)&&(a[r]=t)}),a}function cr(t,e){for(var a=t.length,r=Sn(e.length,a),o=oe(t);r--;){var i=e[r];t[r]=Qa(i,a)?o[i]:y}return t}function hr(t){for(var e=ai(t),a=e.length,r=a&&t.length,o=!!r&&rr(r)&&(ks(t)||$o(t)||Wo(t)),i=-1,n=[];++i<a;){var s=e[i];(o&&Qa(s,r)||rn.call(t,s))&&n.push(s)}return n}function ur(t){return null==t?[]:Ja(t)?_.support.unindexedChars&&Wo(t)?t.split(""):zo(t)?t:qi(t):si(t)}function dr(t){if(_.support.unindexedChars&&Wo(t)){for(var e=-1,a=t.length,r=qi(t);++e<a;)r[e]=t.charAt(e);return r}return zo(t)?t:qi(t)}function fr(t){if(ks(t))return t;var e=[];return i(t).replace(Bt,function(t,a,r,o){e.push(r?o.replace(Pt,"$1"):a||t)}),e}function pr(t){return t instanceof et?t.clone():new Q(t.__wrapped__,t.__chain__,oe(t.__actions__))}function br(t,e,a){e=(a?tr(t,e,a):null==e)?1:Cn(Tn(e)||1,1);for(var r=0,o=t?t.length:0,i=-1,n=Ni(wn(o/e));o>r;)n[++i]=Ye(t,r,r+=e);return n}function _r(t){for(var e=-1,a=t?t.length:0,r=-1,o=[];++e<a;){var i=t[e];i&&(o[++r]=i)}return o}function vr(t,e,a){var r=t?t.length:0;return r?((a?tr(t,e,a):null==e)&&(e=1),Ye(t,0>e?0:e)):[]}function mr(t,e,a){var r=t?t.length:0;return r?((a?tr(t,e,a):null==e)&&(e=1), +this.$pane[1].remove(),this.$bar.remove()),this.$container)},__removeChild:function(t){if(this._pane[0]===t)this._pane[0]=!1;else{if(this._pane[1]!==t)return;this._pane[1]=!1}t&&(t.__container(null),t._parent=null)},__destroy:function(){for(this._anim&&(clearInterval(this._anim),this._anim=0),this.$bar.clearQueue();this._boundEvents.length;)this._parent.off(this._boundEvents[0].event,this._boundEvents[0].handler),this._boundEvents.shift();this._pane[0]&&(this._pane[0].__destroy(),this._pane[0]=null),this._pane[1]&&(this._pane[1].__destroy(),this._pane[1]=null),this.__container(null),this._parent=!1}});return r}),a("wcDocker/frame",["dcl/dcl","./types","./base"],function(t,e,a){var r=t(a,{declaredClass:"wcFrame",LEFT_TAB_BUFFER:15,constructor:function(t,a,r){this.$container=$(t),this._parent=a,this._isFloating=r,this.$frame=null,this.$title=null,this.$titleBar=null,this.$tabBar=null,this.$tabScroll=null,this.$center=null,this.$tabLeft=null,this.$tabRight=null,this.$close=null,this.$collapse=null,this.$top=null,this.$bottom=null,this.$left=null,this.$right=null,this.$corner1=null,this.$corner2=null,this.$corner3=null,this.$corner4=null,this.$buttonBar=null,this.$shadower=null,this.$modalBlocker=null,this._titleVisible=!0,this._canScrollTabs=!1,this._tabOrientation=e.TAB.TOP,this._tabScrollPos=0,this._curTab=-1,this._panelList=[],this._buttonList=[],this._resizeData={time:-1,timeout:!1,delta:150},this._pos={x:.5,y:.5},this._size={x:400,y:400},this._lastSize={x:400,y:400},this._anchorMouse={x:0,y:0},this.__init()},pos:function(t,e,a){var r=this.$container.width(),o=this.$container.height();return"undefined"==typeof t?a?{x:this._pos.x*r,y:this._pos.y*o}:{x:this._pos.x,y:this._pos.y}:void(a?(this._pos.x=t/r,this._pos.y=e/o):(this._pos.x=t,this._pos.y=e))},initSize:function(){for(var t={x:-1,y:-1},e=0;e<this._panelList.length;++e)t.x<this._panelList[e].initSize().x&&(t.x=this._panelList[e].initSize().x),t.y<this._panelList[e].initSize().y&&(t.y=this._panelList[e].initSize().y);return t.x<0||t.y<0?!1:t},minSize:function(){for(var t={x:0,y:0},e=0;e<this._panelList.length;++e)t.x=Math.max(t.x,this._panelList[e].minSize().x),t.y=Math.max(t.y,this._panelList[e].minSize().y);return t},maxSize:function(){for(var t={x:1/0,y:1/0},e=0;e<this._panelList.length;++e)t.x=Math.min(t.x,this._panelList[e].maxSize().x),t.y=Math.min(t.y,this._panelList[e].maxSize().y);return t},tabOrientation:function(t){return void 0!==t&&this._tabOrientation!==t&&this.docker()._canOrientTabs&&(this._tabOrientation=t,this.__updateTabs(),this.__updateTabs()),this._tabOrientation},addPanel:function(t,e){var a=this._panelList.indexOf(t);-1!==a&&this._panelList.splice(a,1),"undefined"==typeof e?this._panelList.push(t):this._panelList.splice(e,0,t),-1===this._curTab&&this._panelList.length&&(this.isCollapser()||(this._curTab=0),this._size=this.initSize()),this.__updateTabs()},removePanel:function(t){for(var e=0;e<this._panelList.length;++e)if(this._panelList[e]===t){this.isCollapser()?this._curTab=-1:this._curTab>=e&&this._curTab--,this._panelList[e]._parent===this&&(this._panelList[e].__container(null),this._panelList[e]._parent=null),this._panelList.splice(e,1),t._isVisible=!1;break}return-1===this._curTab&&!this.collapse()&&this._panelList.length&&(this._curTab=0),this.__updateTabs(),this._panelList.length>0},panel:function(t,e){return"undefined"!=typeof t&&(this.isCollapser()&&t===this._curTab&&(this.collapse(),t=-1),t<this._panelList.length&&(this.$tabBar.find('> .wcTabScroller > .wcPanelTab[id="'+this._curTab+'"]').removeClass("wcPanelTabActive"),this.$center.children('.wcPanelTabContent[id="'+this._curTab+'"]').addClass("wcPanelTabContentHidden"),this._curTab!==t&&this.collapse(),this._curTab=t,t>-1&&(this.$tabBar.find('> .wcTabScroller > .wcPanelTab[id="'+t+'"]').addClass("wcPanelTabActive"),this.$center.children('.wcPanelTabContent[id="'+t+'"]').removeClass("wcPanelTabContentHidden"),this.expand()),this.__updateTabs(e))),this._curTab>-1&&this._curTab<this._panelList.length?this._panelList[this._curTab]:this.isCollapser()&&this._panelList.length?this._panelList[0]:!1},isCollapser:function(){return this._parent&&"wcDrawer"===this._parent.declaredClass},collapse:function(t){return this.isCollapser()?(this._parent.collapse(t),!0):!1},expand:function(){return this.isCollapser()?(this._parent.expand(),!0):!1},isExpanded:function(){return this.isCollapser()?this._parent.isExpanded():void 0},__init:function(){this.$frame=$('<div class="wcFrame wcWide wcTall">'),this.$title=$('<div class="wcFrameTitle">'),this.$titleBar=$('<div class="wcFrameTitleBar wcFrameTopper">'),this.$tabBar=$('<div class="wcFrameTitleBar">'),this.$tabScroll=$('<div class="wcTabScroller">'),this.$center=$('<div class="wcFrameCenter wcPanelBackground">'),this.$tabLeft=$('<div class="wcFrameButton wcFrameButtonLeft" title="Scroll tabs to the left."><span class="fa fa-arrow-left"></span></div>'),this.$tabRight=$('<div class="wcFrameButton wcFrameButtonRight " title="Scroll tabs to the right."><span class="fa fa-arrow-right"></span></div>'),this.$close=$('<div class="wcFrameButton" title="Close the currently active panel tab"><div class="fa fa-close"></div>X</div>'),this.$collapse=$('<div class="wcFrameButton" title="Collapse the active panel"><div class="fa fa-download"></div>C</div>'),this.$buttonBar=$('<div class="wcFrameButtonBar">'),this.$tabButtonBar=$('<div class="wcFrameButtonBar">'),this.$tabBar.append(this.$tabScroll),this.$tabBar.append(this.$tabButtonBar),this.$frame.append(this.$buttonBar),this.$buttonBar.append(this.$close),this.$buttonBar.append(this.$collapse),this.$frame.append(this.$center),this._isFloating&&(this.$top=$('<div class="wcFrameEdgeH wcFrameEdge"></div>').css("top","-4px").css("left","0px").css("right","0px"),this.$bottom=$('<div class="wcFrameEdgeH wcFrameEdge"></div>').css("bottom","-4px").css("left","0px").css("right","0px"),this.$left=$('<div class="wcFrameEdgeV wcFrameEdge"></div>').css("left","-4px").css("top","0px").css("bottom","0px"),this.$right=$('<div class="wcFrameEdgeV wcFrameEdge"></div>').css("right","-4px").css("top","0px").css("bottom","0px"),this.$corner1=$('<div class="wcFrameCornerNW wcFrameEdge"></div>').css("top","-4px").css("left","-4px"),this.$corner2=$('<div class="wcFrameCornerNE wcFrameEdge"></div>').css("top","-4px").css("right","-4px"),this.$corner3=$('<div class="wcFrameCornerNW wcFrameEdge"></div>').css("bottom","-4px").css("right","-4px"),this.$corner4=$('<div class="wcFrameCornerNE wcFrameEdge"></div>').css("bottom","-4px").css("left","-4px"),this.$frame.append(this.$top),this.$frame.append(this.$bottom),this.$frame.append(this.$left),this.$frame.append(this.$right),this.$frame.append(this.$corner1),this.$frame.append(this.$corner2),this.$frame.append(this.$corner3),this.$frame.append(this.$corner4)),this.__container(this.$container),this._isFloating&&this.$frame.addClass("wcFloating"),this.$center.scroll(this.__scrolled.bind(this))},__update:function(){var t=this.$container.width(),e=this.$container.height();if(this._isFloating){var a=this._pos.x*t-this._size.x/2,r=this._pos.y*e-this._size.y/2;0>r&&(r=0),a+this._size.x/2<0&&(a=-this._size.x/2),a+this._size.x/2>t&&(a=t-this._size.x/2),r+parseInt(this.$center.css("top"))>e&&(r=e-parseInt(this.$center.css("top"))),this.$frame.css("left",a+"px"),this.$frame.css("top",r+"px"),this.$frame.css("width",this._size.x+"px"),this.$frame.css("height",this._size.y+"px")}(t!==this._lastSize.x||e!==this._lastSize.y)&&(this._lastSize.x=t,this._lastSize.y=e,this._resizeData.time=new Date,this._resizeData.timeout||(this._resizeData.timeout=!0,setTimeout(this.__resizeEnd.bind(this),this._resizeData.delta))),this.__onTabChange()},__resizeEnd:function(){this.__updateTabs(),new Date-this._resizeData.time<this._resizeData.delta?setTimeout(this.__resizeEnd.bind(this),this._resizeData.delta):this._resizeData.timeout=!1},__trigger:function(t,e){for(var a=0;a<this._panelList.length;++a)this._panelList[a].__trigger(t,e)},__save:function(){var t={};t.type="wcFrame",t.floating=this._isFloating,t.isFocus=this.$frame.hasClass("wcFloatingFocus"),t.tabOrientation=this._tabOrientation,t.pos={x:this._pos.x,y:this._pos.y},t.size={x:this._size.x,y:this._size.y},t.tab=this._curTab,t.panels=[];for(var e=0;e<this._panelList.length;++e)t.panels.push(this._panelList[e].__save());return t},__restore:function(t,a){this._isFloating=t.floating,this._tabOrientation=t.tabOrientation||e.TAB.TOP,this._pos.x=t.pos.x,this._pos.y=t.pos.y,this._size.x=t.size.x,this._size.y=t.size.y,this._curTab=t.tab;for(var r=0;r<t.panels.length;++r){var o=a.__create(t.panels[r],this,this.$center);o.__restore(t.panels[r],a),this._panelList.push(o)}this.__update(),t.isFocus&&this.$frame.addClass("wcFloatingFocus")},__updateTabs:function(t){this.$tabScroll.empty();var a=function(t){switch(this._tabOrientation){case e.TAB.BOTTOM:return t.offset().left;case e.TAB.TOP:return t.offset().left;case e.TAB.LEFT:return t.offset().top;case e.TAB.RIGHT:return t.offset().top}}.bind(this),r=[],o=[],i=0,n=a(this.$tabScroll),s=this._panelList.length>1||this._isFloating||this.isCollapser();this.isCollapser()?this.$tabBar.addClass("wcNotMoveable"):(this.$titleBar.removeClass("wcNotMoveable"),this.$tabBar.removeClass("wcNotMoveable")),this.$center.children(".wcPanelTabContent").each(function(){$(this).addClass("wcPanelTabContentHidden wcPanelTabUnused")}),this._titleVisible=!0,this.$title.html("");for(var l=0;l<this._panelList.length;++l){var c=this._panelList[l],h=null;s&&(h=c.$title,c.$title.attr("id",l),this.$tabScroll.append(c.$title)),c.moveable()||(this.$titleBar.addClass("wcNotMoveable"),this.$tabBar.addClass("wcNotMoveable")),c._titleVisible||(this._titleVisible=!1);var u=this.$center.children('.wcPanelTabContent[id="'+l+'"]');u.length||(u=$('<div class="wcPanelTabContent wcPanelTabContentHidden" id="'+l+'">'),this.$center.append(u)),c.__container(u),c._parent=this;var d=this._curTab===l;if(c.isVisible()!==d&&r.push({panel:c,isVisible:d}),u.removeClass("wcPanelTabUnused"),d&&(h&&h.addClass("wcPanelTabActive"),u.removeClass("wcPanelTabContentHidden"),this.$title.html(c.title()),c.$icon)){var f=c.$icon.clone();this.$title.prepend(f)}h&&(i=a(h)-n,o.push(i),i+=h.outerWidth())}var p=this.$titleBar,b=0;if(this._titleVisible){switch(this.$frame.parent()||this.$center.css("top",""),this._tabOrientation){case e.TAB.TOP:this.$frame.prepend(this.$tabBar),this.$titleBar.remove(),this.$tabBar.addClass("wcTabTop").removeClass("wcTabLeft wcTabRight wcTabBottom"),s?this.$title.remove():this.$tabBar.prepend(this.$title),p=this.$tabBar,this.$center.css("left",0).css("right",0).css("bottom",0),b=this.$center.width();break;case e.TAB.BOTTOM:if(this.$frame.prepend(this.$titleBar),this.$titleBar.append(this.$title),s){var _=this.$titleBar.height();this.$frame.append(this.$tabBar),this.$tabBar.addClass("wcTabBottom").removeClass("wcTabTop wcTabLeft wcTabRight"),this.$center.css("left",0).css("right",0).css("bottom",_)}else this.$tabBar.remove();b=this.$center.width();break;case e.TAB.LEFT:if(this.$frame.prepend(this.$titleBar),this.$titleBar.append(this.$title),s){var _=this.$titleBar.height();this.$frame.append(this.$tabBar),this.$tabBar.addClass("wcTabLeft").removeClass("wcTabTop wcTabRight wcTabBottom"),this.$center.css("left",_).css("right",0).css("bottom",0)}else this.$tabBar.remove();b=this.$center.height();break;case e.TAB.RIGHT:if(this.$frame.prepend(this.$titleBar),this.$titleBar.append(this.$title),s){var _=this.$titleBar.height();this.$frame.append(this.$tabBar),this.$tabBar.addClass("wcTabRight").removeClass("wcTabTop wcTabLeft wcTabBottom"),this.$center.css("left",0).css("right",_).css("bottom",0)}else this.$tabBar.remove();b=this.$center.height()}s||this.$center.css("left",0).css("right",0).css("bottom",0)}else this.$titleBar.remove(),this.$tabBar.remove(),this.$center.css("top",0).css("left",0).css("right",0).css("bottom",0);if(this.$center.children(".wcPanelTabUnused").each(function(){$(this).remove()}),this._titleVisible){var v=this.__onTabChange();if(t)for(var l=0;l<o.length;++l)if(l===this._curTab){var m=o[l],w=i;l+1<o.length&&(w=o[l+1]);var g=-parseInt(this.$tabScroll.css("left")),T=b-v;g>m?(this._tabScrollPos=m-this.LEFT_TAB_BUFFER,this._tabScrollPos<0&&(this._tabScrollPos=0)):w-g>T&&(this._tabScrollPos=w-T+this.LEFT_TAB_BUFFER);break}if(this._canScrollTabs=!1,i>b-v){this._canScrollTabs=this._titleVisible,this._canScrollTabs&&(this.$tabButtonBar.append(this.$tabRight),this.$tabButtonBar.append(this.$tabLeft),v+=this.$tabRight.outerWidth(),v+=this.$tabLeft.outerWidth());var x=i-(b-v)/2;if(this._tabScrollPos>x)for(var y=this.$tabScroll.children(),l=0;l<y.length;++l){var h=$(y[l]);if(i=a(h)-n,i+h.outerWidth()>x){this._tabScrollPos=i-this.LEFT_TAB_BUFFER,this._tabScrollPos<0&&(this._tabScrollPos=0);break}}}else this._tabScrollPos=0,this.$tabLeft.remove(),this.$tabRight.remove();this.$tabScroll.stop().animate({left:-this._tabScrollPos+"px"},"fast");for(var l=0;l<r.length;++l)r[l].panel.__isVisible(r[l].isVisible)}},__onTabChange:function(){var t=0,a=0,r=this.panel();for(this.$tabLeft.remove(),this.$tabRight.remove(),this.$close.hide(),this.$collapse.hide();this._buttonList.length;)this._buttonList.pop().remove();if(r){var o=r.scrollable();if(this.$center.toggleClass("wcScrollableX",o.x),this.$center.toggleClass("wcScrollableY",o.y),this.$frame.toggleClass("wcOverflowVisible",r.overflowVisible()),this.$center.toggleClass("wcOverflowVisible",r.overflowVisible()),!this.isCollapser()||this.isExpanded()){r.closeable()&&(this.$close.show(),t+=this.$close.outerWidth());var i=this.docker();if(i.isCollapseEnabled()&&r.moveable()&&r.collapsible()&&!this._isFloating&&!r._isPlaceholder)if(this.isCollapser()){var n=this.$collapse.children("div");switch(n[0].className="fa fa-sign-out",this._parent._position){case e.DOCK.LEFT:n.addClass("wcCollapseLeft");break;case e.DOCK.RIGHT:n.addClass("wcCollapseRight");break;case e.DOCK.BOTTOM:n.addClass("wcCollapseBottom")}n.addClass("wcCollapsed"),this.$collapse.show(),this.$collapse.attr("title","Dock this collapsed panel back into the main layout."),t+=this.$collapse.outerWidth()}else{var s=e.DOCK.BOTTOM;if(r._collapseDirection===e.DOCK.LEFT||r._collapseDirection===e.DOCK.RIGHT||r._collapseDirection===e.DOCK.BOTTOM)s=r._collapseDirection;else{var l=i.$container;!$.isEmptyObject(i._collapser)&&i._collapser.hasOwnProperty(e.DOCK.RIGHT)&&(l=i._collapser[e.DOCK.RIGHT]._parent.$pane[0]);var c=l.offset(),h=this.$container.offset();h.right=(h.left+this.$container.width()-c.left)/l.width(),h.bottom=(h.top+this.$container.height()-c.top)/l.height(),h.top=(h.top-c.top)/l.height(),h.left=(h.left-c.left)/l.width(),"function"==typeof r._collapseDirection?s=r._collapseDirection(h):h.top>.5&&h.bottom>.95?s=e.DOCK.BOTTOM:h.left<=.05?s=e.DOCK.LEFT:h.right>=.95?s=e.DOCK.RIGHT:h.bottom>.95&&(s=e.DOCK.BOTTOM)}var u="",d="";switch(s){case e.DOCK.LEFT:u="left side.",d="wcCollapseLeft";break;case e.DOCK.RIGHT:u="right side.",d="wcCollapseRight";break;case e.DOCK.BOTTOM:u="bottom.",d="wcCollapseBottom"}if(u){var n=this.$collapse.children("div");n[0].className="fa fa-sign-in",n.addClass(d),n.addClass("wcCollapsible"),this.$collapse.show(),this.$collapse.attr("title","Collapse this panel into the "+u),t+=this.$collapse.outerWidth()}}for(var f=0;f<r._buttonList.length;++f){var p=r._buttonList[f],b=$("<div>"),_=p.className;b.addClass("wcFrameButton"),p.isTogglable&&(b.addClass("wcFrameButtonToggler"),p.isToggled&&(b.addClass("wcFrameButtonToggled"),_=p.toggleClassName||_)),b.attr("title",p.tip),b.data("name",p.name),b.text(p.text),_&&b.prepend($('<div class="'+_+'">')),this._buttonList.push(b),this.$buttonBar.append(b),t+=b.outerWidth()}}if(this._canScrollTabs&&(this.$tabButtonBar.append(this.$tabRight),this.$tabButtonBar.append(this.$tabLeft),a+=this.$tabRight.outerWidth()+this.$tabLeft.outerWidth()),this._titleVisible)switch(this.$buttonBar.css("right",""),this._tabOrientation){case e.TAB.RIGHT:this.$buttonBar.css("right",this.$tabBar.height());case e.TAB.LEFT:this.$tabBar.css("width",this.$center.height()+this.$tabBar.height());break;case e.TAB.TOP:case e.TAB.BOTTOM:this.$tabBar.css("width",this.$center.width())}r.__update(),this.$center.scrollLeft(r._scroll.x),this.$center.scrollTop(r._scroll.y)}return this.$buttonBar.css("min-width",t).css("width",t),this.$tabButtonBar.css("min-width",a).css("width",a),this._tabOrientation===e.TAB.TOP?(this.$tabButtonBar.css("right",t),t+a):(this.$tabButtonBar.css("right",0),a)},__scrolled:function(){var t=this.panel();t._scroll.x=this.$center.scrollLeft(),t._scroll.y=this.$center.scrollTop(),t.__trigger(e.EVENT.SCROLLED)},__focus:function(t){if(t){var e=$('<div class="wcFrameFlasher">');this.$frame.append(e),e.animate({opacity:1},100).animate({opacity:0},100).animate({opacity:.6},50).animate({opacity:0},50).queue(function(t){e.remove(),t()})}},__move:function(t){var e=this.$container.width(),a=this.$container.height();this._pos.x=(t.x+this._anchorMouse.x)/e,this._pos.y=(t.y+this._anchorMouse.y)/a},__anchorMove:function(t){var e=this.$container.width(),a=this.$container.height();this._anchorMouse.x=this._pos.x*e-t.x,this._anchorMouse.y=this._pos.y*a-t.y},__tabMove:function(t,e){if(t>=0&&t<this._panelList.length&&e>=0&&e<this._panelList.length){var a=this._panelList.splice(t,1);return this._panelList.splice(e,0,a[0]),this._curTab===t&&(this._curTab=e),this.__updateTabs(),this.$tabBar.find('> .wcTabScroller > .wcPanelTab[id="'+e+'"]')[0]}return!1},__checkAnchorDrop:function(t,e,a,r,o,i){var n=this.panel();return n&&n.moveable()?n.layout().__checkAnchorDrop(t,e&&this._tabOrientation,a,!this._isFloating&&!this.isCollapser()&&r,this.$frame,n.moveable()&&n.title(),o,this.isCollapser()?this._tabOrientation:void 0,i):!1},__resize:function(t,e){var a=this.$container.width(),r=this.$container.height(),o=this.$container.offset();e.x-=o.left,e.y-=o.top;for(var i=this.minSize(),n=this.maxSize(),s={x:this._pos.x*a-this._size.x/2,y:this._pos.y*r-this._size.y/2},l=0;l<t.length;++l){switch(t[l]){case"top":this._size.y+=s.y-e.y-2,s.y=e.y+2,this._size.y<i.y&&(s.y+=this._size.y-i.y,this._size.y=i.y),this._size.y>n.y&&(s.y+=this._size.y-n.y,this._size.y=n.y);break;case"bottom":this._size.y=e.y-4-s.y,this._size.y<i.y&&(this._size.y=i.y),this._size.y>n.y&&(this._size.y=n.y);break;case"left":this._size.x+=s.x-e.x-2,s.x=e.x+2,this._size.x<i.x&&(s.x+=this._size.x-i.x,this._size.x=i.x),this._size.x>n.x&&(s.x+=this._size.x-n.x,this._size.x=n.x);break;case"right":this._size.x=e.x-4-s.x,this._size.x<i.x&&(this._size.x=i.x),this._size.x>n.x&&(this._size.x=n.x)}this._pos.x=(s.x+this._size.x/2)/a,this._pos.y=(s.y+this._size.y/2)/r}},__shadow:function(t){if(t)this.$shadower||(this.$shadower=$('<div class="wcFrameShadower">'),this.$frame.append(this.$shadower),this.$shadower.animate({opacity:.5},300));else if(this.$shadower){var e=this;this.$shadower.animate({opacity:0},300).queue(function(t){e.$shadower.remove(),e.$shadower=null,t()})}},__rect:function(){if(this.isCollapser())return this._parent.__rect();var t=this.$frame.offset(),e=this.$frame.width(),a=this.$frame.height();return{x:t.left,y:t.top,w:e,h:a}},__container:function(t){return"undefined"==typeof t?this.$container:(this.$container=t,this.$container?this.$container.append(this.$frame):this.$frame.remove(),this.$container)},__destroy:function(){this._curTab=-1;for(var t=0;t<this._panelList.length;++t)this._panelList[t].__destroy();for(;this._panelList.length;)this._panelList.pop();this.$modalBlocker&&(this.$modalBlocker.remove(),this.$modalBlocker=null),this.__container(null),this._parent=null}});return r}),a("wcDocker/drawer",["dcl/dcl","./types","./frame","./base"],function(t,e,a,r){var o=t(r,{declaredClass:"wcDrawer",constructor:function(t,a,r){this.$container=$(t),this.$frame=null,this._position=r,this._parent=a,this._frame=null,this._closeSize=0,this._expanded=!1,this._sliding=!1,this._orientation=this._position===e.DOCK.LEFT||this._position===e.DOCK.RIGHT?e.ORIENTATION.HORIZONTAL:e.ORIENTATION.VERTICAL,this.__init()},collapse:function(t){if(this._expanded){var a=this._frame.panel();if(a){var r=this._parent.pos();this._position!==e.DOCK.LEFT&&(r=1-r);var o;this._position===e.DOCK.BOTTOM?(o=this.docker().$container.height(),a._size.y=r*o):(o=this.docker().$container.width(),a._size.x=r*o)}if(this._expanded=!1,t)switch(this._position){case e.DOCK.TOP:case e.DOCK.LEFT:this._parent.pos(0);break;case e.DOCK.RIGHT:case e.DOCK.BOTTOM:this._parent.pos(1)}else{this._sliding=!0;var i=this,n=function(){i._sliding=!1,i._parent.__update()};switch(this._position){case e.DOCK.TOP:case e.DOCK.LEFT:this._parent.animPos(0,n);break;case e.DOCK.RIGHT:case e.DOCK.BOTTOM:this._parent.animPos(1,n)}}}},expand:function(){if(!this._expanded){this._expanded=!0,this._sliding=!0;var t=this._frame.panel();if(t){var a,r;this._position===e.DOCK.BOTTOM?(a=t._size.y,r=this.docker().$container.height()):(a=t._size.x,r=this.docker().$container.width()),this._position!==e.DOCK.LEFT&&(a=r-a),a/=r;var o=this;this._parent.animPos(a,function(){o._sliding=!1,o._parent.__update()})}}},isExpanded:function(){return this._expanded},minSize:function(){return this._expanded?this._root&&"function"==typeof this._root.minSize?this._root.minSize():{x:100,y:100}:(this.__adjustCollapsedSize(),{x:this._closeSize,y:this._closeSize})},maxSize:function(){var t=this._orientation===e.ORIENTATION.HORIZONTAL?!0:!1;return this._expanded||this._sliding?this._root&&"function"==typeof this._root.maxSize?{x:t?this._root.maxSize().x:1/0,y:t?1/0:this._root.maxSize().y}:{x:1/0,y:1/0}:(this.__adjustCollapsedSize(),{x:t?this._closeSize:1/0,y:t?1/0:this._closeSize})},__init:function(){this.$frame=$('<div class="wcCollapserFrame">'),this.__container(this.$container),this._frame=new(this.docker().__getClass("wcFrame"))(this.$frame,this,!1),this._frame.tabOrientation(this._position)},__update:function(t){this.__adjustCollapsedSize(),this._frame.__update()},__adjustCollapsedSize:function(){this._frame._panelList.length?(this._closeSize=this._frame.$tabBar.outerHeight(),this._parent.$bar.removeClass("wcSplitterHidden")):(this._closeSize=0,this._parent.$bar.addClass("wcSplitterHidden"))},__rect:function(){var t=this.$frame.offset(),a=this.$frame.width(),r=this.$frame.height(),o=this._frame.panel();return o&&(this._position===e.DOCK.BOTTOM?(r=o._size.y,a/=3):(a=o._size.x,r/=3)),{x:t.left,y:t.top,w:a,h:r}},__save:function(){var t={};return t.closeSize=this._closeSize,t.frame=this._frame.__save(),t},__restore:function(t,e){this._closeSize=t.closeSize,this._frame.__restore(t.frame,e),this.__adjustCollapsedSize()},__container:function(t){return"undefined"==typeof t?this.$container:(this.$container=t,this.$container?this.$container.append(this.$frame):this.$frame.remove(),this.$container)},__destroy:function(){this._frame&&(this._frame.__destroy(),this._frame=null),this.__container(null),this._parent=null}});return o}),a("wcDocker/collapser",["dcl/dcl","./types","./splitter","./drawer","./base"],function(t,e,a,r,o){var i=t(o,{declaredClass:"wcCollapser",constructor:function(t,a,r){this.$container=$(t),this.$frame=null,this._position=r,this._parent=a,this._splitter=null,this._drawer=null,this._size=0,this._orientation=this._position===e.DOCK.LEFT||this._position===e.DOCK.RIGHT?e.ORIENTATION.HORIZONTAL:e.ORIENTATION.VERTICAL,this.__init()},collapse:function(t){this._drawer.collapse()},expand:function(){this._drawer.expand()},isExpanded:function(){return this._drawer.isExpanded()},minSize:function(){return{x:this._size,y:this._size}},maxSize:function(){var t=this._orientation===e.ORIENTATION.HORIZONTAL?!0:!1;return{x:t?this._size:1/0,y:t?1/0:this._size}},__init:function(){this.$frame=$('<div class="wcCollapserFrame">'),this.__container(this.$container);var t=this.docker();switch(this._splitter=new(this.docker().__getClass("wcSplitter"))(t.$container,this,this._orientation),this._drawer=new(this.docker().__getClass("wcDrawer"))(t.$transition,this._splitter,this._position),this._position){case e.DOCK.LEFT:this._splitter.pane(0,this._drawer),this._splitter.$pane[1].remove(),this._splitter.$pane[0].addClass("wcDrawer"),this._splitter.pos(0);break;case e.DOCK.RIGHT:case e.DOCK.BOTTOM:this._splitter.pane(1,this._drawer),this._splitter.$pane[0].remove(),this._splitter.$pane[1].addClass("wcDrawer"),this._splitter.pos(1)}this._parent.$bar.addClass("wcSplitterHidden")},__update:function(t){this._splitter.__update(),this.__adjustSize()},__adjustSize:function(){this._drawer._frame._panelList.length?this._size=this._drawer._frame.$tabBar.outerHeight():this._size=0},__rect:function(){return this._drawer.__rect()},__save:function(){var t={};return t.size=this._size,t.drawer=this._drawer.__save(),t},__restore:function(t,e){this._size=t.size,this._drawer.__restore(t.drawer,e),this.__adjustSize()},__container:function(t){return"undefined"==typeof t?this.$container:(this.$container=t,this.$container?this.$container.append(this.$frame):this.$frame.remove(),this.$container)},__destroy:function(){this._splitter&&(this._splitter.__destroy(),this._splitter=null,this._frame=null),this.__container(null),this._parent=null}});return i}),a("wcDocker/layout",["dcl/dcl","./types"],function(t,e){var a=t(null,{declaredClass:"wcLayout",constructor:function(t,e){this.$container=$(t),this._parent=e,this.$elem=null,this.__init()},addItem:function(t){},clear:function(){},scene:function(){return this.$elem},__init:function(){},__update:function(){},__checkAnchorDrop:function(t,a,r,o,i,n,s,l,c){function h(t,e,a){return"number"==typeof t||"string"==typeof t&&-1!==t.indexOf("px",t.length-2)?(t=parseInt(t),{x:t,y:t}):"string"==typeof t&&-1!==t.indexOf("%",t.length-1)?(t=parseInt(t)/100,{x:e*t,y:a*t}):{x:0,y:0}}var u=this._parent.docker(),d=i.outerWidth(),f=i.outerHeight(),p=i.offset(),b=i.find(".wcFrameTitleBar").height();n||(b=0);var _=h(u._options.edgeAnchorSize,u.$container.outerWidth(),u.$container.outerHeight()),v=h(u._options.panelAnchorSize,d,f);if(n){if((!l||l===e.TAB.TOP)&&t.y>=p.top&&t.y<=p.top+b&&t.x>=p.left&&t.x<=p.left+d)return r.anchor(t,{x:p.left-2,y:p.top-2,w:d,h:b-2,loc:e.DOCK.STACKED,tab:e.TAB.TOP,item:this,self:a===e.TAB.TOP||s&&a}),!0;if(u._canOrientTabs){if((!l||l===e.TAB.BOTTOM)&&t.y>=p.top+f-b&&t.y<=p.top+f&&t.x>=p.left&&t.x<=p.left+d)return r.anchor(t,{x:p.left-2,y:p.top+f-b-2,w:d,h:b,loc:e.DOCK.STACKED,tab:e.TAB.BOTTOM,item:this,self:a===e.TAB.BOTTOM}),!0;if((!l||l===e.TAB.LEFT)&&t.y>=p.top&&t.y<=p.top+f&&t.x>=p.left&&t.x<=p.left+b)return r.anchor(t,{x:p.left-2,y:p.top-2,w:b-2,h:f,loc:e.DOCK.STACKED,tab:e.TAB.LEFT,item:this,self:a===e.TAB.LEFT}),!0;if((!l||l===e.TAB.RIGHT)&&t.y>=p.top&&t.y<=p.top+f&&t.x>=p.left+d-b&&t.x<=p.left+d)return r.anchor(t,{x:p.left+d-b-2,y:p.top-2,w:b,h:f,loc:e.DOCK.STACKED,tab:e.TAB.RIGHT,item:this,self:a===e.TAB.RIGHT}),!0}}if(c&&r._outer&&r._inner){var m=r._outer.$container.outerWidth(),w=r._outer.$container.outerHeight(),g=r._outer.$container.offset();if(t.y>=g.top&&t.y<=g.top+w&&t.x>=g.left+b&&t.x<=g.left+b+_.x)return r.anchor(t,{x:g.left-2,y:g.top-2,w:m/3,h:w,loc:e.DOCK.LEFT,item:r._inner,self:!1}),!0;if(t.y>=g.top&&t.y<=g.top+w&&t.x>=g.left+m-_.x-b&&t.x<=g.left+m-b)return r.anchor(t,{x:g.left+m-m/3-2,y:g.top-2,w:m/3,h:w,loc:e.DOCK.RIGHT,item:r._inner,self:!1}),!0;if(t.y>=g.top+b&&t.y<=g.top+b+_.y&&t.x>=g.left&&t.x<=g.left+m)return r.anchor(t,{x:g.left-2,y:g.top-2,w:m,h:w/3,loc:e.DOCK.TOP,item:r._inner,self:!1}),!0;if(t.y>=g.top+w-b-_.y&&t.y<=g.top+w-b&&t.x>=g.left&&t.x<=g.left+m)return r.anchor(t,{x:g.left-2,y:g.top+w-w/3-2,w:m,h:w/3,loc:e.DOCK.BOTTOM,item:r._inner,self:!1}),!0}if(!o)return!1;if(this._parent&&this._parent.instanceOf("wcPanel")&&this._parent._isPlaceholder)return r.anchor(t,{x:p.left-2,y:p.top-2,w:d,h:f,loc:e.DOCK.TOP,item:this,self:!1}),!0;if(f>d){if(t.y>=p.top&&t.y<=p.top+b+v.y&&t.x>=p.left&&t.x<=p.left+d)return r.anchor(t,{x:p.left-2,y:p.top-2,w:d,h:.5*f,loc:e.DOCK.TOP,item:this,self:!1}),!0;if(t.y>=p.top+f-v.y-b&&t.y<=p.top+f&&t.x>=p.left&&t.x<=p.left+d)return r.anchor(t,{x:p.left-2,y:p.top+(f-.5*f)-2,w:d,h:.5*f,loc:e.DOCK.BOTTOM,item:this,self:!1}),!0}if(t.y>=p.top&&t.y<=p.top+f){if(t.x>=p.left&&t.x<=p.left+v.x+b)return r.anchor(t,{x:p.left-2,y:p.top-2,w:.5*d,h:f,loc:e.DOCK.LEFT,item:this,self:!1}),!0;if(t.x>=p.left+d-v.x-b&&t.x<=p.left+d)return r.anchor(t,{x:p.left+.5*d-2,y:p.top-2,w:.5*d,h:f,loc:e.DOCK.RIGHT,item:this,self:!1}),!0}if(d>=f){if(t.y>=p.top&&t.y<=p.top+v.y+b&&t.x>=p.left&&t.x<=p.left+d)return r.anchor(t,{x:p.left-2,y:p.top-2,w:d,h:.5*f,loc:e.DOCK.TOP,item:this,self:!1}),!0;if(t.y>=p.top+f-v.y-b&&t.y<=p.top+f&&t.x>=p.left&&t.x<=p.left+d)return r.anchor(t,{x:p.left-2,y:p.top+(f-.5*f)-2,w:d,h:.5*f,loc:e.DOCK.BOTTOM,item:this,self:!1}),!0}return!1},__container:function(t){return"undefined"==typeof t?this.$container:(this.$container=t,this.$container?this.$container.append(this.$elem):this.$elem.remove(),this.$container)},__destroy:function(){this.__container(null),this._parent=null,this.clear(),this.$elem.remove(),this.$elem=null}});return a}),a("wcDocker/layoutsimple",["dcl/dcl","./types","./layout"],function(t,e,a){var r=t(a,{declaredClass:"wcLayoutSimple",addItem:function(t){this.$elem.append(t)},clear:function(){this.$elem.remove(),this.$elem=null,this.__init()},__init:function(){this.$elem=$('<div class="wcLayout wcWide wcTall"></div>'),this.__container(this.$container)},__update:function(){}});return r}),a("wcDocker/layouttable",["dcl/dcl","./types","./layout"],function(t,e,a){var r=t(a,{declaredClass:"wcLayoutTable",addItem:function(t,e,a,r,o){return("undefined"==typeof e||0>e)&&(e=0),("undefined"==typeof a||0>a)&&(a=0),("undefined"==typeof r||0>=r)&&(r=1),("undefined"==typeof o||0>=o)&&(o=1),this.__resizeGrid(e+r-1,a+o-1),(r>1||o>1)&&!this.__mergeGrid(e,a,r,o)?!1:(this._grid[a][e].$el.append($(t)),this.item(e,a))},item:function(t,e){if(e>=this._grid.length)return!1;if(t>=this._grid[e].length)return!1;var a=this,r={$:a._grid[e][t].$el,css:function(o,i){if(a._grid[e][t].$el){if(void 0===i)return a._grid[e][t].$el.css(o);a._grid[e][t].$el.css(o,i)}return r},stretch:function(o,i){return a.itemStretch(t,e,o,i),r}};return r},itemStretch:function(t,e,a,r){var o=this._batchProcess;this._batchProcess=!0,this.__resizeGrid(t,e);var i=this._grid[e][t];return i.x<0||i.y<0?!1:(void 0!==a&&(i.sx=a),void 0!==r&&(i.sy=r),this._batchProcess=o,o||this.__resizeGrid(0,0),!0)},clear:function(){var t=this.showGrid(),e=this.gridSpacing(),a=this.gridAlternate();this.$elem.remove(),this.__init(),this.showGrid(t),this.gridSpacing(e),this.gridAlternate(a),this._grid=[]},startBatch:function(){this._batchProcess=!0},finishBatch:function(){this._batchProcess=!1,this.__resizeGrid(0,0)},showGrid:function(t){return"undefined"!=typeof t&&this.$elem.toggleClass("wcLayoutGrid",t),this.$elem.hasClass("wcLayoutGrid")},gridSpacing:function(t){return"undefined"!=typeof t&&this.$elem.css("border-spacing",t+"px"),parseInt(this.$elem.css("border-spacing"))},gridAlternate:function(t){return"undefined"!=typeof t&&this.$elem.toggleClass("wcLayoutGridAlternate",t),this.$elem.hasClass("wcLayoutGridAlternate")},__init:function(){this.$elem=$('<table class="wcLayout wcWide wcTall"></table>'),this.$elem.append($("<tbody></tbody>")),this._grid=[],this.__container(this.$container)},__update:function(){},__resizeGrid:function(t,e){for(var a=0;e>=a;++a){if(this._grid.length<=a){var r=[];r.$row=$("<tr>"),this._grid.push(r)}for(var o=0;t>=o;++o)this._grid[a].length<=o&&this._grid[a].push({$el:$("<td>"),x:0,y:0,sx:"",sy:""})}if(!this._batchProcess){var i=this.$elem.find("tbody");$(".wcDockerTransition").append(i);for(var n=$("<tbody>"),a=0;a<this._grid.length;++a)for(var s=null,o=0;o<this._grid[a].length;++o){var l=this._grid[a][o];l.$el&&(s||(s=this._grid[a].$row,n.append(s)),l.$el.css("width",l.sx),l.$el.css("height",l.sy),s.append(l.$el))}this.$elem.append(n),i.remove()}},__mergeGrid:function(t,e,a,r){for(var o=0;r>o;++o)for(var i=0;a>i;++i){var n=this._grid[e+o][t+i];if(!n.$el||0!==n.x||0!==n.y)return!1}var n=this._grid[e][t];a>1&&(n.$el.attr("colspan",""+a),n.x=a-1),r>1&&(n.$el.attr("rowspan",""+r), +n.y=r-1);for(var o=0;r>o;++o)for(var i=0;a>i;++i)if(0!==o||0!==i){var n=this._grid[e+o][t+i];n.$el.remove(),n.$el=null,n.x=-i,n.y=-o}return!0}});return r}),a("wcDocker/tabframe",["dcl/dcl","./types","./base"],function(t,e,a){var r=t(a,{declaredClass:"wcTabFrame",LEFT_TAB_BUFFER:15,constructor:function(t,a){this.$container=$(t),this._parent=a,this.$frame=null,this.$tabBar=null,this.$tabScroll=null,this.$center=null,this.$tabLeft=null,this.$tabRight=null,this.$close=null,this._tabOrientation=e.TAB.TOP,this._canScrollTabs=!1,this._tabScrollPos=0,this._curTab=-1,this._layoutList=[],this._moveable=!0,this._boundEvents=[],this.__init()},update:function(){var t=this.$center.scrollTop();this.__updateTabs(),this.$center.scrollTop(t)},destroy:function(){this.__destroy()},tabCount:function(){return this._layoutList.length},tabOrientation:function(t){return void 0!==t&&this._tabOrientation!==t&&this.docker()._canOrientTabs&&(this._tabOrientation=t,this.__updateTabs(),this.__updateTabs()),this._tabOrientation},addTab:function(t,e,a){var r=a||"wcLayoutTable",o=new(this.docker().__getClass(r))(".wcDockerTransition",this._parent);return o.name=t,o._scrollable={x:!0,y:!0},o._scroll={x:0,y:0},o._closeable=!1,o._overflowVisible=!1,"undefined"==typeof e||-1>=e?this._layoutList.push(o):this._layoutList.splice(e,0,o),-1===this._curTab&&this._layoutList.length&&(this._curTab=0),this.__updateTabs(),o},removeTab:function(t){if(t>-1&&t<this._layoutList.length){var a=this._layoutList[t].name;return this._layoutList[t].__destroy(),this._layoutList.splice(t,1),this._curTab>=t&&(this._curTab--,this._curTab<0&&(this._curTab=0)),this.__updateTabs(),this._parent.__trigger(e.EVENT.CUSTOM_TAB_CLOSED,{obj:this,name:a,index:t}),!0}return!1},tab:function(t,a){if("undefined"!=typeof t&&t>-1&&t<this._layoutList.length){this.$tabBar.find('> .wcTabScroller > .wcPanelTab[id="'+this._curTab+'"]').removeClass("wcPanelTabActive"),this.$center.children('.wcPanelTabContent[id="'+this._curTab+'"]').addClass("wcPanelTabContentHidden"),this._curTab=t,this.$tabBar.find('> .wcTabScroller > .wcPanelTab[id="'+t+'"]').addClass("wcPanelTabActive"),this.$center.children('.wcPanelTabContent[id="'+t+'"]').removeClass("wcPanelTabContentHidden"),this.__updateTabs(a);var r=this._layoutList[this._curTab].name;this._parent.__trigger(e.EVENT.CUSTOM_TAB_CHANGED,{obj:this,name:r,index:t})}return this._curTab},layout:function(t){return t>-1&&t<this._layoutList.length?this._layoutList[t]:!1},moveTab:function(t,e){if(t>=0&&t<this._layoutList.length&&e>=0&&e<this._layoutList.length){var a=this._layoutList.splice(t,1);return this._layoutList.splice(e,0,a[0]),this._curTab===t&&(this._curTab=e),this.__updateTabs(),this.$tabBar.find('> .wcTabScroller > .wcPanelTab[id="'+e+'"]')[0]}return!1},moveable:function(t){return"undefined"!=typeof t&&(this._moveable=t),this._moveable},closeable:function(t,e){if(t>-1&&t<this._layoutList.length){var a=this._layoutList[t];return"undefined"!=typeof e&&(a._closeable=e),a._closeable}return!1},scrollable:function(t,e,a){if(t>-1&&t<this._layoutList.length){var r=this._layoutList[t],o=!1;return"undefined"!=typeof e&&(r._scrollable.x=e,o=!0),"undefined"!=typeof a&&(r._scrollable.y=a,o=!0),o&&this.__onTabChange(),{x:r._scrollable.x,y:r._scrollable.y}}return!1},overflowVisible:function(t,e){if(t>-1&&t<this._layoutList.length){var a=this._layoutList[t];return"undefined"!=typeof overflow&&(a._overflowVisible=overflow,this.__onTabChange()),a._overflowVisible}return!1},fitContents:function(t,e,a){if(t>-1&&t<this._layoutList.length){var r=this._layoutList[t];r.hasOwnProperty("_fitContents")||(r._fitContents={x:!1,y:!1});var o=!1;return"undefined"!=typeof e&&(r._fitContents.x=e,o=!0),"undefined"!=typeof a&&(r._fitContents.y=a,o=!0),o&&this.__onTabChange(),{x:r._fitContents.x,y:r._fitContents.y}}return!1},icon:function(t,e){if(t>-1&&t<this._layoutList.length){var a=this._layoutList[t];a.$icon||(a.$icon=$("<div>")),a.$icon.removeClass(),a.$icon.addClass("wcTabIcon "+e)}},faicon:function(t,e){if(t>-1&&t<this._layoutList.length){var a=this._layoutList[t];a.$icon||(a.$icon=$("<div>")),a.$icon.removeClass(),a.$icon.addClass("fa fa-fw fa-"+e)}},__init:function(){this.$frame=$('<div class="wcCustomTab wcWide wcTall">'),this.$tabBar=$('<div class="wcFrameTitleBar wcCustomTabTitle wcWide">'),this.$tabScroll=$('<div class="wcTabScroller">'),this.$center=$('<div class="wcFrameCenter wcPanelBackground">'),this.$tabLeft=$('<div class="wcFrameButton wcFrameButtonLeft " title="Scroll tabs to the left."><span class="fa fa-arrow-left"></span></div>'),this.$tabRight=$('<div class="wcFrameButton wcFrameButtonRight" title="Scroll tabs to the right."><span class="fa fa-arrow-right"></span></div>'),this.$close=$('<div class="wcFrameButton" title="Close the currently active panel tab"><span class="fa fa-close"></span>X</div>'),this.$buttonBar=$('<div class="wcFrameButtonBar">'),this.$tabBar.append(this.$tabScroll),this.$tabBar.append(this.$buttonBar),this.$buttonBar.append(this.$close),this.$frame.append(this.$center),this.$frame.append(this.$tabBar),this.__container(this.$container),this._boundEvents.push({event:e.EVENT.UPDATED,handler:this.update.bind(this)}),this._boundEvents.push({event:e.EVENT.CLOSED,handler:this.destroy.bind(this)});for(var t=0;t<this._boundEvents.length;++t)this._parent.on(this._boundEvents[t].event,this._boundEvents[t].handler);var a=this.docker();a&&a._tabList.push(this)},__updateTabs:function(t){this.$tabScroll.empty();var a=function(t){switch(this._tabOrientation){case e.TAB.BOTTOM:return t.offset().left;case e.TAB.TOP:return t.offset().left;case e.TAB.LEFT:return t.offset().top;case e.TAB.RIGHT:return t.offset().top}}.bind(this),r=[],o=0,i=a(this.$tabScroll);this.$center.children(".wcPanelTabContent").each(function(){$(this).addClass("wcPanelTabContentHidden wcPanelTabUnused")});for(var n=0;n<this._layoutList.length;++n){var s=$('<div id="'+n+'" class="wcPanelTab"><div>'+this._layoutList[n].name+"</div></div>");this._moveable&&s.addClass("wcCustomTabMoveable"),this.$tabScroll.append(s),this._layoutList[n].$icon&&s.find("div").prepend(this._layoutList[n].$icon);var l=this.$center.children('.wcPanelTabContent[id="'+n+'"]');l.length||(l=$('<div class="wcPanelTabContent wcPanelTabContentHidden" id="'+n+'">'),this.$center.append(l)),this._layoutList[n].__container(l),this._layoutList[n]._parent=this;var c=this._curTab===n;l.removeClass("wcPanelTabUnused"),c&&(s.addClass("wcPanelTabActive"),l.removeClass("wcPanelTabContentHidden")),o=a(s)-i,r.push(o),o+=s.outerWidth()}var h=0,u=this.$tabBar.height();switch(this._tabOrientation){case e.TAB.TOP:this.$tabBar.addClass("wcTabTop").removeClass("wcTabLeft wcTabRight wcTabBottom"),this.$center.css("top",u).css("left",0).css("right",0).css("bottom",0),h=this.$center.width();break;case e.TAB.BOTTOM:this.$tabBar.addClass("wcTabBottom").removeClass("wcTabTop wcTabLeft wcTabRight"),this.$center.css("top",0).css("left",0).css("right",0).css("bottom",u),h=this.$center.width();break;case e.TAB.LEFT:this.$tabBar.addClass("wcTabLeft").removeClass("wcTabTop wcTabRight wcTabBottom"),this.$center.css("top",0).css("left",u).css("right",0).css("bottom",0),h=this.$center.height();break;case e.TAB.RIGHT:this.$tabBar.addClass("wcTabRight").removeClass("wcTabTop wcTabLeft wcTabBottom"),this.$center.css("top",0).css("left",0).css("right",u).css("bottom",0),h=this.$center.height()}this.$center.children(".wcPanelTabUnused").each(function(){$(this).remove()});var d=this.__onTabChange();if(t)for(var n=0;n<r.length;++n)if(n===this._curTab){var f=r[n],p=o;n+1<r.length&&(p=r[n+1]);var b=-parseInt(this.$tabScroll.css("left")),_=h-d;b>f?(this._tabScrollPos=f-this.LEFT_TAB_BUFFER,this._tabScrollPos<0&&(this._tabScrollPos=0)):p-b>_&&(this._tabScrollPos=p-_+this.LEFT_TAB_BUFFER);break}if(this._canScrollTabs=!1,o>h-d){this._canScrollTabs=!0,this.$buttonBar.append(this.$tabRight),this.$buttonBar.append(this.$tabLeft),d+=this.$tabRight.outerWidth(),d+=this.$tabLeft.outerWidth();var v=o-(h-d)/2;if(this._tabScrollPos>v)for(var m=this.$tabScroll.children(),n=0;n<m.length;++n){var s=$(m[n]);if(o=a(s)-i,o+s.outerWidth()>v){this._tabScrollPos=o-this.LEFT_TAB_BUFFER,this._tabScrollPos<0&&(this._tabScrollPos=0);break}}}else this._tabScrollPos=0,this.$tabLeft.remove(),this.$tabRight.remove();this.$tabScroll.stop().animate({left:-this._tabScrollPos+"px"},"fast")},__onTabChange:function(){var t=0,a=this.layout(this._curTab);if(a){this.$center.toggleClass("wcScrollableX",a._scrollable.x),this.$center.toggleClass("wcScrollableY",a._scrollable.y),this.$center.toggleClass("wcOverflowVisible",a._overflowVisible),this.$tabLeft.remove(),this.$tabRight.remove(),a._closeable?(this.$close.show(),t+=this.$close.outerWidth()):this.$close.hide(),this._canScrollTabs&&(this.$tabBar.append(this.$tabRight),this.$tabBar.append(this.$tabLeft),t+=this.$tabRight.outerWidth()+this.$tabLeft.outerWidth());var r=this.fitContents(this._curTab);if(r.x){var o=a.scene().outerWidth();(this._tabOrientation===e.TAB.LEFT||this._tabOrientation===e.TAB.RIGHT)&&(o+=this.$tabScroll.height()),this.$container.css("width",o)}else this.$container.css("width","");if(r.y){var i=a.scene().outerHeight();(this._tabOrientation===e.TAB.TOP||this._tabOrientation===e.TAB.BOTTOM)&&(i+=this.$tabScroll.height()),this.$container.css("height",i)}else this.$container.css("height","");switch(this._tabOrientation){case e.TAB.RIGHT:case e.TAB.LEFT:this.$tabBar.css("width",this.$center.height()||"100%");break;case e.TAB.TOP:case e.TAB.BOTTOM:this.$tabBar.css("width",this.$center.width()||"100%")}this.$center.scrollLeft(a._scroll.x),this.$center.scrollTop(a._scroll.y)}return this.$buttonBar.css("min-width",t).css("width",t),t},__scrolled:function(){var t=this.layout(this._curTab);t._scroll.x=this.$center.scrollLeft(),t._scroll.y=this.$center.scrollTop()},__container:function(t){return"undefined"==typeof t?this.$container:(this.$container=t,this.$container?this.$container.append(this.$frame):this.$frame.remove(),this.$container)},__destroy:function(){var t=this.docker();if(t){var e=t._tabList.indexOf(this);e>-1&&t._tabList.splice(e,1)}for(;this._boundEvents.length;)this._parent.off(this._boundEvents[0].event,this._boundEvents[0].handler),this._boundEvents.shift();this._curTab=-1;for(var a=0;a<this._layoutList.length;++a)this._layoutList[a].__destroy();for(;this._layoutList.length;)this._layoutList.pop();this.__container(null),this._parent=null}});return r}),function(){function t(t,e){if(t!==e){var a=null===t,r=t===y,o=t===t,i=null===e,n=e===y,s=e===e;if(t>e&&!i||!o||a&&!n&&s||r&&s)return 1;if(e>t&&!a||!s||i&&!r&&o||n&&o)return-1}return 0}function e(t,e,a){for(var r=t.length,o=a?r:-1;a?o--:++o<r;)if(e(t[o],o,t))return o;return-1}function r(t,e,a){if(e!==e)return p(t,a);for(var r=a-1,o=t.length;++r<o;)if(t[r]===e)return r;return-1}function o(t){return"function"==typeof t||!1}function i(t){return null==t?"":t+""}function n(t,e){for(var a=-1,r=t.length;++a<r&&e.indexOf(t.charAt(a))>-1;);return a}function s(t,e){for(var a=t.length;a--&&e.indexOf(t.charAt(a))>-1;);return a}function l(e,a){return t(e.criteria,a.criteria)||e.index-a.index}function c(e,a,r){for(var o=-1,i=e.criteria,n=a.criteria,s=i.length,l=r.length;++o<s;){var c=t(i[o],n[o]);if(c){if(o>=l)return c;var h=r[o];return c*("asc"===h||h===!0?1:-1)}}return e.index-a.index}function h(t){return Kt[t]}function u(t){return Wt[t]}function d(t,e,a){return e?t=Ut[t]:a&&(t=qt[t]),"\\"+t}function f(t){return"\\"+qt[t]}function p(t,e,a){for(var r=t.length,o=e+(a?0:-1);a?o--:++o<r;){var i=t[o];if(i!==i)return o}return-1}function b(t){return!!t&&"object"==typeof t}function _(t){return 160>=t&&t>=9&&13>=t||32==t||160==t||5760==t||6158==t||t>=8192&&(8202>=t||8232==t||8233==t||8239==t||8287==t||12288==t||65279==t)}function v(t,e){for(var a=-1,r=t.length,o=-1,i=[];++a<r;)t[a]===e&&(t[a]=N,i[++o]=a);return i}function m(t,e){for(var a,r=-1,o=t.length,i=-1,n=[];++r<o;){var s=t[r],l=e?e(s,r,t):s;r&&a===l||(a=l,n[++i]=s)}return n}function w(t){for(var e=-1,a=t.length;++e<a&&_(t.charCodeAt(e)););return e}function g(t){for(var e=t.length;e--&&_(t.charCodeAt(e)););return e}function T(t){return Gt[t]}function x(a){function _(t){if(b(t)&&!ks(t)&&!(t instanceof et)){if(t instanceof Q)return t;if(rn.call(t,"__chain__")&&rn.call(t,"__wrapped__"))return pr(t)}return new Q(t)}function Z(){}function Q(t,e,a){this.__wrapped__=t,this.__actions__=a||[],this.__chain__=!!e}function et(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=On,this.__views__=[]}function Kt(){var t=new et(this.__wrapped__);return t.__actions__=oe(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=oe(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=oe(this.__views__),t}function Wt(){if(this.__filtered__){var t=new et(this);t.__dir__=-1,t.__filtered__=!0}else t=this.clone(),t.__dir__*=-1;return t}function Gt(){var t=this.__wrapped__.value(),e=this.__dir__,a=ks(t),r=0>e,o=a?t.length:0,i=Ua(0,o,this.__views__),n=i.start,s=i.end,l=s-n,c=r?s:n-1,h=this.__iteratees__,u=h.length,d=0,f=Sn(l,this.__takeCount__);if(!a||I>o||o==l&&f==l)return oa(t,this.__actions__);var p=[];t:for(;l--&&f>d;){c+=e;for(var b=-1,_=t[c];++b<u;){var v=h[b],m=v.iteratee,w=v.type,g=m(_);if(w==M)_=g;else if(!g){if(w==V)continue t;break t}}p[d++]=_}return p}function jt(){this.__data__={}}function Ut(t){return this.has(t)&&delete this.__data__[t]}function qt(t){return"__proto__"==t?y:this.__data__[t]}function Zt(t){return"__proto__"!=t&&rn.call(this.__data__,t)}function Yt(t,e){return"__proto__"!=t&&(this.__data__[t]=e),this}function Xt(t){var e=t?t.length:0;for(this.data={hash:gn(null),set:new pn};e--;)this.push(t[e])}function Jt(t,e){var a=t.data,r="string"==typeof e||zo(e)?a.set.has(e):a.hash[e];return r?0:-1}function Qt(t){var e=this.data;"string"==typeof t||zo(t)?e.set.add(t):e.hash[t]=!0}function re(t,e){for(var a=-1,r=t.length,o=-1,i=e.length,n=Ni(r+i);++a<r;)n[a]=t[a];for(;++o<i;)n[a++]=e[o];return n}function oe(t,e){var a=-1,r=t.length;for(e||(e=Ni(r));++a<r;)e[a]=t[a];return e}function ie(t,e){for(var a=-1,r=t.length;++a<r&&e(t[a],a,t)!==!1;);return t}function ne(t,e){for(var a=t.length;a--&&e(t[a],a,t)!==!1;);return t}function se(t,e){for(var a=-1,r=t.length;++a<r;)if(!e(t[a],a,t))return!1;return!0}function le(t,e,a,r){for(var o=-1,i=t.length,n=r,s=n;++o<i;){var l=t[o],c=+e(l);a(c,n)&&(n=c,s=l)}return s}function ce(t,e){for(var a=-1,r=t.length,o=-1,i=[];++a<r;){var n=t[a];e(n,a,t)&&(i[++o]=n)}return i}function he(t,e){for(var a=-1,r=t.length,o=Ni(r);++a<r;)o[a]=e(t[a],a,t);return o}function ue(t,e){for(var a=-1,r=e.length,o=t.length;++a<r;)t[o+a]=e[a];return t}function de(t,e,a,r){var o=-1,i=t.length;for(r&&i&&(a=t[++o]);++o<i;)a=e(a,t[o],o,t);return a}function fe(t,e,a,r){var o=t.length;for(r&&o&&(a=t[--o]);o--;)a=e(a,t[o],o,t);return a}function pe(t,e){for(var a=-1,r=t.length;++a<r;)if(e(t[a],a,t))return!0;return!1}function be(t,e){for(var a=t.length,r=0;a--;)r+=+e(t[a])||0;return r}function _e(t,e){return t===y?e:t}function ve(t,e,a,r){return t!==y&&rn.call(r,a)?t:e}function me(t,e,a){for(var r=-1,o=js(e),i=o.length;++r<i;){var n=o[r],s=t[n],l=a(s,e[n],n,t,e);(l===l?l===s:s!==s)&&(s!==y||n in t)||(t[n]=l)}return t}function we(t,e){return null==e?t:Te(e,js(e),t)}function ge(t,e){for(var a=-1,r=null==t,o=!r&&Ja(t),i=o?t.length:0,n=e.length,s=Ni(n);++a<n;){var l=e[a];o?s[a]=Qa(l,i)?t[l]:y:s[a]=r?y:t[l]}return s}function Te(t,e,a){a||(a={});for(var r=-1,o=e.length;++r<o;){var i=e[r];a[i]=t[i]}return a}function xe(t,e,a){var r=typeof t;return"function"==r?e===y?t:sa(t,e,a):null==t?Fi:"object"==r?Re(t):e===y?ki(t):Ne(t,e)}function ye(t,e,a,r,o,i,n){var s;if(a&&(s=o?a(t,r,o):a(t)),s!==y)return s;if(!zo(t))return t;var l=ks(t);if(l){if(s=qa(t),!e)return oe(t,s)}else{var c=nn.call(t),h=c==q;if(c!=X&&c!=K&&(!h||o))return Nt[c]?Ya(t,c,e):o?t:{};if(ee(t))return o?t:{};if(s=Za(h?{}:t),!e)return we(s,t)}i||(i=[]),n||(n=[]);for(var u=i.length;u--;)if(i[u]==t)return n[u];return i.push(t),n.push(s),(l?ie:Ee)(t,function(r,o){s[o]=ye(r,e,a,o,t,i,n)}),s}function Be(t,e,a){if("function"!=typeof t)throw new Xi(R);return bn(function(){t.apply(y,a)},e)}function Ce(t,e){var a=t?t.length:0,o=[];if(!a)return o;var i=-1,n=Wa(),s=n===r,l=s&&e.length>=I?_a(e):null,c=e.length;l&&(n=Jt,s=!1,e=l);t:for(;++i<a;){var h=t[i];if(s&&h===h){for(var u=c;u--;)if(e[u]===h)continue t;o.push(h)}else n(e,h,0)<0&&o.push(h)}return o}function Se(t,e){var a=!0;return Nn(t,function(t,r,o){return a=!!e(t,r,o)}),a}function $e(t,e,a,r){var o=r,i=o;return Nn(t,function(t,n,s){var l=+e(t,n,s);(a(l,o)||l===r&&l===i)&&(o=l,i=t)}),i}function Pe(t,e,a,r){var o=t.length;for(a=null==a?0:+a||0,0>a&&(a=-a>o?0:o+a),r=r===y||r>o?o:+r||0,0>r&&(r+=o),o=a>r?0:r>>>0,a>>>=0;o>a;)t[a++]=e;return t}function Fe(t,e){var a=[];return Nn(t,function(t,r,o){e(t,r,o)&&a.push(t)}),a}function Le(t,e,a,r){var o;return a(t,function(t,a,i){return e(t,a,i)?(o=r?a:t,!1):void 0}),o}function Oe(t,e,a,r){r||(r=[]);for(var o=-1,i=t.length;++o<i;){var n=t[o];b(n)&&Ja(n)&&(a||ks(n)||$o(n))?e?Oe(n,e,a,r):ue(r,n):a||(r[r.length]=n)}return r}function Ae(t,e){return Wn(t,e,ai)}function Ee(t,e){return Wn(t,e,js)}function De(t,e){return Gn(t,e,js)}function ke(t,e){for(var a=-1,r=e.length,o=-1,i=[];++a<r;){var n=e[a];ko(t[n])&&(i[++o]=n)}return i}function ze(t,e,a){if(null!=t){t=dr(t),a!==y&&a in t&&(e=[a]);for(var r=0,o=e.length;null!=t&&o>r;)t=dr(t)[e[r++]];return r&&r==o?t:y}}function He(t,e,a,r,o,i){return t===e?!0:null==t||null==e||!zo(t)&&!b(e)?t!==t&&e!==e:Ie(t,e,He,a,r,o,i)}function Ie(t,e,a,r,o,i,n){var s=ks(t),l=ks(e),c=W,h=W;s||(c=nn.call(t),c==K?c=X:c!=X&&(s=Go(t))),l||(h=nn.call(e),h==K?h=X:h!=X&&(l=Go(e)));var u=c==X&&!ee(t),d=h==X&&!ee(e),f=c==h;if(f&&!s&&!u)return Ma(t,e,c);if(!o){var p=u&&rn.call(t,"__wrapped__"),b=d&&rn.call(e,"__wrapped__");if(p||b)return a(p?t.value():t,b?e.value():e,r,o,i,n)}if(!f)return!1;i||(i=[]),n||(n=[]);for(var _=i.length;_--;)if(i[_]==t)return n[_]==e;i.push(t),n.push(e);var v=(s?Va:Ra)(t,e,a,r,o,i,n);return i.pop(),n.pop(),v}function Ve(t,e,a){var r=e.length,o=r,i=!a;if(null==t)return!o;for(t=dr(t);r--;){var n=e[r];if(i&&n[2]?n[1]!==t[n[0]]:!(n[0]in t))return!1}for(;++r<o;){n=e[r];var s=n[0],l=t[s],c=n[1];if(i&&n[2]){if(l===y&&!(s in t))return!1}else{var h=a?a(l,c,s):y;if(!(h===y?He(c,l,a,!0):h))return!1}}return!0}function Me(t,e){var a=-1,r=Ja(t)?Ni(t.length):[];return Nn(t,function(t,o,i){r[++a]=e(t,o,i)}),r}function Re(t){var e=Ga(t);if(1==e.length&&e[0][2]){var a=e[0][0],r=e[0][1];return function(t){return null==t?!1:(t=dr(t),t[a]===r&&(r!==y||a in t))}}return function(t){return Ve(t,e)}}function Ne(t,e){var a=ks(t),r=er(t)&&or(e),o=t+"";return t=fr(t),function(i){if(null==i)return!1;var n=o;if(i=dr(i),!(!a&&r||n in i)){if(i=1==t.length?i:ze(i,Ye(t,0,-1)),null==i)return!1;n=$r(t),i=dr(i)}return i[n]===e?e!==y||n in i:He(e,i[n],y,!0)}}function Ke(t,e,a,r,o){if(!zo(t))return t;var i=Ja(e)&&(ks(e)||Go(e)),n=i?y:js(e);return ie(n||e,function(s,l){if(n&&(l=s,s=e[l]),b(s))r||(r=[]),o||(o=[]),We(t,e,l,Ke,a,r,o);else{var c=t[l],h=a?a(c,s,l,t,e):y,u=h===y;u&&(h=s),h===y&&(!i||l in t)||!u&&(h===h?h===c:c!==c)||(t[l]=h)}}),t}function We(t,e,a,r,o,i,n){for(var s=i.length,l=e[a];s--;)if(i[s]==l)return void(t[a]=n[s]);var c=t[a],h=o?o(c,l,a,t,e):y,u=h===y;u&&(h=l,Ja(l)&&(ks(l)||Go(l))?h=ks(c)?c:Ja(c)?oe(c):[]:No(l)||$o(l)?h=$o(c)?Yo(c):No(c)?c:{}:u=!1),i.push(l),n.push(h),u?t[a]=r(h,l,o,i,n):(h===h?h!==c:c===c)&&(t[a]=h)}function Ge(t){return function(e){return null==e?y:dr(e)[t]}}function je(t){var e=t+"";return t=fr(t),function(a){return ze(a,t,e)}}function Ue(t,e){for(var a=t?e.length:0;a--;){var r=e[a];if(r!=o&&Qa(r)){var o=r;_n.call(t,r,1)}}return t}function qe(t,e){return t+Tn(Fn()*(e-t+1))}function Ze(t,e,a,r,o){return o(t,function(t,o,i){a=r?(r=!1,t):e(a,t,o,i)}),a}function Ye(t,e,a){var r=-1,o=t.length;e=null==e?0:+e||0,0>e&&(e=-e>o?0:o+e),a=a===y||a>o?o:+a||0,0>a&&(a+=o),o=e>a?0:a-e>>>0,e>>>=0;for(var i=Ni(o);++r<o;)i[r]=t[r+e];return i}function Xe(t,e){var a;return Nn(t,function(t,r,o){return a=e(t,r,o),!a}),!!a}function Je(t,e){var a=t.length;for(t.sort(e);a--;)t[a]=t[a].value;return t}function Qe(t,e,a){var r=Na(),o=-1;e=he(e,function(t){return r(t)});var i=Me(t,function(t){var a=he(e,function(e){return e(t)});return{criteria:a,index:++o,value:t}});return Je(i,function(t,e){return c(t,e,a)})}function ta(t,e){var a=0;return Nn(t,function(t,r,o){a+=+e(t,r,o)||0}),a}function ea(t,e){var a=-1,o=Wa(),i=t.length,n=o===r,s=n&&i>=I,l=s?_a():null,c=[];l?(o=Jt,n=!1):(s=!1,l=e?[]:c);t:for(;++a<i;){var h=t[a],u=e?e(h,a,t):h;if(n&&h===h){for(var d=l.length;d--;)if(l[d]===u)continue t;e&&l.push(u),c.push(h)}else o(l,u,0)<0&&((e||s)&&l.push(u),c.push(h))}return c}function aa(t,e){for(var a=-1,r=e.length,o=Ni(r);++a<r;)o[a]=t[e[a]];return o}function ra(t,e,a,r){for(var o=t.length,i=r?o:-1;(r?i--:++i<o)&&e(t[i],i,t););return a?Ye(t,r?0:i,r?i+1:o):Ye(t,r?i+1:0,r?o:i)}function oa(t,e){var a=t;a instanceof et&&(a=a.value());for(var r=-1,o=e.length;++r<o;){var i=e[r];a=i.func.apply(i.thisArg,ue([a],i.args))}return a}function ia(t,e,a){var r=0,o=t?t.length:r;if("number"==typeof e&&e===e&&Dn>=o){for(;o>r;){var i=r+o>>>1,n=t[i];(a?e>=n:e>n)&&null!==n?r=i+1:o=i}return o}return na(t,e,Fi,a)}function na(t,e,a,r){e=a(e);for(var o=0,i=t?t.length:0,n=e!==e,s=null===e,l=e===y;i>o;){var c=Tn((o+i)/2),h=a(t[c]),u=h!==y,d=h===h;if(n)var f=d||r;else f=s?d&&u&&(r||null!=h):l?d&&(r||u):null==h?!1:r?e>=h:e>h;f?o=c+1:i=c}return Sn(i,En)}function sa(t,e,a){if("function"!=typeof t)return Fi;if(e===y)return t;switch(a){case 1:return function(a){return t.call(e,a)};case 3:return function(a,r,o){return t.call(e,a,r,o)};case 4:return function(a,r,o,i){return t.call(e,a,r,o,i)};case 5:return function(a,r,o,i,n){return t.call(e,a,r,o,i,n)}}return function(){return t.apply(e,arguments)}}function la(t){var e=new cn(t.byteLength),a=new vn(e);return a.set(new vn(t)),e}function ca(t,e,a){for(var r=a.length,o=-1,i=Cn(t.length-r,0),n=-1,s=e.length,l=Ni(s+i);++n<s;)l[n]=e[n];for(;++o<r;)l[a[o]]=t[o];for(;i--;)l[n++]=t[o++];return l}function ha(t,e,a){for(var r=-1,o=a.length,i=-1,n=Cn(t.length-o,0),s=-1,l=e.length,c=Ni(n+l);++i<n;)c[i]=t[i];for(var h=i;++s<l;)c[h+s]=e[s];for(;++r<o;)c[h+a[r]]=t[i++];return c}function ua(t,e){return function(a,r,o){var i=e?e():{};if(r=Na(r,o,3),ks(a))for(var n=-1,s=a.length;++n<s;){var l=a[n];t(i,l,r(l,n,a),a)}else Nn(a,function(e,a,o){t(i,e,r(e,a,o),o)});return i}}function da(t){return wo(function(e,a){var r=-1,o=null==e?0:a.length,i=o>2?a[o-2]:y,n=o>2?a[2]:y,s=o>1?a[o-1]:y;for("function"==typeof i?(i=sa(i,s,5),o-=2):(i="function"==typeof s?s:y,o-=i?1:0),n&&tr(a[0],a[1],n)&&(i=3>o?y:i,o=1);++r<o;){var l=a[r];l&&t(e,l,i)}return e})}function fa(t,e){return function(a,r){var o=a?qn(a):0;if(!rr(o))return t(a,r);for(var i=e?o:-1,n=dr(a);(e?i--:++i<o)&&r(n[i],i,n)!==!1;);return a}}function pa(t){return function(e,a,r){for(var o=dr(e),i=r(e),n=i.length,s=t?n:-1;t?s--:++s<n;){var l=i[s];if(a(o[l],l,o)===!1)break}return e}}function ba(t,e){function a(){var o=this&&this!==te&&this instanceof a?r:t;return o.apply(e,arguments)}var r=ma(t);return a}function _a(t){return gn&&pn?new Xt(t):null}function va(t){return function(e){for(var a=-1,r=Si(di(e)),o=r.length,i="";++a<o;)i=t(i,r[a],a);return i}}function ma(t){return function(){var e=arguments;switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3]);case 5:return new t(e[0],e[1],e[2],e[3],e[4]);case 6:return new t(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return new t(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}var a=Rn(t.prototype),r=t.apply(a,e);return zo(r)?r:a}}function wa(t){function e(a,r,o){o&&tr(a,r,o)&&(r=y);var i=Ia(a,t,y,y,y,y,y,r);return i.placeholder=e.placeholder,i}return e}function ga(t,e){return wo(function(a){var r=a[0];return null==r?r:(a.push(e),t.apply(y,a))})}function Ta(t,e){return function(a,r,o){if(o&&tr(a,r,o)&&(r=y),r=Na(r,o,3),1==r.length){a=ks(a)?a:ur(a);var i=le(a,r,t,e);if(!a.length||i!==e)return i}return $e(a,r,t,e)}}function xa(t,a){return function(r,o,i){if(o=Na(o,i,3),ks(r)){var n=e(r,o,a);return n>-1?r[n]:y}return Le(r,o,t)}}function ya(t){return function(a,r,o){return a&&a.length?(r=Na(r,o,3),e(a,r,t)):-1}}function Ba(t){return function(e,a,r){return a=Na(a,r,3),Le(e,a,t,!0)}}function Ca(t){return function(){for(var e,a=arguments.length,r=t?a:-1,o=0,i=Ni(a);t?r--:++r<a;){var n=i[o++]=arguments[r];if("function"!=typeof n)throw new Xi(R);!e&&Q.prototype.thru&&"wrapper"==Ka(n)&&(e=new Q([],!0))}for(r=e?-1:a;++r<a;){n=i[r];var s=Ka(n),l="wrapper"==s?Un(n):y;e=l&&ar(l[0])&&l[1]==(A|P|L|E)&&!l[4].length&&1==l[9]?e[Ka(l[0])].apply(e,l[3]):1==n.length&&ar(n)?e[s]():e.thru(n)}return function(){var t=arguments,r=t[0];if(e&&1==t.length&&ks(r)&&r.length>=I)return e.plant(r).value();for(var o=0,n=a?i[o].apply(this,t):r;++o<a;)n=i[o].call(this,n);return n}}}function Sa(t,e){return function(a,r,o){return"function"==typeof r&&o===y&&ks(a)?t(a,r):e(a,sa(r,o,3))}}function $a(t){return function(e,a,r){return("function"!=typeof a||r!==y)&&(a=sa(a,r,3)),t(e,a,ai)}}function Pa(t){return function(e,a,r){return("function"!=typeof a||r!==y)&&(a=sa(a,r,3)),t(e,a)}}function Fa(t){return function(e,a,r){var o={};return a=Na(a,r,3),Ee(e,function(e,r,i){var n=a(e,r,i);r=t?n:r,e=t?e:n,o[r]=e}),o}}function La(t){return function(e,a,r){return e=i(e),(t?e:"")+Da(e,a,r)+(t?"":e)}}function Oa(t){var e=wo(function(a,r){var o=v(r,e.placeholder);return Ia(a,t,y,r,o)});return e}function Aa(t,e){return function(a,r,o,i){var n=arguments.length<3;return"function"==typeof r&&i===y&&ks(a)?t(a,r,o,n):Ze(a,Na(r,i,4),o,n,e)}}function Ea(t,e,a,r,o,i,n,s,l,c){function h(){for(var w=arguments.length,g=w,T=Ni(w);g--;)T[g]=arguments[g];if(r&&(T=ca(T,r,o)),i&&(T=ha(T,i,n)),p||_){var x=h.placeholder,B=v(T,x);if(w-=B.length,c>w){var $=s?oe(s):y,P=Cn(c-w,0),F=p?B:y,A=p?y:B,E=p?T:y,D=p?y:T;e|=p?L:O,e&=~(p?O:L),b||(e&=~(C|S));var k=[t,e,a,E,F,D,A,$,l,P],z=Ea.apply(y,k);return ar(t)&&Zn(z,k),z.placeholder=x,z}}var H=d?a:this,I=f?H[t]:t;return s&&(T=cr(T,s)),u&&l<T.length&&(T.length=l),this&&this!==te&&this instanceof h&&(I=m||ma(t)),I.apply(H,T)}var u=e&A,d=e&C,f=e&S,p=e&P,b=e&$,_=e&F,m=f?y:ma(t);return h}function Da(t,e,a){var r=t.length;if(e=+e,r>=e||!yn(e))return"";var o=e-r;return a=null==a?" ":a+"",mi(a,wn(o/a.length)).slice(0,o)}function ka(t,e,a,r){function o(){for(var e=-1,s=arguments.length,l=-1,c=r.length,h=Ni(c+s);++l<c;)h[l]=r[l];for(;s--;)h[l++]=arguments[++e];var u=this&&this!==te&&this instanceof o?n:t;return u.apply(i?a:this,h)}var i=e&C,n=ma(t);return o}function za(t){var e=ji[t];return function(t,a){return a=a===y?0:+a||0,a?(a=dn(10,a),e(t*a)/a):e(t)}}function Ha(t){return function(e,a,r,o){var i=Na(r);return null==r&&i===xe?ia(e,a,t):na(e,a,i(r,o,1),t)}}function Ia(t,e,a,r,o,i,n,s){var l=e&S;if(!l&&"function"!=typeof t)throw new Xi(R);var c=r?r.length:0;if(c||(e&=~(L|O),r=o=y),c-=o?o.length:0,e&O){var h=r,u=o;r=o=y}var d=l?y:Un(t),f=[t,e,a,r,o,h,u,i,n,s];if(d&&(ir(f,d),e=f[1],s=f[9]),f[9]=null==s?l?0:t.length:Cn(s-c,0)||0,e==C)var p=ba(f[0],f[2]);else p=e!=L&&e!=(C|L)||f[4].length?Ea.apply(y,f):ka.apply(y,f);var b=d?jn:Zn;return b(p,f)}function Va(t,e,a,r,o,i,n){var s=-1,l=t.length,c=e.length;if(l!=c&&!(o&&c>l))return!1;for(;++s<l;){var h=t[s],u=e[s],d=r?r(o?u:h,o?h:u,s):y;if(d!==y){if(d)continue;return!1}if(o){if(!pe(e,function(t){return h===t||a(h,t,r,o,i,n)}))return!1}else if(h!==u&&!a(h,u,r,o,i,n))return!1}return!0}function Ma(t,e,a){switch(a){case G:case j:return+t==+e;case U:return t.name==e.name&&t.message==e.message;case Y:return t!=+t?e!=+e:t==+e;case J:case tt:return t==e+""}return!1}function Ra(t,e,a,r,o,i,n){var s=js(t),l=s.length,c=js(e),h=c.length;if(l!=h&&!o)return!1;for(var u=l;u--;){var d=s[u];if(!(o?d in e:rn.call(e,d)))return!1}for(var f=o;++u<l;){d=s[u];var p=t[d],b=e[d],_=r?r(o?b:p,o?p:b,d):y;if(!(_===y?a(p,b,r,o,i,n):_))return!1;f||(f="constructor"==d)}if(!f){var v=t.constructor,m=e.constructor;if(v!=m&&"constructor"in t&&"constructor"in e&&!("function"==typeof v&&v instanceof v&&"function"==typeof m&&m instanceof m))return!1}return!0}function Na(t,e,a){var r=_.callback||$i;return r=r===$i?xe:r,a?r(t,e,a):r}function Ka(t){for(var e=t.name+"",a=Hn[e],r=a?a.length:0;r--;){var o=a[r],i=o.func;if(null==i||i==t)return o.name}return e}function Wa(t,e,a){var o=_.indexOf||Cr;return o=o===Cr?r:o,t?o(t,e,a):o}function Ga(t){for(var e=ri(t),a=e.length;a--;)e[a][2]=or(e[a][1]);return e}function ja(t,e){var a=null==t?y:t[e];return Vo(a)?a:y}function Ua(t,e,a){for(var r=-1,o=a.length;++r<o;){var i=a[r],n=i.size;switch(i.type){case"drop":t+=n;break;case"dropRight":e-=n;break;case"take":e=Sn(e,t+n);break;case"takeRight":t=Cn(t,e-n)}}return{start:t,end:e}}function qa(t){var e=t.length,a=new t.constructor(e);return e&&"string"==typeof t[0]&&rn.call(t,"index")&&(a.index=t.index,a.input=t.input),a}function Za(t){var e=t.constructor;return"function"==typeof e&&e instanceof e||(e=qi),new e}function Ya(t,e,a){var r=t.constructor;switch(e){case at:return la(t);case G:case j:return new r(+t);case rt:case ot:case it:case nt:case st:case lt:case ct:case ht:case ut:r instanceof r&&(r=In[e]);var o=t.buffer;return new r(a?la(o):o,t.byteOffset,t.length);case Y:case tt:return new r(t);case J:var i=new r(t.source,Lt.exec(t));i.lastIndex=t.lastIndex}return i}function Xa(t,e,a){null==t||er(e,t)||(e=fr(e),t=1==e.length?t:ze(t,Ye(e,0,-1)),e=$r(e));var r=null==t?t:t[e];return null==r?y:r.apply(t,a)}function Ja(t){return null!=t&&rr(qn(t))}function Qa(t,e){return t="number"==typeof t||Et.test(t)?+t:-1,e=null==e?kn:e,t>-1&&t%1==0&&e>t}function tr(t,e,a){if(!zo(a))return!1;var r=typeof e;if("number"==r?Ja(a)&&Qa(e,a.length):"string"==r&&e in a){var o=a[e];return t===t?t===o:o!==o}return!1}function er(t,e){var a=typeof t;if("string"==a&&yt.test(t)||"number"==a)return!0;if(ks(t))return!1;var r=!xt.test(t);return r||null!=e&&t in dr(e)}function ar(t){var e=Ka(t),a=_[e];if("function"!=typeof a||!(e in et.prototype))return!1;if(t===a)return!0;var r=Un(a);return!!r&&t===r[0]}function rr(t){return"number"==typeof t&&t>-1&&t%1==0&&kn>=t}function or(t){return t===t&&!zo(t)}function ir(t,e){var a=t[1],r=e[1],o=a|r,i=A>o,n=r==A&&a==P||r==A&&a==E&&t[7].length<=e[8]||r==(A|E)&&a==P;if(!i&&!n)return t;r&C&&(t[2]=e[2],o|=a&C?0:$);var s=e[3];if(s){var l=t[3];t[3]=l?ca(l,s,e[4]):oe(s),t[4]=l?v(t[3],N):oe(e[4])}return s=e[5],s&&(l=t[5],t[5]=l?ha(l,s,e[6]):oe(s),t[6]=l?v(t[5],N):oe(e[6])),s=e[7],s&&(t[7]=oe(s)),r&A&&(t[8]=null==t[8]?e[8]:Sn(t[8],e[8])),null==t[9]&&(t[9]=e[9]),t[0]=e[0],t[1]=o,t}function nr(t,e){return t===y?e:zs(t,e,nr)}function sr(t,e){t=dr(t);for(var a=-1,r=e.length,o={};++a<r;){var i=e[a];i in t&&(o[i]=t[i])}return o}function lr(t,e){var a={};return Ae(t,function(t,r,o){e(t,r,o)&&(a[r]=t)}),a}function cr(t,e){for(var a=t.length,r=Sn(e.length,a),o=oe(t);r--;){var i=e[r];t[r]=Qa(i,a)?o[i]:y}return t}function hr(t){for(var e=ai(t),a=e.length,r=a&&t.length,o=!!r&&rr(r)&&(ks(t)||$o(t)||Wo(t)),i=-1,n=[];++i<a;){var s=e[i];(o&&Qa(s,r)||rn.call(t,s))&&n.push(s)}return n}function ur(t){return null==t?[]:Ja(t)?_.support.unindexedChars&&Wo(t)?t.split(""):zo(t)?t:qi(t):si(t)}function dr(t){if(_.support.unindexedChars&&Wo(t)){for(var e=-1,a=t.length,r=qi(t);++e<a;)r[e]=t.charAt(e);return r}return zo(t)?t:qi(t)}function fr(t){if(ks(t))return t;var e=[];return i(t).replace(Bt,function(t,a,r,o){e.push(r?o.replace(Pt,"$1"):a||t)}),e}function pr(t){return t instanceof et?t.clone():new Q(t.__wrapped__,t.__chain__,oe(t.__actions__))}function br(t,e,a){e=(a?tr(t,e,a):null==e)?1:Cn(Tn(e)||1,1);for(var r=0,o=t?t.length:0,i=-1,n=Ni(wn(o/e));o>r;)n[++i]=Ye(t,r,r+=e);return n}function _r(t){for(var e=-1,a=t?t.length:0,r=-1,o=[];++e<a;){var i=t[e];i&&(o[++r]=i)}return o}function vr(t,e,a){var r=t?t.length:0;return r?((a?tr(t,e,a):null==e)&&(e=1),Ye(t,0>e?0:e)):[]}function mr(t,e,a){var r=t?t.length:0;return r?((a?tr(t,e,a):null==e)&&(e=1), e=r-(+e||0),Ye(t,0,0>e?0:e)):[]}function wr(t,e,a){return t&&t.length?ra(t,Na(e,a,3),!0,!0):[]}function gr(t,e,a){return t&&t.length?ra(t,Na(e,a,3),!0):[]}function Tr(t,e,a,r){var o=t?t.length:0;return o?(a&&"number"!=typeof a&&tr(t,e,a)&&(a=0,r=o),Pe(t,e,a,r)):[]}function xr(t){return t?t[0]:y}function yr(t,e,a){var r=t?t.length:0;return a&&tr(t,e,a)&&(e=!1),r?Oe(t,e):[]}function Br(t){var e=t?t.length:0;return e?Oe(t,!0):[]}function Cr(t,e,a){var o=t?t.length:0;if(!o)return-1;if("number"==typeof a)a=0>a?Cn(o+a,0):a;else if(a){var i=ia(t,e);return o>i&&(e===e?e===t[i]:t[i]!==t[i])?i:-1}return r(t,e,a||0)}function Sr(t){return mr(t,1)}function $r(t){var e=t?t.length:0;return e?t[e-1]:y}function Pr(t,e,a){var r=t?t.length:0;if(!r)return-1;var o=r;if("number"==typeof a)o=(0>a?Cn(r+a,0):Sn(a||0,r-1))+1;else if(a){o=ia(t,e,!0)-1;var i=t[o];return(e===e?e===i:i!==i)?o:-1}if(e!==e)return p(t,o,!0);for(;o--;)if(t[o]===e)return o;return-1}function Fr(){var t=arguments,e=t[0];if(!e||!e.length)return e;for(var a=0,r=Wa(),o=t.length;++a<o;)for(var i=0,n=t[a];(i=r(e,n,i))>-1;)_n.call(e,i,1);return e}function Lr(t,e,a){var r=[];if(!t||!t.length)return r;var o=-1,i=[],n=t.length;for(e=Na(e,a,3);++o<n;){var s=t[o];e(s,o,t)&&(r.push(s),i.push(o))}return Ue(t,i),r}function Or(t){return vr(t,1)}function Ar(t,e,a){var r=t?t.length:0;return r?(a&&"number"!=typeof a&&tr(t,e,a)&&(e=0,a=r),Ye(t,e,a)):[]}function Er(t,e,a){var r=t?t.length:0;return r?((a?tr(t,e,a):null==e)&&(e=1),Ye(t,0,0>e?0:e)):[]}function Dr(t,e,a){var r=t?t.length:0;return r?((a?tr(t,e,a):null==e)&&(e=1),e=r-(+e||0),Ye(t,0>e?0:e)):[]}function kr(t,e,a){return t&&t.length?ra(t,Na(e,a,3),!1,!0):[]}function zr(t,e,a){return t&&t.length?ra(t,Na(e,a,3)):[]}function Hr(t,e,a,o){var i=t?t.length:0;if(!i)return[];null!=e&&"boolean"!=typeof e&&(o=a,a=tr(t,e,o)?y:e,e=!1);var n=Na();return(null!=a||n!==xe)&&(a=n(a,o,3)),e&&Wa()===r?m(t,a):ea(t,a)}function Ir(t){if(!t||!t.length)return[];var e=-1,a=0;t=ce(t,function(t){return Ja(t)?(a=Cn(t.length,a),!0):void 0});for(var r=Ni(a);++e<a;)r[e]=he(t,Ge(e));return r}function Vr(t,e,a){var r=t?t.length:0;if(!r)return[];var o=Ir(t);return null==e?o:(e=sa(e,a,4),he(o,function(t){return de(t,e,y,!0)}))}function Mr(){for(var t=-1,e=arguments.length;++t<e;){var a=arguments[t];if(Ja(a))var r=r?ue(Ce(r,a),Ce(a,r)):a}return r?ea(r):[]}function Rr(t,e){var a=-1,r=t?t.length:0,o={};for(!r||e||ks(t[0])||(e=[]);++a<r;){var i=t[a];e?o[i]=e[a]:i&&(o[i[0]]=i[1])}return o}function Nr(t){var e=_(t);return e.__chain__=!0,e}function Kr(t,e,a){return e.call(a,t),t}function Wr(t,e,a){return e.call(a,t)}function Gr(){return Nr(this)}function jr(){return new Q(this.value(),this.__chain__)}function Ur(t){for(var e,a=this;a instanceof Z;){var r=pr(a);e?o.__wrapped__=r:e=r;var o=r;a=a.__wrapped__}return o.__wrapped__=t,e}function qr(){var t=this.__wrapped__,e=function(t){return t.reverse()};if(t instanceof et){var a=t;return this.__actions__.length&&(a=new et(this)),a=a.reverse(),a.__actions__.push({func:Wr,args:[e],thisArg:y}),new Q(a,this.__chain__)}return this.thru(e)}function Zr(){return this.value()+""}function Yr(){return oa(this.__wrapped__,this.__actions__)}function Xr(t,e,a){var r=ks(t)?se:Se;return a&&tr(t,e,a)&&(e=y),("function"!=typeof e||a!==y)&&(e=Na(e,a,3)),r(t,e)}function Jr(t,e,a){var r=ks(t)?ce:Fe;return e=Na(e,a,3),r(t,e)}function Qr(t,e){return hs(t,Re(e))}function to(t,e,a,r){var o=t?qn(t):0;return rr(o)||(t=si(t),o=t.length),a="number"!=typeof a||r&&tr(e,a,r)?0:0>a?Cn(o+a,0):a||0,"string"==typeof t||!ks(t)&&Wo(t)?o>=a&&t.indexOf(e,a)>-1:!!o&&Wa(t,e,a)>-1}function eo(t,e,a){var r=ks(t)?he:Me;return e=Na(e,a,3),r(t,e)}function ao(t,e){return eo(t,ki(e))}function ro(t,e,a){var r=ks(t)?ce:Fe;return e=Na(e,a,3),r(t,function(t,a,r){return!e(t,a,r)})}function oo(t,e,a){if(a?tr(t,e,a):null==e){t=ur(t);var r=t.length;return r>0?t[qe(0,r-1)]:y}var o=-1,i=Zo(t),r=i.length,n=r-1;for(e=Sn(0>e?0:+e||0,r);++o<e;){var s=qe(o,n),l=i[s];i[s]=i[o],i[o]=l}return i.length=e,i}function io(t){return oo(t,On)}function no(t){var e=t?qn(t):0;return rr(e)?e:js(t).length}function so(t,e,a){var r=ks(t)?pe:Xe;return a&&tr(t,e,a)&&(e=y),("function"!=typeof e||a!==y)&&(e=Na(e,a,3)),r(t,e)}function lo(t,e,a){if(null==t)return[];a&&tr(t,e,a)&&(e=y);var r=-1;e=Na(e,a,3);var o=Me(t,function(t,a,o){return{criteria:e(t,a,o),index:++r,value:t}});return Je(o,l)}function co(t,e,a,r){return null==t?[]:(r&&tr(e,a,r)&&(a=y),ks(e)||(e=null==e?[]:[e]),ks(a)||(a=null==a?[]:[a]),Qe(t,e,a))}function ho(t,e){return Jr(t,Re(e))}function uo(t,e){if("function"!=typeof e){if("function"!=typeof t)throw new Xi(R);var a=t;t=e,e=a}return t=yn(t=+t)?t:0,function(){return--t<1?e.apply(this,arguments):void 0}}function fo(t,e,a){return a&&tr(t,e,a)&&(e=y),e=t&&null==e?t.length:Cn(+e||0,0),Ia(t,A,y,y,y,y,e)}function po(t,e){var a;if("function"!=typeof e){if("function"!=typeof t)throw new Xi(R);var r=t;t=e,e=r}return function(){return--t>0&&(a=e.apply(this,arguments)),1>=t&&(e=y),a}}function bo(t,e,a){function r(){f&&hn(f),c&&hn(c),b=0,c=f=p=y}function o(e,a){a&&hn(a),c=f=p=y,e&&(b=Ts(),h=t.apply(d,l),f||c||(l=d=y))}function i(){var t=e-(Ts()-u);0>=t||t>e?o(p,c):f=bn(i,t)}function n(){o(v,f)}function s(){if(l=arguments,u=Ts(),d=this,p=v&&(f||!m),_===!1)var a=m&&!f;else{c||m||(b=u);var r=_-(u-b),o=0>=r||r>_;o?(c&&(c=hn(c)),b=u,h=t.apply(d,l)):c||(c=bn(n,r))}return o&&f?f=hn(f):f||e===_||(f=bn(i,e)),a&&(o=!0,h=t.apply(d,l)),!o||f||c||(l=d=y),h}var l,c,h,u,d,f,p,b=0,_=!1,v=!0;if("function"!=typeof t)throw new Xi(R);if(e=0>e?0:+e||0,a===!0){var m=!0;v=!1}else zo(a)&&(m=!!a.leading,_="maxWait"in a&&Cn(+a.maxWait||0,e),v="trailing"in a?!!a.trailing:v);return s.cancel=r,s}function _o(t,e){if("function"!=typeof t||e&&"function"!=typeof e)throw new Xi(R);var a=function(){var r=arguments,o=e?e.apply(this,r):r[0],i=a.cache;if(i.has(o))return i.get(o);var n=t.apply(this,r);return a.cache=i.set(o,n),n};return a.cache=new _o.Cache,a}function vo(t){if("function"!=typeof t)throw new Xi(R);return function(){return!t.apply(this,arguments)}}function mo(t){return po(2,t)}function wo(t,e){if("function"!=typeof t)throw new Xi(R);return e=Cn(e===y?t.length-1:+e||0,0),function(){for(var a=arguments,r=-1,o=Cn(a.length-e,0),i=Ni(o);++r<o;)i[r]=a[e+r];switch(e){case 0:return t.call(this,i);case 1:return t.call(this,a[0],i);case 2:return t.call(this,a[0],a[1],i)}var n=Ni(e+1);for(r=-1;++r<e;)n[r]=a[r];return n[e]=i,t.apply(this,n)}}function go(t){if("function"!=typeof t)throw new Xi(R);return function(e){return t.apply(this,e)}}function To(t,e,a){var r=!0,o=!0;if("function"!=typeof t)throw new Xi(R);return a===!1?r=!1:zo(a)&&(r="leading"in a?!!a.leading:r,o="trailing"in a?!!a.trailing:o),bo(t,e,{leading:r,maxWait:+e,trailing:o})}function xo(t,e){return e=null==e?Fi:e,Ia(e,L,y,[t],[])}function yo(t,e,a,r){return e&&"boolean"!=typeof e&&tr(t,e,a)?e=!1:"function"==typeof e&&(r=a,a=e,e=!1),"function"==typeof a?ye(t,e,sa(a,r,3)):ye(t,e)}function Bo(t,e,a){return"function"==typeof e?ye(t,!0,sa(e,a,3)):ye(t,!0)}function Co(t,e){return t>e}function So(t,e){return t>=e}function $o(t){return b(t)&&Ja(t)&&rn.call(t,"callee")&&!fn.call(t,"callee")}function Po(t){return t===!0||t===!1||b(t)&&nn.call(t)==G}function Fo(t){return b(t)&&nn.call(t)==j}function Lo(t){return!!t&&1===t.nodeType&&b(t)&&!No(t)}function Oo(t){return null==t?!0:Ja(t)&&(ks(t)||Wo(t)||$o(t)||b(t)&&ko(t.splice))?!t.length:!js(t).length}function Ao(t,e,a,r){a="function"==typeof a?sa(a,r,3):y;var o=a?a(t,e):y;return o===y?He(t,e,a):!!o}function Eo(t){return b(t)&&"string"==typeof t.message&&nn.call(t)==U}function Do(t){return"number"==typeof t&&yn(t)}function ko(t){return zo(t)&&nn.call(t)==q}function zo(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function Ho(t,e,a,r){return a="function"==typeof a?sa(a,r,3):y,Ve(t,Ga(e),a)}function Io(t){return Ro(t)&&t!=+t}function Vo(t){return null==t?!1:ko(t)?ln.test(an.call(t)):b(t)&&(ee(t)?ln:At).test(t)}function Mo(t){return null===t}function Ro(t){return"number"==typeof t||b(t)&&nn.call(t)==Y}function No(t){var e;if(!b(t)||nn.call(t)!=X||ee(t)||$o(t)||!rn.call(t,"constructor")&&(e=t.constructor,"function"==typeof e&&!(e instanceof e)))return!1;var a;return _.support.ownLast?(Ae(t,function(t,e,r){return a=rn.call(r,e),!1}),a!==!1):(Ae(t,function(t,e){a=e}),a===y||rn.call(t,a))}function Ko(t){return zo(t)&&nn.call(t)==J}function Wo(t){return"string"==typeof t||b(t)&&nn.call(t)==tt}function Go(t){return b(t)&&rr(t.length)&&!!Rt[nn.call(t)]}function jo(t){return t===y}function Uo(t,e){return e>t}function qo(t,e){return e>=t}function Zo(t){var e=t?qn(t):0;return rr(e)?e?_.support.unindexedChars&&Wo(t)?t.split(""):oe(t):[]:si(t)}function Yo(t){return Te(t,ai(t))}function Xo(t,e,a){var r=Rn(t);return a&&tr(t,e,a)&&(e=y),e?we(r,e):r}function Jo(t){return ke(t,ai(t))}function Qo(t,e,a){var r=null==t?y:ze(t,fr(e),e+"");return r===y?a:r}function ti(t,e){if(null==t)return!1;var a=rn.call(t,e);if(!a&&!er(e)){if(e=fr(e),t=1==e.length?t:ze(t,Ye(e,0,-1)),null==t)return!1;e=$r(e),a=rn.call(t,e)}return a||rr(t.length)&&Qa(e,t.length)&&(ks(t)||$o(t)||Wo(t))}function ei(t,e,a){a&&tr(t,e,a)&&(e=y);for(var r=-1,o=js(t),i=o.length,n={};++r<i;){var s=o[r],l=t[s];e?rn.call(n,l)?n[l].push(s):n[l]=[s]:n[l]=s}return n}function ai(t){if(null==t)return[];zo(t)||(t=qi(t));var e=t.length,a=_.support;e=e&&rr(e)&&(ks(t)||$o(t)||Wo(t))&&e||0;for(var r=t.constructor,o=-1,i=ko(r)&&r.prototype||tn,n=i===t,s=Ni(e),l=e>0,c=a.enumErrorProps&&(t===Qi||t instanceof Wi),h=a.enumPrototypes&&ko(t);++o<e;)s[o]=o+"";for(var u in t)h&&"prototype"==u||c&&("message"==u||"name"==u)||l&&Qa(u,e)||"constructor"==u&&(n||!rn.call(t,u))||s.push(u);if(a.nonEnumShadows&&t!==tn){var d=t===en?tt:t===Qi?U:nn.call(t),f=Vn[d]||Vn[X];for(d==X&&(i=tn),e=Vt.length;e--;){u=Vt[e];var p=f[u];n&&p||(p?!rn.call(t,u):t[u]===i[u])||s.push(u)}}return s}function ri(t){t=dr(t);for(var e=-1,a=js(t),r=a.length,o=Ni(r);++e<r;){var i=a[e];o[e]=[i,t[i]]}return o}function oi(t,e,a){var r=null==t?y:dr(t)[e];return r===y&&(null==t||er(e,t)||(e=fr(e),t=1==e.length?t:ze(t,Ye(e,0,-1)),r=null==t?y:dr(t)[$r(e)]),r=r===y?a:r),ko(r)?r.call(t):r}function ii(t,e,a){if(null==t)return t;var r=e+"";e=null!=t[r]||er(e,t)?[r]:fr(e);for(var o=-1,i=e.length,n=i-1,s=t;null!=s&&++o<i;){var l=e[o];zo(s)&&(o==n?s[l]=a:null==s[l]&&(s[l]=Qa(e[o+1])?[]:{})),s=s[l]}return t}function ni(t,e,a,r){var o=ks(t)||Go(t);if(e=Na(e,r,4),null==a)if(o||zo(t)){var i=t.constructor;a=o?ks(t)?new i:[]:Rn(ko(i)?i.prototype:y)}else a={};return(o?ie:Ee)(t,function(t,r,o){return e(a,t,r,o)}),a}function si(t){return aa(t,js(t))}function li(t){return aa(t,ai(t))}function ci(t,e,a){return e=+e||0,a===y?(a=e,e=0):a=+a||0,t>=Sn(e,a)&&t<Cn(e,a)}function hi(t,e,a){a&&tr(t,e,a)&&(e=a=y);var r=null==t,o=null==e;if(null==a&&(o&&"boolean"==typeof t?(a=t,t=1):"boolean"==typeof e&&(a=e,o=!0)),r&&o&&(e=1,o=!1),t=+t||0,o?(e=t,t=0):e=+e||0,a||t%1||e%1){var i=Fn();return Sn(t+i*(e-t+un("1e-"+((i+"").length-1))),e)}return qe(t,e)}function ui(t){return t=i(t),t&&t.charAt(0).toUpperCase()+t.slice(1)}function di(t){return t=i(t),t&&t.replace(Dt,h).replace($t,"")}function fi(t,e,a){t=i(t),e+="";var r=t.length;return a=a===y?r:Sn(0>a?0:+a||0,r),a-=e.length,a>=0&&t.indexOf(e,a)==a}function pi(t){return t=i(t),t&&mt.test(t)?t.replace(_t,u):t}function bi(t){return t=i(t),t&&St.test(t)?t.replace(Ct,d):t||"(?:)"}function _i(t,e,a){t=i(t),e=+e;var r=t.length;if(r>=e||!yn(e))return t;var o=(e-r)/2,n=Tn(o),s=wn(o);return a=Da("",s,a),a.slice(0,n)+t+a}function vi(t,e,a){return(a?tr(t,e,a):null==e)?e=0:e&&(e=+e),t=Ti(t),Pn(t,e||(Ot.test(t)?16:10))}function mi(t,e){var a="";if(t=i(t),e=+e,1>e||!t||!yn(e))return a;do e%2&&(a+=t),e=Tn(e/2),t+=t;while(e);return a}function wi(t,e,a){return t=i(t),a=null==a?0:Sn(0>a?0:+a||0,t.length),t.lastIndexOf(e,a)==a}function gi(t,e,a){var r=_.templateSettings;a&&tr(t,e,a)&&(e=a=y),t=i(t),e=me(we({},a||e),r,ve);var o,n,s=me(we({},e.imports),r.imports,ve),l=js(s),c=aa(s,l),h=0,u=e.interpolate||kt,d="__p += '",p=Zi((e.escape||kt).source+"|"+u.source+"|"+(u===Tt?Ft:kt).source+"|"+(e.evaluate||kt).source+"|$","g"),b="//# sourceURL="+("sourceURL"in e?e.sourceURL:"lodash.templateSources["+ ++Mt+"]")+"\n";t.replace(p,function(e,a,r,i,s,l){return r||(r=i),d+=t.slice(h,l).replace(zt,f),a&&(o=!0,d+="' +\n__e("+a+") +\n'"),s&&(n=!0,d+="';\n"+s+";\n__p += '"),r&&(d+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),h=l+e.length,e}),d+="';\n";var v=e.variable;v||(d="with (obj) {\n"+d+"\n}\n"),d=(n?d.replace(dt,""):d).replace(ft,"$1").replace(pt,"$1;"),d="function("+(v||"obj")+") {\n"+(v?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(o?", __e = _.escape":"")+(n?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+d+"return __p\n}";var m=rl(function(){return Gi(l,b+"return "+d).apply(y,c)});if(m.source=d,Eo(m))throw m;return m}function Ti(t,e,a){var r=t;return(t=i(t))?(a?tr(r,e,a):null==e)?t.slice(w(t),g(t)+1):(e+="",t.slice(n(t,e),s(t,e)+1)):t}function xi(t,e,a){var r=t;return t=i(t),t?(a?tr(r,e,a):null==e)?t.slice(w(t)):t.slice(n(t,e+"")):t}function yi(t,e,a){var r=t;return t=i(t),t?(a?tr(r,e,a):null==e)?t.slice(0,g(t)+1):t.slice(0,s(t,e+"")+1):t}function Bi(t,e,a){a&&tr(t,e,a)&&(e=y);var r=D,o=k;if(null!=e)if(zo(e)){var n="separator"in e?e.separator:n;r="length"in e?+e.length||0:r,o="omission"in e?i(e.omission):o}else r=+e||0;if(t=i(t),r>=t.length)return t;var s=r-o.length;if(1>s)return o;var l=t.slice(0,s);if(null==n)return l+o;if(Ko(n)){if(t.slice(s).search(n)){var c,h,u=t.slice(0,s);for(n.global||(n=Zi(n.source,(Lt.exec(n)||"")+"g")),n.lastIndex=0;c=n.exec(u);)h=c.index;l=l.slice(0,null==h?s:h)}}else if(t.indexOf(n,s)!=s){var d=l.lastIndexOf(n);d>-1&&(l=l.slice(0,d))}return l+o}function Ci(t){return t=i(t),t&&vt.test(t)?t.replace(bt,T):t}function Si(t,e,a){return a&&tr(t,e,a)&&(e=y),t=i(t),t.match(e||Ht)||[]}function $i(t,e,a){return a&&tr(t,e,a)&&(e=y),b(t)?Li(t):xe(t,e)}function Pi(t){return function(){return t}}function Fi(t){return t}function Li(t){return Re(ye(t,!0))}function Oi(t,e){return Ne(t,ye(e,!0))}function Ai(t,e,a){if(null==a){var r=zo(e),o=r?js(e):y,i=o&&o.length?ke(e,o):y;(i?i.length:r)||(i=!1,a=e,e=t,t=this)}i||(i=ke(e,js(e)));var n=!0,s=-1,l=ko(t),c=i.length;a===!1?n=!1:zo(a)&&"chain"in a&&(n=a.chain);for(;++s<c;){var h=i[s],u=e[h];t[h]=u,l&&(t.prototype[h]=function(e){return function(){var a=this.__chain__;if(n||a){var r=t(this.__wrapped__),o=r.__actions__=oe(this.__actions__);return o.push({func:e,args:arguments,thisArg:t}),r.__chain__=a,r}return e.apply(t,ue([this.value()],arguments))}}(u))}return t}function Ei(){return te._=sn,this}function Di(){}function ki(t){return er(t)?Ge(t):je(t)}function zi(t){return function(e){return ze(t,fr(e),e+"")}}function Hi(t,e,a){a&&tr(t,e,a)&&(e=a=y),t=+t||0,a=null==a?1:+a||0,null==e?(e=t,t=0):e=+e||0;for(var r=-1,o=Cn(wn((e-t)/(a||1)),0),i=Ni(o);++r<o;)i[r]=t,t+=a;return i}function Ii(t,e,a){if(t=Tn(t),1>t||!yn(t))return[];var r=-1,o=Ni(Sn(t,An));for(e=sa(e,a,1);++r<t;)An>r?o[r]=e(r):e(r);return o}function Vi(t){var e=++on;return i(t)+e}function Mi(t,e){return(+t||0)+(+e||0)}function Ri(t,e,a){return a&&tr(t,e,a)&&(e=y),e=Na(e,a,3),1==e.length?be(ks(t)?t:ur(t),e):ta(t,e)}a=a?ae.defaults(te.Object(),a,ae.pick(te,It)):te;var Ni=a.Array,Ki=a.Date,Wi=a.Error,Gi=a.Function,ji=a.Math,Ui=a.Number,qi=a.Object,Zi=a.RegExp,Yi=a.String,Xi=a.TypeError,Ji=Ni.prototype,Qi=Wi.prototype,tn=qi.prototype,en=Yi.prototype,an=Gi.prototype.toString,rn=tn.hasOwnProperty,on=0,nn=tn.toString,sn=te._,ln=Zi("^"+an.call(rn).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),cn=a.ArrayBuffer,hn=a.clearTimeout,un=a.parseFloat,dn=ji.pow,fn=tn.propertyIsEnumerable,pn=ja(a,"Set"),bn=a.setTimeout,_n=Ji.splice,vn=a.Uint8Array,mn=ja(a,"WeakMap"),wn=ji.ceil,gn=ja(qi,"create"),Tn=ji.floor,xn=ja(Ni,"isArray"),yn=a.isFinite,Bn=ja(qi,"keys"),Cn=ji.max,Sn=ji.min,$n=ja(Ki,"now"),Pn=a.parseInt,Fn=ji.random,Ln=Ui.NEGATIVE_INFINITY,On=Ui.POSITIVE_INFINITY,An=4294967295,En=An-1,Dn=An>>>1,kn=9007199254740991,zn=mn&&new mn,Hn={},In={};In[rt]=a.Float32Array,In[ot]=a.Float64Array,In[it]=a.Int8Array,In[nt]=a.Int16Array,In[st]=a.Int32Array,In[lt]=vn,In[ct]=a.Uint8ClampedArray,In[ht]=a.Uint16Array,In[ut]=a.Uint32Array;var Vn={};Vn[W]=Vn[j]=Vn[Y]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},Vn[G]=Vn[tt]={constructor:!0,toString:!0,valueOf:!0},Vn[U]=Vn[q]=Vn[J]={constructor:!0,toString:!0},Vn[X]={constructor:!0},ie(Vt,function(t){for(var e in Vn)if(rn.call(Vn,e)){var a=Vn[e];a[t]=rn.call(a,t)}});var Mn=_.support={};!function(t){var e=function(){this.x=t},a={0:t,length:t},r=[];e.prototype={valueOf:t,y:t};for(var o in new e)r.push(o);Mn.enumErrorProps=fn.call(Qi,"message")||fn.call(Qi,"name"),Mn.enumPrototypes=fn.call(e,"prototype"),Mn.nonEnumShadows=!/valueOf/.test(r),Mn.ownLast="x"!=r[0],Mn.spliceObjects=(_n.call(a,0,1),!a[0]),Mn.unindexedChars="x"[0]+qi("x")[0]!="xx"}(1,0),_.templateSettings={escape:wt,evaluate:gt,interpolate:Tt,variable:"",imports:{_:_}};var Rn=function(){function t(){}return function(e){if(zo(e)){t.prototype=e;var a=new t;t.prototype=y}return a||{}}}(),Nn=fa(Ee),Kn=fa(De,!0),Wn=pa(),Gn=pa(!0),jn=zn?function(t,e){return zn.set(t,e),t}:Fi,Un=zn?function(t){return zn.get(t)}:Di,qn=Ge("length"),Zn=function(){var t=0,e=0;return function(a,r){var o=Ts(),i=H-(o-e);if(e=o,i>0){if(++t>=z)return a}else t=0;return jn(a,r)}}(),Yn=wo(function(t,e){return b(t)&&Ja(t)?Ce(t,Oe(e,!1,!0)):[]}),Xn=ya(),Jn=ya(!0),Qn=wo(function(t){for(var e=t.length,a=e,o=Ni(u),i=Wa(),n=i===r,s=[];a--;){var l=t[a]=Ja(l=t[a])?l:[];o[a]=n&&l.length>=120?_a(a&&l):null}var c=t[0],h=-1,u=c?c.length:0,d=o[0];t:for(;++h<u;)if(l=c[h],(d?Jt(d,l):i(s,l,0))<0){for(var a=e;--a;){var f=o[a];if((f?Jt(f,l):i(t[a],l,0))<0)continue t}d&&d.push(l),s.push(l)}return s}),ts=wo(function(e,a){a=Oe(a);var r=ge(e,a);return Ue(e,a.sort(t)),r}),es=Ha(),as=Ha(!0),rs=wo(function(t){return ea(Oe(t,!1,!0))}),os=wo(function(t,e){return Ja(t)?Ce(t,e):[]}),is=wo(Ir),ns=wo(function(t){var e=t.length,a=e>2?t[e-2]:y,r=e>1?t[e-1]:y;return e>2&&"function"==typeof a?e-=2:(a=e>1&&"function"==typeof r?(--e,r):y,r=y),t.length=e,Vr(t,a,r)}),ss=wo(function(t){return t=Oe(t),this.thru(function(e){return re(ks(e)?e:[dr(e)],t)})}),ls=wo(function(t,e){return Ja(t)&&(t=ur(t)),ge(t,Oe(e))}),cs=ua(function(t,e,a){rn.call(t,a)?++t[a]:t[a]=1}),hs=xa(Nn),us=xa(Kn,!0),ds=Sa(ie,Nn),fs=Sa(ne,Kn),ps=ua(function(t,e,a){rn.call(t,a)?t[a].push(e):t[a]=[e]}),bs=ua(function(t,e,a){t[a]=e}),_s=wo(function(t,e,a){var r=-1,o="function"==typeof e,i=er(e),n=Ja(t)?Ni(t.length):[];return Nn(t,function(t){var s=o?e:i&&null!=t?t[e]:y;n[++r]=s?s.apply(t,a):Xa(t,e,a)}),n}),vs=ua(function(t,e,a){t[a?0:1].push(e)},function(){return[[],[]]}),ms=Aa(de,Nn),ws=Aa(fe,Kn),gs=wo(function(t,e){if(null==t)return[];var a=e[2];return a&&tr(e[0],e[1],a)&&(e.length=1),Qe(t,Oe(e),[])}),Ts=$n||function(){return(new Ki).getTime()},xs=wo(function(t,e,a){var r=C;if(a.length){var o=v(a,xs.placeholder);r|=L}return Ia(t,r,e,a,o)}),ys=wo(function(t,e){e=e.length?Oe(e):Jo(t);for(var a=-1,r=e.length;++a<r;){var o=e[a];t[o]=Ia(t[o],C,t)}return t}),Bs=wo(function(t,e,a){var r=C|S;if(a.length){var o=v(a,Bs.placeholder);r|=L}return Ia(e,r,t,a,o)}),Cs=wa(P),Ss=wa(F),$s=wo(function(t,e){return Be(t,1,e)}),Ps=wo(function(t,e,a){return Be(t,e,a)}),Fs=Ca(),Ls=Ca(!0),Os=wo(function(t,e){if(e=Oe(e),"function"!=typeof t||!se(e,o))throw new Xi(R);var a=e.length;return wo(function(r){for(var o=Sn(r.length,a);o--;)r[o]=e[o](r[o]);return t.apply(this,r)})}),As=Oa(L),Es=Oa(O),Ds=wo(function(t,e){return Ia(t,E,y,y,y,Oe(e))}),ks=xn||function(t){return b(t)&&rr(t.length)&&nn.call(t)==W},zs=da(Ke),Hs=da(function(t,e,a){return a?me(t,e,a):we(t,e)}),Is=ga(Hs,_e),Vs=ga(zs,nr),Ms=Ba(Ee),Rs=Ba(De),Ns=$a(Wn),Ks=$a(Gn),Ws=Pa(Ee),Gs=Pa(De),js=Bn?function(t){var e=null==t?y:t.constructor;return"function"==typeof e&&e.prototype===t||("function"==typeof t?_.support.enumPrototypes:Ja(t))?hr(t):zo(t)?Bn(t):[]}:hr,Us=Fa(!0),qs=Fa(),Zs=wo(function(t,e){if(null==t)return{};if("function"!=typeof e[0]){var e=he(Oe(e),Yi);return sr(t,Ce(ai(t),e))}var a=sa(e[0],e[1],3);return lr(t,function(t,e,r){return!a(t,e,r)})}),Ys=wo(function(t,e){return null==t?{}:"function"==typeof e[0]?lr(t,sa(e[0],e[1],3)):sr(t,Oe(e))}),Xs=va(function(t,e,a){return e=e.toLowerCase(),t+(a?e.charAt(0).toUpperCase()+e.slice(1):e)}),Js=va(function(t,e,a){return t+(a?"-":"")+e.toLowerCase()}),Qs=La(),tl=La(!0),el=va(function(t,e,a){return t+(a?"_":"")+e.toLowerCase()}),al=va(function(t,e,a){return t+(a?" ":"")+(e.charAt(0).toUpperCase()+e.slice(1))}),rl=wo(function(t,e){try{return t.apply(y,e)}catch(a){return Eo(a)?a:new Wi(a)}}),ol=wo(function(t,e){return function(a){return Xa(a,t,e)}}),il=wo(function(t,e){return function(a){return Xa(t,a,e)}}),nl=za("ceil"),sl=za("floor"),ll=Ta(Co,Ln),cl=Ta(Uo,On),hl=za("round");return _.prototype=Z.prototype,Q.prototype=Rn(Z.prototype),Q.prototype.constructor=Q,et.prototype=Rn(Z.prototype),et.prototype.constructor=et,jt.prototype["delete"]=Ut,jt.prototype.get=qt,jt.prototype.has=Zt,jt.prototype.set=Yt,Xt.prototype.push=Qt,_o.Cache=jt,_.after=uo,_.ary=fo,_.assign=Hs,_.at=ls,_.before=po,_.bind=xs,_.bindAll=ys,_.bindKey=Bs,_.callback=$i,_.chain=Nr,_.chunk=br,_.compact=_r,_.constant=Pi,_.countBy=cs,_.create=Xo,_.curry=Cs,_.curryRight=Ss,_.debounce=bo,_.defaults=Is,_.defaultsDeep=Vs,_.defer=$s,_.delay=Ps,_.difference=Yn,_.drop=vr,_.dropRight=mr,_.dropRightWhile=wr,_.dropWhile=gr,_.fill=Tr,_.filter=Jr,_.flatten=yr,_.flattenDeep=Br,_.flow=Fs,_.flowRight=Ls,_.forEach=ds,_.forEachRight=fs,_.forIn=Ns,_.forInRight=Ks,_.forOwn=Ws,_.forOwnRight=Gs,_.functions=Jo,_.groupBy=ps,_.indexBy=bs,_.initial=Sr,_.intersection=Qn,_.invert=ei,_.invoke=_s,_.keys=js,_.keysIn=ai,_.map=eo,_.mapKeys=Us,_.mapValues=qs,_.matches=Li,_.matchesProperty=Oi,_.memoize=_o,_.merge=zs,_.method=ol,_.methodOf=il,_.mixin=Ai,_.modArgs=Os,_.negate=vo,_.omit=Zs,_.once=mo,_.pairs=ri,_.partial=As,_.partialRight=Es,_.partition=vs,_.pick=Ys,_.pluck=ao,_.property=ki,_.propertyOf=zi,_.pull=Fr,_.pullAt=ts,_.range=Hi,_.rearg=Ds,_.reject=ro,_.remove=Lr,_.rest=Or,_.restParam=wo,_.set=ii,_.shuffle=io,_.slice=Ar,_.sortBy=lo,_.sortByAll=gs,_.sortByOrder=co,_.spread=go,_.take=Er,_.takeRight=Dr,_.takeRightWhile=kr,_.takeWhile=zr,_.tap=Kr,_.throttle=To,_.thru=Wr,_.times=Ii,_.toArray=Zo,_.toPlainObject=Yo,_.transform=ni,_.union=rs,_.uniq=Hr,_.unzip=Ir,_.unzipWith=Vr,_.values=si,_.valuesIn=li,_.where=ho,_.without=os,_.wrap=xo,_.xor=Mr,_.zip=is,_.zipObject=Rr,_.zipWith=ns,_.backflow=Ls,_.collect=eo,_.compose=Ls,_.each=ds,_.eachRight=fs,_.extend=Hs,_.iteratee=$i,_.methods=Jo,_.object=Rr,_.select=Jr,_.tail=Or,_.unique=Hr,Ai(_,_),_.add=Mi,_.attempt=rl,_.camelCase=Xs,_.capitalize=ui,_.ceil=nl,_.clone=yo,_.cloneDeep=Bo,_.deburr=di,_.endsWith=fi,_.escape=pi,_.escapeRegExp=bi,_.every=Xr,_.find=hs,_.findIndex=Xn,_.findKey=Ms,_.findLast=us,_.findLastIndex=Jn,_.findLastKey=Rs,_.findWhere=Qr,_.first=xr,_.floor=sl,_.get=Qo,_.gt=Co,_.gte=So,_.has=ti,_.identity=Fi,_.includes=to,_.indexOf=Cr,_.inRange=ci,_.isArguments=$o,_.isArray=ks,_.isBoolean=Po,_.isDate=Fo,_.isElement=Lo,_.isEmpty=Oo,_.isEqual=Ao,_.isError=Eo,_.isFinite=Do,_.isFunction=ko,_.isMatch=Ho,_.isNaN=Io,_.isNative=Vo,_.isNull=Mo,_.isNumber=Ro,_.isObject=zo,_.isPlainObject=No,_.isRegExp=Ko,_.isString=Wo,_.isTypedArray=Go,_.isUndefined=jo,_.kebabCase=Js,_.last=$r,_.lastIndexOf=Pr,_.lt=Uo,_.lte=qo,_.max=ll,_.min=cl,_.noConflict=Ei,_.noop=Di,_.now=Ts,_.pad=_i,_.padLeft=Qs,_.padRight=tl,_.parseInt=vi,_.random=hi,_.reduce=ms,_.reduceRight=ws,_.repeat=mi,_.result=oi,_.round=hl,_.runInContext=x,_.size=no,_.snakeCase=el,_.some=so,_.sortedIndex=es,_.sortedLastIndex=as,_.startCase=al,_.startsWith=wi,_.sum=Ri,_.template=gi,_.trim=Ti,_.trimLeft=xi,_.trimRight=yi,_.trunc=Bi,_.unescape=Ci,_.uniqueId=Vi,_.words=Si,_.all=Xr,_.any=so,_.contains=to,_.eq=Ao,_.detect=hs,_.foldl=ms,_.foldr=ws,_.head=xr,_.include=to,_.inject=ms,Ai(_,function(){var t={};return Ee(_,function(e,a){_.prototype[a]||(t[a]=e)}),t}(),!1),_.sample=oo,_.prototype.sample=function(t){return this.__chain__||null!=t?this.thru(function(e){return oo(e,t)}):oo(this.value())},_.VERSION=B,ie(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){_[t].placeholder=_}),ie(["drop","take"],function(t,e){et.prototype[t]=function(a){var r=this.__filtered__;if(r&&!e)return new et(this);a=null==a?1:Cn(Tn(a)||0,0);var o=this.clone();return r?o.__takeCount__=Sn(o.__takeCount__,a):o.__views__.push({size:a,type:t+(o.__dir__<0?"Right":"")}),o},et.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}}),ie(["filter","map","takeWhile"],function(t,e){var a=e+1,r=a!=M;et.prototype[t]=function(t,e){var o=this.clone();return o.__iteratees__.push({iteratee:Na(t,e,1),type:a}),o.__filtered__=o.__filtered__||r,o}}),ie(["first","last"],function(t,e){var a="take"+(e?"Right":"");et.prototype[t]=function(){return this[a](1).value()[0]}}),ie(["initial","rest"],function(t,e){var a="drop"+(e?"":"Right");et.prototype[t]=function(){return this.__filtered__?new et(this):this[a](1)}}),ie(["pluck","where"],function(t,e){var a=e?"filter":"map",r=e?Re:ki;et.prototype[t]=function(t){return this[a](r(t))}}),et.prototype.compact=function(){return this.filter(Fi)},et.prototype.reject=function(t,e){return t=Na(t,e,1),this.filter(function(e){return!t(e)})},et.prototype.slice=function(t,e){t=null==t?0:+t||0;var a=this;return a.__filtered__&&(t>0||0>e)?new et(a):(0>t?a=a.takeRight(-t):t&&(a=a.drop(t)),e!==y&&(e=+e||0,a=0>e?a.dropRight(-e):a.take(e-t)),a)},et.prototype.takeRightWhile=function(t,e){return this.reverse().takeWhile(t,e).reverse()},et.prototype.toArray=function(){return this.take(On)},Ee(et.prototype,function(t,e){var a=/^(?:filter|map|reject)|While$/.test(e),r=/^(?:first|last)$/.test(e),o=_[r?"take"+("last"==e?"Right":""):e];o&&(_.prototype[e]=function(){var e=r?[1]:arguments,i=this.__chain__,n=this.__wrapped__,s=!!this.__actions__.length,l=n instanceof et,c=e[0],h=l||ks(n);h&&a&&"function"==typeof c&&1!=c.length&&(l=h=!1);var u=function(t){return r&&i?o(t,1)[0]:o.apply(y,ue([t],e))},d={func:Wr,args:[u],thisArg:y},f=l&&!s;if(r&&!i)return f?(n=n.clone(),n.__actions__.push(d),t.call(n)):o.call(y,this.value())[0];if(!r&&h){n=f?n:new et(this);var p=t.apply(n,e);return p.__actions__.push(d),new Q(p,i)}return this.thru(u)})}),ie(["join","pop","push","replace","shift","sort","splice","split","unshift"],function(t){var e=(/^(?:replace|split)$/.test(t)?en:Ji)[t],a=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",r=!Mn.spliceObjects&&/^(?:pop|shift|splice)$/.test(t),o=/^(?:join|pop|replace|shift)$/.test(t),i=r?function(){var t=e.apply(this,arguments);return 0===this.length&&delete this[0],t}:e;_.prototype[t]=function(){var t=arguments;return o&&!this.__chain__?i.apply(this.value(),t):this[a](function(e){return i.apply(e,t)})}}),Ee(et.prototype,function(t,e){var a=_[e];if(a){var r=a.name+"",o=Hn[r]||(Hn[r]=[]);o.push({name:e,func:a})}}),Hn[Ea(y,S).name]=[{name:"wrapper",func:y}],et.prototype.clone=Kt,et.prototype.reverse=Wt,et.prototype.value=Gt,_.prototype.chain=Gr,_.prototype.commit=jr,_.prototype.concat=ss,_.prototype.plant=Ur,_.prototype.reverse=qr,_.prototype.toString=Zr,_.prototype.run=_.prototype.toJSON=_.prototype.valueOf=_.prototype.value=Yr,_.prototype.collect=_.prototype.map,_.prototype.head=_.prototype.first,_.prototype.select=_.prototype.filter,_.prototype.tail=_.prototype.rest,_}var y,B="3.10.1",C=1,S=2,$=4,P=8,F=16,L=32,O=64,A=128,E=256,D=30,k="...",z=150,H=16,I=200,V=1,M=2,R="Expected a function",N="__lodash_placeholder__",K="[object Arguments]",W="[object Array]",G="[object Boolean]",j="[object Date]",U="[object Error]",q="[object Function]",Z="[object Map]",Y="[object Number]",X="[object Object]",J="[object RegExp]",Q="[object Set]",tt="[object String]",et="[object WeakMap]",at="[object ArrayBuffer]",rt="[object Float32Array]",ot="[object Float64Array]",it="[object Int8Array]",nt="[object Int16Array]",st="[object Int32Array]",lt="[object Uint8Array]",ct="[object Uint8ClampedArray]",ht="[object Uint16Array]",ut="[object Uint32Array]",dt=/\b__p \+= '';/g,ft=/\b(__p \+=) '' \+/g,pt=/(__e\(.*?\)|\b__t\)) \+\n'';/g,bt=/&(?:amp|lt|gt|quot|#39|#96);/g,_t=/[&<>"'`]/g,vt=RegExp(bt.source),mt=RegExp(_t.source),wt=/<%-([\s\S]+?)%>/g,gt=/<%([\s\S]+?)%>/g,Tt=/<%=([\s\S]+?)%>/g,xt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\n\\]|\\.)*?\1)\]/,yt=/^\w*$/,Bt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\n\\]|\\.)*?)\2)\]/g,Ct=/^[:!,]|[\\^$.*+?()[\]{}|\/]|(^[0-9a-fA-Fnrtuvx])|([\n\r\u2028\u2029])/g,St=RegExp(Ct.source),$t=/[\u0300-\u036f\ufe20-\ufe23]/g,Pt=/\\(\\)?/g,Ft=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Lt=/\w*$/,Ot=/^0[xX]/,At=/^\[object .+?Constructor\]$/,Et=/^\d+$/,Dt=/[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g,kt=/($^)/,zt=/['\n\r\u2028\u2029\\]/g,Ht=function(){var t="[A-Z\\xc0-\\xd6\\xd8-\\xde]",e="[a-z\\xdf-\\xf6\\xf8-\\xff]+";return RegExp(t+"+(?="+t+e+")|"+t+"?"+e+"|"+t+"+|[0-9]+","g")}(),It=["Array","ArrayBuffer","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Math","Number","Object","RegExp","Set","String","_","clearTimeout","isFinite","parseFloat","parseInt","setTimeout","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap"],Vt=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],Mt=-1,Rt={};Rt[rt]=Rt[ot]=Rt[it]=Rt[nt]=Rt[st]=Rt[lt]=Rt[ct]=Rt[ht]=Rt[ut]=!0,Rt[K]=Rt[W]=Rt[at]=Rt[G]=Rt[j]=Rt[U]=Rt[q]=Rt[Z]=Rt[Y]=Rt[X]=Rt[J]=Rt[Q]=Rt[tt]=Rt[et]=!1;var Nt={};Nt[K]=Nt[W]=Nt[at]=Nt[G]=Nt[j]=Nt[rt]=Nt[ot]=Nt[it]=Nt[nt]=Nt[st]=Nt[Y]=Nt[X]=Nt[J]=Nt[tt]=Nt[lt]=Nt[ct]=Nt[ht]=Nt[ut]=!0,Nt[U]=Nt[q]=Nt[Z]=Nt[Q]=Nt[et]=!1;var Kt={"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss"},Wt={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},Gt={"&":"&","<":"<",">":">",""":'"',"'":"'","`":"`"},jt={"function":!0,object:!0},Ut={0:"x30",1:"x31",2:"x32",3:"x33",4:"x34",5:"x35",6:"x36",7:"x37",8:"x38",9:"x39",A:"x41",B:"x42",C:"x43",D:"x44",E:"x45",F:"x46",a:"x61",b:"x62",c:"x63",d:"x64",e:"x65",f:"x66",n:"x6e",r:"x72",t:"x74",u:"x75",v:"x76",x:"x78"},qt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Zt=jt[typeof exports]&&exports&&!exports.nodeType&&exports,Yt=jt[typeof module]&&module&&!module.nodeType&&module,Xt=Zt&&Yt&&"object"==typeof global&&global&&global.Object&&global,Jt=jt[typeof self]&&self&&self.Object&&self,Qt=jt[typeof window]&&window&&window.Object&&window,te=Xt||Qt!==(this&&this.window)&&Qt||Jt||this,ee=function(){try{Object({toString:0}+"")}catch(t){return function(){return!1}}return function(t){return"function"!=typeof t.toString&&"string"==typeof(t+"")}}(),ae=x();"function"==typeof a&&"object"==typeof a.amd&&a.amd&&a("lodash/main",[],function(){return ae})}.call(this),a("lodash",["lodash/main"],function(t){return t}),a("wcDocker/docker",["dcl/dcl","./types","./panel","./ghost","./splitter","./frame","./collapser","./layoutsimple","./layouttable","./tabframe","./drawer","./base","lodash"],function(t,e,a,r,o,i,n,s,l,c,h,u,d){var f={wcPanel:a,wcGhost:r,wcSplitter:o,wcFrame:i,wcCollapser:n,wcLayoutSimple:s,wcLayoutTable:l,wcDrawer:h,wcTabFrame:c},p=t(u,{declaredClass:"wcDocker",constructor:function(t,e){this.$outer=$(t),this.$container=$('<div class="wcDocker">'),this.$transition=$('<div class="wcDockerTransition">'),this.$loading=null,this.$outer.append(this.$container),this.$container.append(this.$transition), this._canOrientTabs=!0,this._events={},this._root=null,this._frameList=[],this._floatingList=[],this._modalList=[],this._persistentList=[],this._focusFrame=null,this._placeholderPanel=null,this._contextTimer=0,this._dirty=!1,this._dirtyDontMove=!1,this._splitterList=[],this._tabList=[],this._collapser={},this._dockPanelTypeList=[],this._creatingPanel=!1,this._draggingSplitter=null,this._draggingFrame=null,this._draggingFrameSizer=null,this._draggingFrameTab=null,this._draggingFrameTopper=!1,this._draggingCustomTabFrame=null,this._ghost=null,this._menuTimer=0,this._mouseOrigin={x:0,y:0},this._resizeData={time:-1,timeout:!1,delta:150};var a={themePath:"Themes",theme:"default",loadingClass:"fa fa-spinner fa-pulse",allowContextMenu:!0,hideOnResize:!1,allowCollapse:!0,responseRate:10,moveStartDelay:300,edgeAnchorSize:50,panelAnchorSize:"15%",detachToWidth:"50%",detachToHeight:"50%"};this._options={};for(var r in f)a[r+"Class"]=f[r];for(var r in a)this._options[r]=a[r];for(var r in e)this._options[r]=e[r];this.__init()},themePath:function(t){return void 0!==t&&(this._options.themePath=t),this._options.themePath},theme:function(t){if(void 0!==t){var e=$("#wcTheme"),a=(new Date).getTime(),r=t.indexOf(".css");r>-1&&(t=t.substring(0,r));var o=$('<link id="wcTheme" rel="stylesheet" type="text/css" href="'+this._options.themePath+"/"+t+".css?v="+a+'"/>');this._options.theme=t;var i=this;o[0].onload=function(){e.remove(),i.__update()},$("head").append(o)}return this._options.theme},isCollapseEnabled:function(){return this._canOrientTabs&&this._options.allowCollapse},registerPanelType:function(t,e,a){var r=e;"function"==typeof r&&(r={onCreate:e},console.log("WARNING: Passing in the creation function directly to wcDocker.registerPanelType parameter 2 is now deprecated and will be removed in the next version! Please use the preferred options object instead.")),"undefined"!=typeof a&&(r.isPrivate=a,console.log("WARNING: Passing in the isPrivate flag to wcDocker.registerPanelType parameter 3 is now deprecated and will be removed in the next version! Please use the preferred options object instead.")),$.isEmptyObject(r)&&(r=null);for(var o=0;o<this._dockPanelTypeList.length;++o)if(this._dockPanelTypeList[o].name===t)return!1;this._dockPanelTypeList.push({name:t,options:r});var i=$("menu").find("menu");return i.append($('<menuitem label="'+t+'">')),!0},panelTypes:function(t){for(var e=[],a=0;a<this._dockPanelTypeList.length;++a)(t||!this._dockPanelTypeList[a].options.isPrivate)&&e.push(this._dockPanelTypeList[a].name);return e},panelTypeInfo:function(t){for(var e=0;e<this._dockPanelTypeList.length;++e)if(this._dockPanelTypeList[e].name==t)return this._dockPanelTypeList[e].options;return!1},addPanel:function(t,a,r,o){function i(t){a===e.DOCK.STACKED?this.__addPanelGrouped(t,r,o):this.__addPanelAlone(t,a,r,o),this._placeholderPanel&&t.moveable()&&a!==e.DOCK.FLOAT&&a!==e.DOCK.MODAL&&this.removePanel(this._placeholderPanel)&&(this._placeholderPanel=null),this.__forceUpdate()}for(var n=0;n<this._persistentList.length;++n)if(this._persistentList[n]._type===t){var s=this._persistentList.splice(n,1)[0];return i.call(this,s),s.__trigger(e.EVENT.PERSISTENT_OPENED),s}for(var l=0;l<this._dockPanelTypeList.length;++l)if(this._dockPanelTypeList[l].name===t){var c=this._dockPanelTypeList[l],s=new(this.__getClass("wcPanel"))(this,t,c.options);s.__container(this.$transition);var h=c.options&&c.options.options||{};return s._panelObject=new c.options.onCreate(s,h),i.call(this,s),s}return!1},removePanel:function(t,a){if(!t)return!1;var r=this.__isLastPanel(t),o=t._parent;if(o&&o.instanceOf("wcFrame")){for(var i=t.__trigger(e.EVENT.CLOSING),n=0;n<i.length;++n)if(!i[n])return!1;if(a?(t.__container(this.$transition),t._parent=null):t.__trigger(e.EVENT.CLOSED),!o.removePanel(t)&&!o.isCollapser()){if(r)return this.__addPlaceholder(o),a?t.__trigger(e.EVENT.PERSISTENT_CLOSED):t.__destroy(),!0;var s=this._floatingList.indexOf(o);-1!==s&&this._floatingList.splice(s,1),s=this._frameList.indexOf(o),-1!==s&&this._frameList.splice(s,1),s=this._modalList.indexOf(o),-1!==s&&this._modalList.splice(s,1),this._modalList.length?this.__focus(this._modalList[this._modalList.length-1]):this._floatingList.length&&this.__focus(this._floatingList[this._floatingList.length-1]);var l=o._parent;if(l&&l.instanceOf("wcSplitter")){l.__removeChild(o);var c;l.pane(0)?(c=l.pane(0),l._pane[0]=null):(c=l.pane(1),l._pane[1]=null),c.__container(this.$transition),c._parent=null,s=this._splitterList.indexOf(l),-1!==s&&this._splitterList.splice(s,1);var h=l._parent;parentContainer=l.__container(),l.__destroy(),h&&h.instanceOf("wcSplitter")?(h.__removeChild(l),h.pane(0)?h.pane(1,c):h.pane(0,c)):h===this&&(this._root=c,c._parent=this,c.__container(parentContainer)),this.__update()}else o===this._root&&(this._root=null);this._focusFrame===o&&(this._focusFrame=null),o.__destroy()}return a?t.__trigger(e.EVENT.PERSISTENT_CLOSED):t.__destroy(),!0}return!1},movePanel:function(t,a,r,o){var i=this.__isLastPanel(t),n=t.$container;t._parent&&t._parent.instanceOf("wcFrame")&&(n=t._parent.$frame);var s=n.offset(),l=n.width(),c=n.height(),h=t._parent,u=!1;if(h&&h.instanceOf("wcFrame")){u=h._isFloating;for(var d=0;d<h._panelList.length;++d)if(h._panelList[d]===t){h.isCollapser()?h._curTab=-1:h._curTab>=d&&h._curTab--,t.__container(this.$transition),t._parent=null,h._panelList.splice(d,1);break}if(!h.isCollapser()&&-1===h._curTab&&h._panelList.length&&(h._curTab=0),h.__updateTabs(),h.collapse(),!h.isCollapser()&&0===h._panelList.length)if(i)this.__addPlaceholder(h);else{var f=this._floatingList.indexOf(h);-1!==f&&this._floatingList.splice(f,1),f=this._frameList.indexOf(h),-1!==f&&this._frameList.splice(f,1);var p=h._parent;if(p&&p.instanceOf("wcSplitter")){p.__removeChild(h);var b;p.pane(0)?(b=p.pane(0),p._pane[0]=null):(b=p.pane(1),p._pane[1]=null),r===p&&(r._shift=b),b.__container(this.$transition),b._parent=null,f=this._splitterList.indexOf(p),-1!==f&&this._splitterList.splice(f,1);var _=p._parent;parentContainer=p.__container(),p.__destroy(),_&&_.instanceOf("wcSplitter")?(_.__removeChild(p),_.pane(0)?_.pane(1,b):_.pane(0,b)):_===this&&(this._root=b,b._parent=this,b.__container(parentContainer)),this.__update()}this._focusFrame===h&&(this._focusFrame=null),h.__destroy()}}t.initSize(l,c),a===e.DOCK.STACKED?this.__addPanelGrouped(t,r,o):this.__addPanelAlone(t,a,r,o),r==this._placeholderPanel&&(this.removePanel(this._placeholderPanel),this._placeholderPanel=null);var v=t._parent;return v&&v.instanceOf("wcFrame")&&1===v._panelList.length&&v.pos(s.left+l/2+20,s.top+c/2+20,!0),this.__update(!0),v&&v.instanceOf("wcFrame")&&u!==v._isFloating&&(v._isFloating?t.__trigger(e.EVENT.DETACHED):t.__trigger(e.EVENT.ATTACHED)),t.__trigger(e.EVENT.MOVED),t},findPanels:function(t){for(var e=[],a=0;a<this._frameList.length;++a)for(var r=this._frameList[a],o=0;o<r._panelList.length;++o){var i=r._panelList[o];t&&i._type!==t||e.push(i)}return e},startLoading:function(t,e,a){if(!this.$loading){this.$loading=$('<div class="wcLoadingContainer"></div>'),this.$outer.append(this.$loading);var r=$('<div class="wcLoadingBackground"></div>');"number"!=typeof e&&(e=.4),r.css("opacity",e),this.$loading.append(r);var o=$('<div class="wcLoadingIconContainer"><i class="wcLoadingIcon '+this._options.loadingClass+'"></i></div>');if(this.$loading.append(o),t){var i=$('<span class="wcLoadingLabel">'+t+"</span>");this.$loading.append(i)}"number"!=typeof a&&(a=1),o.css("opacity",a),i&&i.css("opacity",a)}},finishLoading:function(t){if(this.$loading)if(t>0){var e=this;this.$loading.fadeOut(t,function(){e.$loading.remove(),e.$loading=null})}else this.$loading.remove(),this.$loading=null},on:function(t,e){return t?(this._events[t]||(this._events[t]=[]),-1!==this._events[t].indexOf(e)?!1:(this._events[t].push(e),!0)):!1},off:function(t,e){if("undefined"==typeof t)this._events={};else if(this._events[t])if("undefined"==typeof e)this._events[t]=[];else for(var a=0;a<this._events[t].length;++a)if(this._events[t][a]===e){this._events[t].splice(a,1);break}},trigger:function(t,e){if(!t)return!1;for(var a=[],r=0;r<this._frameList.length;++r)for(var o=this._frameList[r],i=0;i<o._panelList.length;++i){var n=o._panelList[i];a=a.concat(n.__trigger(t,e))}return a.concat(this.__trigger(t,e))},basicMenu:function(t,e,a){console.log("WARNING: wcDocker.basicMenu is deprecated, please use wcDocker.menu instead."),this.menu(t,e,a)},menu:function(t,a,r){var o=this;$.contextMenu({selector:t,build:function(t,i){for(var n,s=o.__mouse(i),l=0;l<o._frameList.length;++l){var c=t.hasClass("wcFrame")&&t||t.parents(".wcFrame");if(o._frameList[l].$frame[0]===c[0]){n=o._frameList[l];break}}var h=!1;$(i.target).hasClass("wcTabScroller")&&(h=!0);for(var u={},l=0;l<o._dockPanelTypeList.length;++l){var d=o._dockPanelTypeList[l];if(!d.options.isPrivate){if(d.options.limit>0&&o.findPanels(d.name).length>=d.options.limit)continue;var f=null,p=null,b=d.name;d.options&&(d.options.faicon&&(p=d.options.faicon),d.options.icon&&(f=d.options.icon),d.options.title&&(b=d.options.title)),u[d.name]={name:b,icon:f,faicon:p,className:"wcMenuCreatePanel"}}}var _=0,v={},m=a;"function"==typeof a&&(m=a(t,i));for(var l=0;l<m.length;++l)if($.isEmptyObject(m[l]))v["sep"+_++]="---------";else{var w=m[l].callback;w&&!function(t,e){t.callback=function(t,a){var r=null,i=a.$trigger.parents(".wcFrame").first();if(i.length)for(var n=0;n<o._frameList.length;++n)i[0]===o._frameList[n].$frame[0]&&(r=o._frameList[n].panel());e(t,a,r)}}(m[l],w),v[m[l].name]=m[l]}var g={},T="";if(o.isCollapseEnabled()){var x=n.$collapse.children("div");T=x.hasClass("wcCollapseLeft")?" wcCollapseLeft":x.hasClass("wcCollapseRight")?" wcCollapseRight":" wcCollapseBottom",g[e.DOCK.LEFT]={name:e.DOCK.LEFT,faicon:"sign-in wcCollapseLeft wcCollapsible"},g[e.DOCK.RIGHT]={name:e.DOCK.RIGHT,faicon:"sign-in wcCollapseRight wcCollapsible"},g[e.DOCK.BOTTOM]={name:e.DOCK.BOTTOM,faicon:"sign-in wcCollapseBottom wcCollapsible"}}var y=v;if(r&&($.isEmptyObject(v)||(y["sep"+_++]="---------"),h?(y["Close Panel"]={name:"Remove Panel",faicon:"close",disabled:!n.panel().closeable()},o.isCollapseEnabled()&&(n.isCollapser()?y["Attach Panel"]={name:"Dock Panel",faicon:"sign-out"+T+" wcCollapsed",disabled:!n.panel().moveable()}:y.fold1={name:"Collapse Panel",faicon:"sign-in"+T+" wcCollapsible",items:g,disabled:!n.panel().moveable()}),n._isFloating||(y["Detach Panel"]={name:"Float Panel",faicon:"level-up",disabled:!n.panel().moveable()||n.panel()._isPlaceholder}),y["sep"+_++]="---------",y.fold2={name:"Add Panel",faicon:"columns",items:u,disabled:!(n.panel()._titleVisible&&(!n._isFloating||-1===o._modalList.indexOf(n))),className:"wcMenuCreatePanel"}):(n&&(y["Close Panel"]={name:"Remove Panel",faicon:"close",disabled:!n.panel().closeable()},o.isCollapseEnabled()&&(n.isCollapser()?y["Attach Panel"]={name:"Dock Panel",faicon:"sign-out"+T+" wcCollapsed",disabled:!n.panel().moveable()}:y.fold1={name:"Collapse Panel",faicon:"sign-in"+T+" wcCollapsible",items:g,disabled:!n.panel().moveable()}),n._isFloating||(y["Detach Panel"]={name:"Float Panel",faicon:"level-up",disabled:!n.panel().moveable()||n.panel()._isPlaceholder}),y["sep"+_++]="---------"),y.fold2={name:"Add Panel",faicon:"columns",items:u,disabled:!(!n||!n._isFloating&&n.panel().moveable()),className:"wcMenuCreatePanel"}),n&&!n._isFloating&&n.panel().moveable())){var B=n.__rect();o._ghost=new(o.__getClass("wcGhost"))(B,s,o),n.__checkAnchorDrop(s,!1,o._ghost,!0,!1,!1),o._ghost.$ghost.hide()}return{callback:function(t,a){if("Close Panel"===t)setTimeout(function(){n.panel().close()},10);else if("Detach Panel"===t)o.movePanel(n.panel(),e.DOCK.FLOAT,!1);else if("Attach Panel"===t){var r=n.$collapse.children("div"),i=e.DOCK.BOTTOM;r.hasClass("wcCollapseLeft")?i=e.DOCK.LEFT:r.hasClass("wcCollapseRight")&&(i=e.DOCK.RIGHT);var s={};switch(i){case e.DOCK.LEFT:s.w=n.$frame.width();break;case e.DOCK.RIGHT:s.w=n.$frame.width();break;case e.DOCK.BOTTOM:s.h=n.$frame.height()}var l=o._collapser[e.DOCK.LEFT]._parent.right();n.collapse(!0),o.movePanel(n.panel(),i,l,s)}else if(t===e.DOCK.LEFT)o.movePanel(n.panel(),e.DOCK.LEFT,e.COLLAPSED);else if(t===e.DOCK.RIGHT)o.movePanel(n.panel(),e.DOCK.RIGHT,e.COLLAPSED);else if(t===e.DOCK.BOTTOM)o.movePanel(n.panel(),e.DOCK.BOTTOM,e.COLLAPSED);else if(o._ghost&&n){var c=o._ghost.anchor(),l=n.panel();c.item&&(l=c.item._parent);var h=o.addPanel(t,c.loc,l,o._ghost.rect());h.focus()}},events:{show:function(t){!function(e){for(var a={},r=t.$menu.find(".context-menu-item"),o=0;o<r.length;++o){var i=$(r[o]),n=i.find("span");n.length&&(a[n[0].innerHTML]=i)}!function s(t){for(var e in t){var r=t[e],o=a[r.name];if(o){var i=$('<div class="wcMenuIcon">');if(o.prepend(i),r.icon&&i.addClass(r.icon),r.faicon&&i.addClass("fa fa-menu fa-"+r.faicon+" fa-lg fa-fw"),o.hasClass("context-menu-submenu")){var n=$('<div class="wcMenuSubMenu fa fa-caret-right fa-lg">');o.append(n)}}r.items&&s(r.items)}}(e)}(y)},hide:function(t){o._ghost&&(o._ghost.destroy(),o._ghost=!1)}},animation:{duration:250,show:"fadeIn",hide:"fadeOut"},reposition:!1,autoHide:!0,zIndex:200,items:y}}})},bypassMenu:function(){this._menuTimer&&clearTimeout(this._menuTimer);for(var t in $.contextMenu.menus){var e=$.contextMenu.menus[t].selector;$(e).contextMenu(!1)}var a=this;this._menuTimer=setTimeout(function(){for(var t in $.contextMenu.menus){var e=$.contextMenu.menus[t].selector;$(e).contextMenu(!0)}a._menuTimer=null},0)},save:function(){var t={};t.floating=[];for(var a=0;a<this._floatingList.length;++a)t.floating.push(this._floatingList[a].__save());return t.root=this._root.__save(),$.isEmptyObject(this._collapser)||(t.collapsers={left:this._collapser[e.DOCK.LEFT].__save(),right:this._collapser[e.DOCK.RIGHT].__save(),bottom:this._collapser[e.DOCK.BOTTOM].__save()}),JSON.stringify(t,function(t,e){return e==1/0?"Infinity":e})},restore:function(t){var a=JSON.parse(t,function(t,e){return"Infinity"===e?1/0:e});this.clear(),this._root=this.__create(a.root,this,this.$container),this._root.__restore(a.root,this);for(var r=0;r<a.floating.length;++r){var o=this.__create(a.floating[r],this,this.$container);o.__restore(a.floating[r],this)}if(this.__forceUpdate(!1),!$.isEmptyObject(a.collapsers)&&this.isCollapseEnabled()){this.__initCollapsers(),this._collapser[e.DOCK.LEFT].__restore(a.collapsers.left,this),this._collapser[e.DOCK.RIGHT].__restore(a.collapsers.right,this),this._collapser[e.DOCK.BOTTOM].__restore(a.collapsers.bottom,this);var i=this;setTimeout(function(){i.__forceUpdate()})}},clear:function(){this._root=null,this.trigger(e.EVENT.CLOSED);for(var t=0;t<this._splitterList.length;++t)this._splitterList[t].__destroy();for(var t=0;t<this._frameList.length;++t)this._frameList[t].__destroy();for($.isEmptyObject(this._collapser)||(this._collapser[e.DOCK.LEFT].__destroy(),this._collapser[e.DOCK.RIGHT].__destroy(),this._collapser[e.DOCK.BOTTOM].__destroy(),this._collapser={});this._frameList.length;)this._frameList.pop();for(;this._floatingList.length;)this._floatingList.pop();for(;this._splitterList.length;)this._splitterList.pop()},__init:function(){function t(t){var e=g.__mouse(t);g._mouseOrigin.x=e.x,g._mouseOrigin.y=e.y}function a(t){var a=g.__mouse(t);if(3===a.which)return!0;if($("body").removeClass("wcDisableSelection"),g._draggingFrame)for(var r=0;r<g._frameList.length;++r)g._frameList[r].__shadow(!1);if(g._ghost&&(g._draggingFrame||g._creatingPanel)){var o=g._ghost.anchor();if(g._draggingFrame){if(o){if(!o.self&&void 0!==o.loc)if(o.tab&&o.item._parent._parent==g._draggingFrame)g._draggingFrame.tabOrientation(o.tab);else{var i=0;g._draggingFrameTab?i=parseInt($(g._draggingFrameTab).attr("id")):g._draggingFrame.panel(0);var n;if(o.item&&(n=o.item._parent),g._draggingFrame._panelList.indexOf(n)>-1){if(1===g._draggingFrame._panelList.length)return;for(var r=0;r<g._draggingFrame._panelList.length;++r)if(n!==g._draggingFrame._panelList[r]){n=g._draggingFrame._panelList[r],i--;break}}var s=null;if(s=g._draggingFrameTab?g._draggingFrame.panel(parseInt($(g._draggingFrameTab).attr("id"))):g._draggingFrame.panel(),n=g.movePanel(s,o.loc,n,g._ghost.rect()),n._parent.panel(n._parent._panelList.length-1,!0),g._draggingFrameTab){var l=n._parent;l&&l.instanceOf("wcFrame")&&(i+=l._panelList.length)}else{var c=g._ghost.rect();for(c.tabOrientation||(c.tabOrientation=g._draggingFrame.tabOrientation());g._draggingFrame.panel();)g.movePanel(g._draggingFrame.panel(),e.DOCK.STACKED,n,c)}var l=n._parent;l&&l.instanceOf("wcFrame")&&l.panel(i),g.__focus(l)}}else if(g._draggingFrameTab||g._draggingFrame.panel(0),g._draggingFrameTab||!g.__isLastFrame(g._draggingFrame)){var n=g._draggingFrame.panel(parseInt($(g._draggingFrameTab).attr("id")));if(g.movePanel(n,e.DOCK.FLOAT,null,g._ghost.__rect()),!g._draggingFrameTab)for(;g._draggingFrame.panel();)g.movePanel(g._draggingFrame.panel(),e.DOCK.STACKED,n,{tabOrientation:g._draggingFrame._tabOrientation});var l=n._parent;l&&l.instanceOf("wcFrame")&&(l.pos(a.x,a.y+g._ghost.__rect().h/2-10,!0),l._size.x=g._ghost.__rect().w,l._size.y=g._ghost.__rect().h),l.__update(),g.__focus(l)}}else if(g._creatingPanel){var h=e.DOCK.FLOAT,u=null;o&&(h=o.loc,u=o.item?o.item._parent:o.panel),g.addPanel(g._creatingPanel,h,u,g._ghost.rect())}g._ghost.destroy(),g._ghost=null,g.trigger(e.EVENT.END_DOCK),g.__update()}return g._draggingSplitter&&(g._draggingSplitter.$pane[0].removeClass("wcResizing"),g._draggingSplitter.$pane[1].removeClass("wcResizing")),g._draggingSplitter=null,g._draggingFrame=null,g._draggingFrameSizer=null,g._draggingFrameTab=null,g._draggingFrameTopper=!1,g._draggingCustomTabFrame=null,g._removingPanel=null,!0}function r(t){x=t;var e=g.__mouse(t);if(!(3!==e.which&&(g._draggingSplitter||g._draggingFrameSizer||g._draggingCustomTabFrame||g._ghost||g._draggingFrame||g._draggingFrameTab)))return!0;var a=(new Date).getTime();if(a-T<g._options.responseRate)return y||(y=setTimeout(function(){T=0,y=0,r(x)},g._options.responseRate)),!0;if(T=(new Date).getTime(),g._draggingSplitter)g._draggingSplitter.__moveBar(e);else if(g._draggingFrameSizer){var o=g.$container.offset();e.x+=o.left,e.y+=o.top,g._draggingFrame.__resize(g._draggingFrameSizer,e),g._draggingFrame.__update()}else if(g._draggingCustomTabFrame){if(g._draggingCustomTabFrame.moveable()){var i=$(t.target).hasClass("wcPanelTab")?$(t.target):$(t.target).parents(".wcPanelTab");g._draggingFrameTab&&i&&i.length&&g._draggingFrameTab!==t.target&&(g._draggingFrameTab=g._draggingCustomTabFrame.moveTab(parseInt($(g._draggingFrameTab).attr("id")),parseInt(i.attr("id"))))}}else if(g._ghost)if(g._draggingFrame){g._ghost.__move(e);var n=!(g._draggingFrame._isFloating||1===e.which);if(g._draggingFrame.__checkAnchorDrop(e,!0,g._ghost,g._draggingFrame._panelList.length>1&&g._draggingFrameTab,g._draggingFrameTopper,!g.__isLastFrame(g._draggingFrame))){g._draggingFrame.__shadow(!1);var s=$(document.elementFromPoint(e.x,e.y)),i=s.hasClass("wcPanelTab")?s:s.parents(".wcPanelTab");g._draggingFrameTab&&i.length&&g._draggingFrameTab!==i[0]&&(g._draggingFrameTab=g._draggingFrame.__tabMove(parseInt($(g._draggingFrameTab).attr("id")),parseInt(i.attr("id"))))}else{if((new Date).getTime()-B<g._options.moveStartDelay)return;if(g._draggingFrame.__shadow(!0),g.__focus(),!n)for(var l=0;l<g._frameList.length;++l)if(g._frameList[l]!==g._draggingFrame&&g._frameList[l].__checkAnchorDrop(e,!1,g._ghost,!0,g._draggingFrameTopper,!g.__isLastFrame(g._draggingFrame)))return void g._draggingFrame.__shadow(!0);g._ghost.anchor(e,null)}}else g._creatingPanel&&g._ghost.update(e);else g._draggingFrame&&!g._draggingFrameTab&&(g._draggingFrame.__move(e),g._draggingFrame.__update());return!0}function o(){return!1}function i(){g._ghost&&g._ghost.$ghost.stop().fadeIn(200)}function n(){g._ghost&&g._ghost.$ghost.stop().fadeOut(200)}function s(t){g._modalList.length&&g._modalList[g._modalList.length-1].__focus(!0)}function l(t){t.preventDefault(),t.returnValue=!1}function c(){$("body").addClass("wcDisableSelection")}function h(t){$("body").removeClass("wcDisableSelection");for(var e=0;e<g._tabList.length;++e){var a=g._tabList[e];if(a.$close[0]===this){var r=a.tab();return a.removeTab(r),void t.stopPropagation()}if(a.$tabLeft[0]===this)return a._tabScrollPos-=a.$tabBar.width()/2,a._tabScrollPos<0&&(a._tabScrollPos=0),a.__updateTabs(),void t.stopPropagation();if(a.$tabRight[0]===this)return a._tabScrollPos+=a.$tabBar.width()/2,a.__updateTabs(),void t.stopPropagation()}}function u(){$("body").removeClass("wcDisableSelection");for(var t=0;t<g._frameList.length;++t){var a=g._frameList[t];if(a.$close[0]===this)return void g.__closePanel(a.panel());if(a.$collapse[0]===this){var r=a.$collapse.children("div"),o=e.DOCK.BOTTOM;if(r.hasClass("wcCollapseLeft")?o=e.DOCK.LEFT:r.hasClass("wcCollapseRight")&&(o=e.DOCK.RIGHT),a.isCollapser()){var i={};switch(o){case e.DOCK.LEFT:i.w=a.$frame.width();break;case e.DOCK.RIGHT:i.w=a.$frame.width();break;case e.DOCK.BOTTOM:i.h=a.$frame.height()}var n=g._collapser[e.DOCK.LEFT]._parent.right();a.collapse(!0),g.movePanel(a.panel(),o,n,i)}else g.movePanel(a.panel(),o,e.COLLAPSED);return void g.__update()}if(a.$tabLeft[0]===this)return a._tabScrollPos-=a.$tabBar.width()/2,a._tabScrollPos<0&&(a._tabScrollPos=0),void a.__updateTabs();if(a.$tabRight[0]===this)return a._tabScrollPos+=a.$tabBar.width()/2,void a.__updateTabs();for(var s=0;s<a._buttonList.length;++s)if(a._buttonList[s][0]===this){var l=a._buttonList[s],c={name:l.data("name"),isToggled:!1};l.hasClass("wcFrameButtonToggler")&&(l.toggleClass("wcFrameButtonToggled"),l.hasClass("wcFrameButtonToggled")&&(c.isToggled=!0));var h=a.panel();return h.buttonState(c.name,c.isToggled),void h.__trigger(e.EVENT.BUTTON,c)}}}function d(t){var e=g.__mouse(t);if(2===e.which)for(var a=parseInt($(this).attr("id")),r=0;r<g._frameList.length;++r){var o=g._frameList[r];if(o.$tabBar[0]===$(this).parents(".wcFrameTitleBar")[0]){var i=o._panelList[a];return void(g._removingPanel===i&&(g.removePanel(i),g.__update()))}}}function f(t){var e=g.__mouse(t);if(1!==e.which)return!0;$("body").addClass("wcDisableSelection");for(var a=0;a<g._splitterList.length;++a)if(g._splitterList[a].$bar[0]===this){g._draggingSplitter=g._splitterList[a],g._draggingSplitter.$pane[0].addClass("wcResizing"),g._draggingSplitter.$pane[1].addClass("wcResizing"),t.preventDefault();break}return!0}function p(t){var a=g.__mouse(t);if(3===a.which)return!0;if($(t.target).hasClass("wcFrameButton")||$(t.target).parents(".wcFrameButton").length)return!0;B=(new Date).getTime(),$("body").addClass("wcDisableSelection");for(var r=0;r<g._frameList.length;++r)if(g._frameList[r].$titleBar[0]==this||g._frameList[r].$tabBar[0]==this){g._draggingFrame=g._frameList[r],g._draggingFrame.__anchorMove(a);var o=$(t.target).hasClass("wcPanelTab")?$(t.target):$(t.target).parents(".wcPanelTab");if(o&&o.length){var i=parseInt(o.attr("id"));g._draggingFrame.panel(i,!0),g._draggingFrameTab=o[0],$(window).focus()}var n=!0;if(g._draggingFrameTab?o.hasClass("wcNotMoveable")&&(n=!1):g._draggingFrame._isFloating&&1===a.which&&(n=!1),n){!g._draggingFrameTab&&g._draggingFrame.isCollapser()&&(g._draggingFrameTab=g._draggingFrame.panel()),g._draggingFrameTopper=$(t.target).parents(".wcFrameTopper").length>0;var s=g._draggingFrame.__rect();g._ghost=new(g.__getClass("wcGhost"))(s,a,g),g._draggingFrame.__checkAnchorDrop(a,!0,g._ghost,!0,g._draggingFrameTopper,!g.__isLastFrame(g._draggingFrame)),g.trigger(e.EVENT.BEGIN_DOCK)}break}for(var r=0;r<g._tabList.length;++r)if(g._tabList[r].$tabBar[0]==this){g._draggingCustomTabFrame=g._tabList[r];var o=$(t.target).hasClass("wcPanelTab")?$(t.target):$(t.target).parents(".wcPanelTab");if(o&&o.length){var i=parseInt(o.attr("id"));g._draggingCustomTabFrame.tab(i,!0),g._draggingFrameTab=o[0]}break}return g._draggingFrame&&g.__focus(g._draggingFrame),!0}function b(t){var e=g.__mouse(t);if(3===e.which)return!0;for(var a=0;a<g._frameList.length;++a)if(g._frameList[a].panel()&&g._frameList[a].panel().layout().scene()[0]==this){setTimeout(function(){g.__focus(g._frameList[a])},10);break}return!0}function _(t){var e=g.__mouse(t);if(3===e.which)return!0;$("body").addClass("wcDisableSelection");for(var a=0;a<g._frameList.length;++a)if(g._frameList[a]._isFloating){if(g._frameList[a].$top[0]==this){g._draggingFrame=g._frameList[a],g._draggingFrameSizer=["top"];break}if(g._frameList[a].$bottom[0]==this){g._draggingFrame=g._frameList[a],g._draggingFrameSizer=["bottom"];break}if(g._frameList[a].$left[0]==this){g._draggingFrame=g._frameList[a],g._draggingFrameSizer=["left"];break}if(g._frameList[a].$right[0]==this){g._draggingFrame=g._frameList[a],g._draggingFrameSizer=["right"];break}if(g._frameList[a].$corner1[0]==this){g._draggingFrame=g._frameList[a],g._draggingFrameSizer=["top","left"];break}if(g._frameList[a].$corner2[0]==this){g._draggingFrame=g._frameList[a],g._draggingFrameSizer=["top","right"];break}if(g._frameList[a].$corner3[0]==this){g._draggingFrame=g._frameList[a],g._draggingFrameSizer=["bottom","right"];break}if(g._frameList[a].$corner4[0]==this){g._draggingFrame=g._frameList[a],g._draggingFrameSizer=["bottom","left"];break}}return g._draggingFrame&&g.__focus(g._draggingFrame),!0}function v(t){var a=g.__mouse(t);if(1!==a.which)return!0;var r=$(this).data("panel"),o=g.panelTypeInfo(r);if(o){var i={x:a.x-250,y:a.y,w:500,h:500};$("body").addClass("wcDisableSelection"),g._ghost=new(g.__getClass("wcGhost"))(i,a,g),g._ghost.update(a),g._ghost.anchor(a,g._ghost.anchor()),g._creatingPanel=r,g.__focus(),g.trigger(e.EVENT.BEGIN_DOCK)}}function m(t){var e=g.__mouse(t);if(2!==e.which)return!0;for(var a=parseInt($(this).attr("id")),r=0;r<g._frameList.length;++r){var o=g._frameList[r];if(o.$tabBar[0]===$(this).parents(".wcFrameTitleBar")[0]){var i=o._panelList[a];return i&&i.closeable()&&(g._removingPanel=o._panelList[a]),!0}}return!0}function w(t){27==t.keyCode&&g._ghost&&(g._ghost.destroy(),g._ghost=!1,g.trigger(e.EVENT.END_DOCK),g._draggingFrame&&g._draggingFrame.__shadow(!1),g._creatingPanel=!1,g._draggingSplitter=null,g._draggingFrame=null,g._draggingFrameSizer=null,g._draggingFrameTab=null,g._draggingFrameTopper=!1,g._draggingCustomTabFrame=null,g._removingPanel=null)}var g=this;this.__compatibilityCheck(),this._root=null,this.__addPlaceholder(),this._options.allowContextMenu&&this.menu(".wcFrame",[],!0),this.theme(this._options.theme),this._updateId=setInterval(function(){if(g._dirty){g._dirty=!1,g._root&&g._root.__update(g._dirtyDontMove);for(var t=0;t<g._floatingList.length;++t)g._floatingList[t].__update()}},this._options.responseRate),$(window).resize(this.__resize.bind(this)),$("body").on("contextmenu",".wcSplitterBar",o),$("body").on("mouseenter",".wcMenuCreatePanel",i),$("body").on("mouseleave",".wcMenuCreatePanel",n),$("body").on("mousemove",r),$("body").on("touchmove",r),$("body").on("mousedown",t),$("body").on("touchstart",t),$("body").on("mousedown",".wcModalBlocker",s),$("body").on("touchstart",".wcModalBlocker",s),$("body").on("mousedown",".wcPanelTab",l),$("body").on("touchstart",".wcPanelTab",l),$("body").on("mousedown",".wcFrameButtonBar > .wcFrameButton",c),$("body").on("touchstart",".wcFrameButtonBar > .wcFrameButton",c),$("body").on("mousedown",".wcFrameTitleBar",p),$("body").on("touchstart",".wcFrameTitleBar",p),$("body").on("mousedown",".wcSplitterBar",f),$("body").on("touchstart",".wcSplitterBar",f),$("body").on("mousedown",".wcPanelTab",m),$("body").on("touchstart",".wcPanelTab",m),$("body").on("mouseup",".wcPanelTab",d),$("body").on("touchend",".wcPanelTab",d),$("body").on("mousedown",".wcLayout",b),$("body").on("touchstart",".wcLayout",b),$("body").on("mousedown",".wcFrameEdge",_),$("body").on("touchstart",".wcFrameEdge",_),$("body").on("mousedown",".wcCreatePanel",v),$("body").on("touchstart",".wcCreatePanel",v),$("body").on("mouseup",a),$("body").on("touchend",a),$("body").on("click",".wcCustomTab .wcFrameButton",h),$("body").on("click",".wcFrameButtonBar > .wcFrameButton",u),$("body").on("keyup",w);var T=(new Date).getTime(),x=null,y=0,B=0},__testLoadFinished:function(){for(var t=0;t<this._frameList.length;++t)for(var a=this._frameList[t],r=0;r<a._panelList.length;++r){var o=a._panelList[r];if(o._isVisible&&!o._initialized)return;if(o.$loading)return}var i=this;setTimeout(function(){i.trigger(e.EVENT.LOADED),i.off(e.EVENT.LOADED);for(var t=0;t<i._frameList.length;++t)for(var a=i._frameList[t],r=0;r<a._panelList.length;++r){var o=a._panelList[r];o.off(e.EVENT.LOADED)}},0)},__compatibilityCheck:function(){function t(){for(var t="transform WebkitTransform MozTransform OTransform msTransform".split(" "),e=document.createElement("div"),a=0;a<t.length;a++)if(e&&void 0!==e.style[t[a]])return!0;return!1}Function.prototype.bind||(Function.prototype.bind=function(t){if("function"!=typeof this)throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");var e=Array.prototype.slice.call(arguments,1),a=this,r=function(){},o=function(){return a.apply(this instanceof r&&t?this:t,e.concat(Array.prototype.slice.call(arguments)))};return r.prototype=this.prototype,o.prototype=new r,o}),Array.prototype.indexOf||(Array.prototype.indexOf=function(t){var e=this.length>>>0,a=Number(arguments[1])||0;for(a=0>a?Math.ceil(a):Math.floor(a),0>a&&(a+=e);e>a;a++)if(a in this&&this[a]===t)return a;return-1});var e=function(){for(var t=3,e=document.createElement("div"),a=e.getElementsByTagName("i");e.innerHTML="<!--[if gt IE "+ ++t+"]><i></i><![endif]-->",a[0];);return t>4?t:void 0}();9>e?this._canOrientTabs=!1:this._canOrientTabs=t();var a=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);$("body").addClass(a?"wcMobile":"wcDesktop")},__findInner:function(){function t(t){return!!(t&&t.instanceOf("wcFrame")&&t.panel()&&!t.panel().moveable()||t.instanceOf("wcCollapser"))}for(var e=this._root;e&&e.instanceOf("wcSplitter");){var a=t(e._pane[0]),r=t(e._pane[1]);if(a&&!r)e=e._pane[1];else if(r&&!a)e=e._pane[0];else if(!a&&!r)break}return e},__initCollapsers:function(){function t(t){this._collapser[t]=this.__addCollapser(t,a),a=this._collapser[t]._parent,this._frameList.push(this._collapser[t]._drawer._frame)}if(this.isCollapseEnabled()&&$.isEmptyObject(this._collapser)){var a=this.__findInner();t.call(this,e.DOCK.LEFT),t.call(this,e.DOCK.RIGHT),t.call(this,e.DOCK.BOTTOM);var r=this;setTimeout(function(){r.__update()})}},__update:function(t){this._dirty=!0,this._dirtyDontMove=t},__forceUpdate:function(t){this._dirty=!1,this._root&&this._root.__update(t);for(var e=0;e<this._floatingList.length;++e)this._floatingList[e].__update()},__orderPanels:function(){if(0!==this._floatingList.length){var t=this._floatingList.indexOf(this._focusFrame),a=this._floatingList.length-1;this._floatingList.splice(a,0,this._floatingList.splice(t,1)[0]);for(var r,o=(this._floatingList.length,10),i=5,n=0;n<this._floatingList.length;++n)if(r=this._floatingList[n]){var s=o+n*i;r.$frame.css("z-index",s),r.__trigger(e.EVENT.ORDER_CHANGED,s)}}},__mouse:function(t){if(t.originalEvent&&(t.originalEvent.touches||t.originalEvent.changedTouches)){var e=t.originalEvent.touches[0]||t.originalEvent.changedTouches[0];return{x:e.clientX,y:e.clientY,which:1}}return{x:t.clientX||t.pageX,y:t.clientY||t.pageY,which:t.which||1}},__resize:function(t){this._resizeData.time=new Date,this._resizeData.timeout||(this._resizeData.timeout=!0,setTimeout(this.__resizeEnd.bind(this),this._resizeData.delta),this.__trigger(e.EVENT.RESIZE_STARTED)),this.__trigger(e.EVENT.RESIZED),this.__update(!1)},__resizeEnd:function(){new Date-this._resizeData.time<this._resizeData.delta?setTimeout(this.__resizeEnd.bind(this),this._resizeData.delta):(this._resizeData.timeout=!1,this.__trigger(e.EVENT.RESIZE_ENDED))},__focus:function(t,a){var r=this._focusFrame!=t;if(this._focusFrame){this._focusFrame._isFloating&&this._focusFrame.$frame.removeClass("wcFloatingFocus");var o=this._focusFrame;this._focusFrame=null,o.__trigger(e.EVENT.LOST_FOCUS),o.isCollapser()&&r&&(o.collapse(),o.panel(-1))}this._focusFrame=t, this._focusFrame&&(this._focusFrame._isFloating&&(this._focusFrame.$frame.addClass("wcFloatingFocus"),r&&$("body").append(this._focusFrame.$frame)),this._focusFrame.__focus(a),this._focusFrame.__trigger(e.EVENT.GAIN_FOCUS)),this.__orderPanels()},__trigger:function(t,e){if(t){var a=[];if(this._events[t])for(var r=this._events[t].slice(0),o=0;o<r.length;++o)a.push(r[o].call(this,e));return a}},__isLastPanel:function(t){for(var e=0;e<this._frameList.length;++e){var a=this._frameList[e];if(!a._isFloating&&!a.isCollapser())for(var r=0;r<a._panelList.length;++r){var o=a._panelList[r];if(o!==t&&o.moveable())return!1}}return!0},__isLastFrame:function(t){for(var e=0;e<this._frameList.length;++e){var a=this._frameList[e];if(!a._isFloating&&a!==t&&!a.isCollapser())for(var r=0;r<a._panelList.length;++r){var o=a._panelList[r];if(o.moveable())return!1}}return!0},__create:function(t,a,r){switch(t.type){case"wcSplitter":var o=new(this.__getClass("wcSplitter"))(r,a,t.horizontal);return o.scrollable(0,!1,!1),o.scrollable(1,!1,!1),o;case"wcFrame":var i=new(this.__getClass("wcFrame"))(r,a,t.floating);return this._frameList.push(i),t.floating&&this._floatingList.push(i),i;case"wcPanel":if(t.panelType===e.PANEL_PLACEHOLDER)return this._placeholderPanel||(this._placeholderPanel=new(this.__getClass("wcPanel"))(a,e.PANEL_PLACEHOLDER,{}),this._placeholderPanel._isPlaceholder=!0,this._placeholderPanel.__container(this.$transition),this._placeholderPanel._panelObject=new function(t){t.title(!1),t.closeable(!1)}(this._placeholderPanel),this._placeholderPanel.__container(r)),this._placeholderPanel;for(var n=0;n<this._dockPanelTypeList.length;++n)if(this._dockPanelTypeList[n].name===t.panelType){var s=new(this.__getClass("wcPanel"))(a,t.panelType,this._dockPanelTypeList[n].options);s.__container(this.$transition);var l=this._dockPanelTypeList[n].options&&this._dockPanelTypeList[n].options.options||{};s._panelObject=new this._dockPanelTypeList[n].options.onCreate(s,l),s.__container(r);break}return s}return null},__addPanelGrouped:function(t,a,r){var o=a;return o&&o.instanceOf("wcPanel")&&(o=a._parent),o&&o.instanceOf("wcFrame")?(r&&r.tabOrientation&&o.tabOrientation(r.tabOrientation),void o.addPanel(t)):void this.__addPanelAlone(t,e.DOCK.LEFT,a,r)},__addPanelAlone:function(t,a,r,o){if(r&&r._shift){var i=r;r=r._shift,i._shift=void 0}if(o){var n=this.$container.width(),s=this.$container.height();o.hasOwnProperty("x")&&(o.x=this.__stringToPixel(o.x,n)),o.hasOwnProperty("y")&&(o.y=this.__stringToPixel(o.y,s)),o.hasOwnProperty("w")||(o.w=t.initSize().x),o.hasOwnProperty("h")||(o.h=t.initSize().y),o.w=this.__stringToPixel(o.w,n),o.h=this.__stringToPixel(o.h,s),t._size.x=o.w,t._size.y=o.h}if(r===e.COLLAPSED){if(this.__initCollapsers(),this._collapser[a]){r=this._collapser[a]._drawer._frame.addPanel(t);var l=this;return setTimeout(function(){l.__update()}),t}return console.log('ERROR: Attempted to collapse panel "'+t._type+'" to invalid location: '+a),!1}if(a===e.DOCK.FLOAT||a===e.DOCK.MODAL){var c=new(this.__getClass("wcFrame"))(this.$container,this,!0);if(o&&o.tabOrientation&&c.tabOrientation(o.tabOrientation),this._frameList.push(c),this._floatingList.push(c),this.__focus(c),c.addPanel(t),c.pos(t._pos.x,t._pos.y,!1),a===e.DOCK.MODAL&&(c.$modalBlocker=$('<div class="wcModalBlocker"></div>'),c.$frame.prepend(c.$modalBlocker),t.moveable(!1),c.$frame.addClass("wcModal"),this._modalList.push(c)),o){var h=c.pos(void 0,void 0,!0);o.hasOwnProperty("x")&&(h.x=o.x+o.w/2),o.hasOwnProperty("y")&&(h.y=o.y+o.h/2),c.pos(h.x,h.y,!0),c._size={x:o.w,y:o.h}}return void this.__orderPanels()}if(r){for(var u=r._parent,d=r;u&&!u.instanceOf("wcSplitter")&&!u.instanceOf("wcDocker");)d=u,u=u._parent;if(u&&u.instanceOf("wcSplitter")){var f,p=u.pane(0),b=(u.pane(1),{x:-1,y:-1});if(p===d?(f=new(this.__getClass("wcSplitter"))(this.$transition,u,a!==e.DOCK.BOTTOM&&a!==e.DOCK.TOP),b.x=u.$pane[0].width(),b.y=u.$pane[0].height(),u.pane(0,f)):(f=new(this.__getClass("wcSplitter"))(this.$transition,u,a!==e.DOCK.BOTTOM&&a!==e.DOCK.TOP),b.x=u.$pane[1].width(),b.y=u.$pane[1].height(),u.pane(1,f)),f){if(f.scrollable(0,!1,!1),f.scrollable(1,!1,!1),o||(o={w:t._size.x,h:t._size.y}),o)switch(o.w<0&&(o.w=b.x/2),o.h<0&&(o.h=b.y/2),a){case e.DOCK.LEFT:f.pos(o.w/b.x);break;case e.DOCK.RIGHT:f.pos(1-o.w/b.x);break;case e.DOCK.TOP:f.pos(o.h/b.y);break;case e.DOCK.BOTTOM:f.pos(1-o.h/b.y)}else f.pos(.5);c=new(this.__getClass("wcFrame"))(this.$transition,f,!1),this._frameList.push(c),a===e.DOCK.LEFT||a===e.DOCK.TOP?(f.pane(0,c),f.pane(1,d)):(f.pane(0,d),f.pane(1,c)),c.addPanel(t)}return}}var _=this,v=this.$container,c=new(this.__getClass("wcFrame"))(this.$transition,_,!1);if(this._frameList.push(c),_._root){var f=new(this.__getClass("wcSplitter"))(v,_,a!==e.DOCK.BOTTOM&&a!==e.DOCK.TOP);if(f){c._parent=f,f.scrollable(0,!1,!1),f.scrollable(1,!1,!1);var b={x:v.width(),y:v.height()};if(o)switch(o.w<0&&(o.w=b.x/2),o.h<0&&(o.h=b.y/2),a){case e.DOCK.LEFT:f.pos(o.w/b.x);break;case e.DOCK.RIGHT:f.pos(1-o.w/b.x);break;case e.DOCK.TOP:f.pos(o.h/b.y);break;case e.DOCK.BOTTOM:f.pos(1-o.h/b.y)}else f.__findBestPos();a===e.DOCK.LEFT||a===e.DOCK.TOP?(f.pane(0,c),f.pane(1,_._root)):(f.pane(0,_._root),f.pane(1,c)),_._root=f}}else _._root=c,c.__container(v);c.addPanel(t)},__addCollapser:function(t,a){var r=null;if(a){for(var o=a._parent,i=a;o&&!o.instanceOf("wcSplitter")&&!o.instanceOf("wcDocker");)i=o,o=o._parent;var n=new(this.__getClass("wcSplitter"))(this.$transition,o,t!==e.DOCK.BOTTOM&&t!==e.DOCK.TOP);if(o&&o.instanceOf("wcDocker")&&(this._root=n,n.__container(this.$container)),o&&o.instanceOf("wcSplitter")){var s=o.left(),l=(o.right(),{x:-1,y:-1});s===i?(l.x=o.$pane[0].width(),l.y=o.$pane[0].height(),o.pane(0,n)):(n=new(this.__getClass("wcSplitter"))(this.$transition,o,t!==e.DOCK.BOTTOM&&t!==e.DOCK.TOP),l.x=o.$pane[1].width(),l.y=o.$pane[1].height(),o.pane(1,n))}if(n){switch(n.scrollable(0,!1,!1),n.scrollable(1,!1,!1),r=new(this.__getClass("wcCollapser"))(this.$transition,n,t),t){case e.DOCK.TOP:case e.DOCK.LEFT:n.pos(0);break;case e.DOCK.BOTTOM:case e.DOCK.RIGHT:n.pos(1)}t===e.DOCK.LEFT||t===e.DOCK.TOP?(n.pane(0,r),n.pane(1,i)):(n.pane(0,i),n.pane(1,r))}}return r},__addPlaceholder:function(t){this._placeholderPanel&&console.log("WARNING: wcDocker creating placeholder panel when one already exists"),this._placeholderPanel=new(this.__getClass("wcPanel"))(this,e.PANEL_PLACEHOLDER,{}),this._placeholderPanel._isPlaceholder=!0,this._placeholderPanel.__container(this.$transition),this._placeholderPanel._panelObject=new function(t){t.title(!1),t.closeable(!1)}(this._placeholderPanel),t?this.__addPanelGrouped(this._placeholderPanel,t):this.__addPanelAlone(this._placeholderPanel,e.DOCK.TOP),this.__update()},__closePanel:function(t){var e=!1,a=this.panelTypeInfo(t._type);a&&a.isPersistent&&(e=!0,this._persistentList.push(t)),this.removePanel(t,e),this.__update()},__stringToPercent:function(t,e){if("string"==typeof t){if(-1!==t.indexOf("%",t.length-1))return parseFloat(t)/100;if(-1!==t.indexOf("px",t.length-2))return parseFloat(t)/e}return parseFloat(t)},__stringToPixel:function(t,e){if("string"==typeof t){if(-1!==t.indexOf("%",t.length-1))return parseFloat(t)/100*e;if(-1!==t.indexOf("px",t.length-2))return parseFloat(t)}return parseFloat(t)}});for(var b in e)p[b]=e[b];return p.defaultClasses=f,p}),a("wcDocker/iframe",["dcl/dcl","./types","./base"],function(t,e,a){var r=t(a,{declaredClass:"wcIFrame",constructor:function(t,e){this._panel=e,this._layout=e.layout(),this.$container=$(t),this.$frame=null,this.$focus=null,this.$iFrame=null,this._window=null,this._isDocking=!1,this._isHovering=!1,this._boundEvents=[],this._onLoadFuncs=[],this._onClosedFuncs=[],this.__init()},openURL:function(t){this.__clearFrame(),this.$iFrame=$("<iframe>iFrames not supported on your device!</iframe>"),this.$frame.prepend(this.$iFrame),this.__onMoved(),this._window=this.$iFrame[0].contentWindow||this.$iFrame[0],this.__updateFrame(),this._window.location.replace(t),this.$iFrame[0].focus(),this.$iFrame.hover(this.__onHoverEnter.bind(this),this.__onHoverExit.bind(this));var e=this;this.$iFrame.load(function(){for(var t=0;t<e._onLoadFuncs.length;++t)e._onLoadFuncs[t]();e._onLoadFuncs=[]})},openHTML:function(t){this.__clearFrame(),this.$iFrame=$("<iframe>iFrames not supported on your device!</iframe>"),this.$frame.prepend(this.$iFrame),this.__onMoved(),this._window=this.$iFrame[0].contentWindow||this.$iFrame[0],this.__updateFrame(),this._window.document.open(),this._window.document.write(t),this._window.document.close(),this.$iFrame[0].focus(),this.$iFrame.hover(this.__onHoverEnter.bind(this),this.__onHoverExit.bind(this));var e=this;this.$iFrame.load(function(){for(var t=0;t<e._onLoadFuncs.length;++t)e._onLoadFuncs[t]();e._onLoadFuncs=[]})},openSRC:function(t){this.__clearFrame(),this.$iFrame=$("<iframe>iFrames not supported on your device!</iframe>"),this.$frame.prepend(this.$iFrame),this.__onMoved(),this._window=this.$iFrame[0].contentWindow||this.$iFrame[0],this.__updateFrame(),this.$iFrame[0].srcdoc=t,this.$iFrame[0].focus(),this.$iFrame.hover(this.__onHoverEnter.bind(this),this.__onHoverExit.bind(this));var e=this;this.$iFrame.load(function(){for(var t=0;t<e._onLoadFuncs.length;++t)e._onLoadFuncs[t]();e._onLoadFuncs=[]})},onLoaded:function(t){this._onLoadFuncs.push(t)},onClosed:function(t){this._onClosedFuncs.push(t)},show:function(){this.$frame&&this.$frame.removeClass("wcIFrameHidden")},hide:function(){this.$frame&&this.$frame.addClass("wcIFrameHidden")},window:function(){return this._window},destroy:function(){for(;this._boundEvents.length;)this._panel.off(this._boundEvents[0].event,this._boundEvents[0].handler),this._boundEvents.shift();this.__clearFrame(),this._panel=null,this._layout=null,this.$container=null,this.$frame.remove(),this.$frame=null,this.$focus=null},__init:function(){this.$frame=$('<div class="wcIFrame">'),this.$focus=$('<div class="wcIFrameFocus">'),this._panel.docker().$container.append(this.$frame),this.$frame.append(this.$focus),this._boundEvents.push({event:e.EVENT.VISIBILITY_CHANGED,handler:this.__onVisibilityChanged.bind(this)}),this._boundEvents.push({event:e.EVENT.BEGIN_DOCK,handler:this.__onBeginDock.bind(this)}),this._boundEvents.push({event:e.EVENT.END_DOCK,handler:this.__onEndDock.bind(this)}),this._boundEvents.push({event:e.EVENT.MOVE_STARTED,handler:this.__onMoveStarted.bind(this)}),this._boundEvents.push({event:e.EVENT.RESIZE_STARTED,handler:this.__onMoveStarted.bind(this)}),this._boundEvents.push({event:e.EVENT.MOVE_ENDED,handler:this.__onMoveFinished.bind(this)}),this._boundEvents.push({event:e.EVENT.RESIZE_ENDED,handler:this.__onMoveFinished.bind(this)}),this._boundEvents.push({event:e.EVENT.MOVED,handler:this.__onMoved.bind(this)}),this._boundEvents.push({event:e.EVENT.RESIZED,handler:this.__onMoved.bind(this)}),this._boundEvents.push({event:e.EVENT.ATTACHED,handler:this.__onAttached.bind(this)}),this._boundEvents.push({event:e.EVENT.DETACHED,handler:this.__updateFrame.bind(this)}),this._boundEvents.push({event:e.EVENT.GAIN_FOCUS,handler:this.__updateFrame.bind(this)}),this._boundEvents.push({event:e.EVENT.LOST_FOCUS,handler:this.__updateFrame.bind(this)}),this._boundEvents.push({event:e.EVENT.PERSISTENT_OPENED,handler:this.__updateFrame.bind(this)}),this._boundEvents.push({event:e.EVENT.PERSISTENT_CLOSED,handler:this.__updateFrame.bind(this)}),this._boundEvents.push({event:e.EVENT.CLOSED,handler:this.__onClosed.bind(this)}),this._boundEvents.push({event:e.EVENT.ORDER_CHANGED,handler:this.__onOrderChanged.bind(this)});for(var t=0;t<this._boundEvents.length;++t)this._panel.on(this._boundEvents[t].event,this._boundEvents[t].handler);$(window).blur(this.__onBlur.bind(this))},__clearFrame:function(){if(this.$iFrame){for(var t=0;t<this._onClosedFuncs.length;++t)this._onClosedFuncs[t]();this._onClosedFuncs=[],this.$iFrame[0].srcdoc="",this.$iFrame.remove(),this.$iFrame=null,this._window=null}},__updateFrame:function(){if(this.$frame&&this._panel){var t=this._panel.isFloating();this.$frame.toggleClass("wcIFrameFloating",t),t?this.$frame.toggleClass("wcIFrameFloatingFocus",focus):this.$frame.removeClass("wcIFrameFloatingFocus"),this.$frame.toggleClass("wcIFramePanelHidden",!this._panel.isVisible()),this._panel&&this._panel._parent&&this._panel._parent.instanceOf("wcFrame")&&this.$frame.toggleClass("wcDrawer",this._panel._parent.isCollapser())}},__focusFix:function(){this.$frame.css("left",parseInt(this.$frame.css("left"))+1),this.$frame.css("left",parseInt(this.$frame.css("left"))-1)},__onHoverEnter:function(){this._isHovering=!0},__onHoverExit:function(){this._isHovering=!1},__onBlur:function(){this._isHovering&&this.__onFocus()},__onFocus:function(){this._panel&&this.docker(this._panel).__focus(this._panel._parent)},__onVisibilityChanged:function(){this.__updateFrame(),this._panel.isVisible()&&this.__onMoved()},__onBeginDock:function(){this.$frame&&(this._isDocking=!0,this.$frame.addClass("wcIFrameMoving"))},__onEndDock:function(){this.$frame&&(this._isDocking=!1,this.$frame.removeClass("wcIFrameMoving"),this.__focusFix())},__onAttached:function(){this.$frame.css("z-index",""),this.__updateFrame()},__onMoveStarted:function(){this.$frame&&!this._isDocking&&this.$frame.addClass("wcIFrameMoving")},__onMoveFinished:function(){this.$frame&&!this._isDocking&&(this.$frame.removeClass("wcIFrameMoving"),this.__focusFix())},__onMoved:function(){if(this.$frame&&this._panel){var t=this.docker(this._panel);if(t){var e=t.$container.offset(),a=this.$container.offset(),r=this.$container.width(),o=this.$container.height();this.$frame.css("top",a.top-e.top),this.$frame.css("left",a.left-e.left),this.$frame.css("width",r),this.$frame.css("height",o)}else console.error("have no docker")}},__onOrderChanged:function(t){this.$frame.css("z-index",t+1)},__onClosed:function(){this.destroy()}});return r}),a("wcDocker/ThemeBuilder",["dcl/dcl","wcDocker/types","wcDocker/tabframe","wcDocker/base"],function(t,e,a,r){var o=t(r,{declaredClass:"wcDocker",constructor:function(t){this._panel=t,this._controls=[],this._frames=[],this._frameIndex=[],this.$activeTheme=null,this._lastCheckbox=null,this.$part=$('<select style="width:100%">'),this._fontWeights=["normal","bold","bolder","lighter","100","200","300","400","500","600","700","800","900","initial","inherit"],this._borderStyles=[{display:"none",value:""},"dotted","dashed","solid","double","groove","ridge","inset","outset","initial","inherit"],this._shadowStyle=[{display:"normal",value:""},"inset","initial","inherit"],this._parseBoxShadowStyle=function(t){return t=t.toLowerCase(),t.indexOf("inset")>-1?"inset":t.indexOf("initial")>-1?"initial":t.indexOf("inherit")>-1?"inherit":""},this._parseBoxShadowColor=function(t){t=t.toLowerCase();var e=t.indexOf("rgb");if(e>-1){var a=t.indexOf(")");return t.substring(e,a+1)}if(e=t.indexOf("#"),e>-1){var a=t.indexOf(" ");return-1===a&&(a=t.length),t.substring(e,a+1).replace(";","")}},this._parseBoxShadowAttribute=function(t){return function(e){var a=0;e=e.replace(/\s(?![^)]*(\(|$))/g,"");for(var r=e.split(" "),o=0;o<r.length;++o){var i=r[o].trim().replace("px","");if(!isNaN(i)&&(a+=1,a===t))return i.toString()+"px"}return"0px"}},this.init()},clearControls:function(){this._frameIndex=[];for(var t=this._frames.length-1;t>=0;--t)this._frameIndex.unshift(this._frames[t].tab()),this._frames[t].destroy();this._frames=[]},buildControls:function(t){var e=this;this._panel.startLoading(),setTimeout(function(){e.clearControls(),$("body").toggleClass("wcMobile",t?!0:!1).toggleClass("wcDesktop",t?!1:!0),e._panel.layout().clear(),e._panel.layout().startBatch(),e._panel.layout().scene().css("padding","10px"),e._panel.layout()._childFrames=[];for(var a=0,r=0;r<e._controls.length;++r){var o=e._controls[r];o.create&&(o.create.call(e,e._panel.layout(),o,a,t),a+=1)}var i=$('<input type="file" value="Upload" style="width:100%;" title="Upload your own custom css theme."/>');e._panel.layout().addItem($("<label>Upload Theme:</label>"),0,a,2),e._panel.layout().addItem(i,2,a,2).stretch("20%",""),i.on("change",function(t){if(this.files.length){var a=this.files[0];if("text/css"!==a.type)return void alert("Failed to upload file, must be a stylesheet!");var r=new FileReader;e._panel.startLoading(),setTimeout(function(){r.readAsText(a,"UTF-8"),r.onload=function(t){e.apply(t.target.result);var a=$("body").hasClass("wcMobile");e.pull(e._controls),e.buildControls(a),e._panel.finishLoading(400)},r.onerror=function(t){console.log("Error reading theme file."),e._panel.finishLoading(400)}},100)}}),a+=1;var n=$('<button style="width:100%;" title="Pull attributes from the currently active theme.">Pull</button>');e._panel.layout().addItem(n,0,a).stretch("25%",""),n.click(function(){e._panel.startLoading(),setTimeout(function(){var t=$("body").hasClass("wcMobile");e.pull(e._controls),e.buildControls(t),e._panel.finishLoading(400)},100)});var s=$('<button class="wcCustomThemeApplied" style="width:100%;" title="Apply these attributes to the theme.">Apply</button>');e._panel.layout().addItem(s,1,a).stretch("25%",""),s.click(function(){var t=e.build();e.apply(t),s.addClass("wcButtonActive")}),e.$activeTheme&&e.$activeTheme.parent().length&&s.addClass("wcButtonActive");var l=$('<button style="width:100%;" title="Toggle mobile theme overrides.">Mobile</button>');e._panel.layout().addItem(l,2,a).stretch("25%",""),l.click(function(){e._panel.startLoading(),setTimeout(function(){e.buildControls(!t),e._panel.docker().__update(),e._panel.finishLoading(400)},100)}),t&&l.addClass("wcButtonActive");var c=$('<button style="width:100%;" title="Download your custom theme.">Download</button>');e._panel.layout().addItem(c,3,a).stretch("25%",""),c.click(function(){var t=e.build(),a=new Blob([t],{type:"text/plain;charset=utf-8"});saveAs(a,"myTheme.css")}),e._panel.layout().finishBatch();for(var r=0;r<e._frameIndex.length;++r)e._frames[r].tab(e._frameIndex[r]);e._panel.finishLoading(400)},100)},addTabFrame:function(t,e,r,o){var i=null;e.stretch?(i=$('<div class="wcFullSized"></div>'),t.addItem(i,0,r,5).stretch("","100%").css("position","relative")):(i=$("<div>"),t.addItem(i,0,r,5).css("height","auto"));var n=new a(i,this._panel);t._childFrames.push(n),n.moveable(!1),e.orientation&&n.tabOrientation(e.orientation);for(var s=0;s<e.controls.length;++s){var l=e.controls[s];l.create&&l.create.call(this,n,l,0,o)}this._frames.push(n)},addTab:function(t,e,a,r){var o=t.addTab(e.name);o.scene().css("padding","10px"),o.gridAlternate(!0),o.showGrid(!0),o._childFrames=[],e.scrollable||t.fitContents(t.tabCount()-1,!1,!0),o.startBatch();for(var a=0,i=0;i<e.controls.length;++i){var n=e.controls[i];n.create&&(n.create.call(this,o,n,a,r),a+=1)}o.addItem("<div>",0,a,5).stretch("","100%"),o.finishBatch()},addSpacer:function(t,e,a,r){e.name?t.addItem('<div class="wcAttributeSpacerSolid">'+e.name+"</div>",0,a,4).stretch("100%",""):t.addItem('<div class="wcAttributeSpacer"></div>',0,a,4).stretch("100%","")},addColorControl:function(t,e,a,r){function o(t){t?e[c]=t.toRgbString():e[c]=null,!r&&e.isMobileDisabled&&(e.mobileValue=e.value),l.onChanged()}var i=null,n=null,s=null,l=this,c="value",h="isDisabled";r&&(c="mobileValue",h="isMobileDisabled"),n=$('<label class="wcAttributeLabel" title="'+e.info+'">'+e.name+":</label>"),t.addItem(n,1,a).stretch("1%","").css("text-align","right"),s=$('<input style="width:100%;" title="'+e.info+'"/>'),t.addItem(s,2,a,2).stretch("100%",""),s.spectrum({color:e[c],showAlpha:!0,showPalette:!0,showInput:!0,showInitial:!0,allowEmpty:!0,clickoutFiresChange:!0,palette:[["#000","#444","#666","#999","#ccc","#eee","#f3f3f3","#fff"],["#f00","#f90","#ff0","#0f0","#0ff","#00f","#90f","#f0f"],["#f4cccc","#fce5cd","#fff2cc","#d9ead3","#d0e0e3","#cfe2f3","#d9d2e9","#ead1dc"],["#ea9999","#f9cb9c","#ffe599","#b6d7a8","#a2c4c9","#9fc5e8","#b4a7d6","#d5a6bd"],["#e06666","#f6b26b","#ffd966","#93c47d","#76a5af","#6fa8dc","#8e7cc3","#c27ba0"],["#c00","#e69138","#f1c232","#6aa84f","#45818e","#3d85c6","#674ea7","#a64d79"],["#900","#b45f06","#bf9000","#38761d","#134f5c","#0b5394","#351c75","#741b47"],["#600","#783f04","#7f6000","#274e13","#0c343d","#073763","#20124d","#4c1130"]],selectionPalette:[],maxSelectionSize:8,localStorageKey:"theme.colors",preferredFormat:"hex3",change:o,move:o,hide:o}),e.grouped?i=this._lastCheckbox:(i=$('<input type="checkbox" title="'+e.info+'"/>'),t.addItem(i,0,a).stretch("1%",""),i.attr("checked",!e[h]),this._lastCheckbox=i),i.change(function(){e[h]=!this.checked,s.spectrum(this.checked?"enable":"disable"),l.onChanged()}),e[h]&&s.spectrum("disable")},addTextControl:function(t,e,a,r){var o=null,i=null,n=null,s=this,l="value",c="isDisabled";r&&(l="mobileValue",c="isMobileDisabled"),i=$('<label class="wcAttributeLabel" title="'+e.info+'">'+e.name+":</label>"),t.addItem(i,1,a).stretch("1%","").css("text-align","right"),n=$('<input class="wcAttributeControl" title="'+e.info+'" type="text"/>'),t.addItem(n,2,a,2).stretch("100%",""),n.val(e[l]),n.change(function(){e[l]=$(this).val(),!r&&e.isMobileDisabled&&(e.mobileValue=e.value),s.onChanged()}),e.grouped?o=this._lastCheckbox:(o=$('<input type="checkbox" title="'+e.info+'"/>'),t.addItem(o,0,a).stretch("1%",""),o.attr("checked",!e[c]),this._lastCheckbox=o),o.change(function(){e[c]=!this.checked,n.attr("disabled",!this.checked),s.onChanged()}),e[c]&&n.attr("disabled",!0)},addPixelControl:function(t,e,a,r){var o=null,i=null,n=null,s=this,l="value",c="isDisabled";r&&(l="mobileValue",c="isMobileDisabled"),i=$('<label class="wcAttributeLabel" title="'+e.info+'">'+e.name+":</label>"),t.addItem(i,1,a).stretch("1%","").css("text-align","right"),n=$('<input class="wcAttributeControl" title="'+e.info+'" type="number" step="1"/>'),t.addItem(n,2,a,2).stretch("100%",""),n.val(parseInt(e[l])),n.change(function(){e[l]=$(this).val()+"px",!r&&e.isMobileDisabled&&(e.mobileValue=e.value),s.onChanged()}),e.grouped?o=this._lastCheckbox:(o=$('<input type="checkbox" title="'+e.info+'"/>'),t.addItem(o,0,a).stretch("1%",""),o.attr("checked",!e[c]),this._lastCheckbox=o),o.change(function(){e[c]=!this.checked,n.attr("disabled",!this.checked),s.onChanged()}),e[c]&&n.attr("disabled",!0)},addListControl:function(t){return function(e,a,r,o){var i=null,n=null,s=null,l=this,c="value",h="isDisabled";o&&(c="mobileValue",h="isMobileDisabled"),n=$('<label class="wcAttributeLabel" title="'+a.info+'">'+a.name+":</label>"),e.addItem(n,1,r).stretch("1%","").css("text-align","right"),s=$('<select class="wcAttributeControl" title="'+a.info+'"></select>'),e.addItem(s,2,r,2).stretch("100%","");for(var u=0;u<t.length;++u){var d="",f="";"string"==typeof t[u]?(d=t[u],f=t[u]):(d=t[u].display,f=t[u].value),s.append($('<option value="'+f+'"'+(a[c]===f?" selected":"")+">"+d+"</option>"))}s.change(function(){a[c]=$(this).val(),!o&&a.isMobileDisabled&&(a.mobileValue=a.value),l.onChanged()}),a.grouped?i=this._lastCheckbox:(i=$('<input type="checkbox" title="'+a.info+'"/>'),e.addItem(i,0,r).stretch("1%",""),i.attr("checked",!a[h]),this._lastCheckbox=i),i.change(function(){a[h]=!this.checked,s.attr("disabled",!this.checked),l.onChanged()}),a[h]&&s.attr("disabled",!0)}},build:function(t,e){var a=!1;t||(t={},e=this._controls,a=!0);for(var r=0;r<e.length;++r){var o=e[r];if(o.controls&&this.build(t,o.controls),!(!o.selector||"string"!=typeof o.value||o.isDisabled&&o.isMobileDisabled)){t.hasOwnProperty(o.selector)||(t[o.selector]=[]);for(var i=t[o.selector],n=o.attribute.split(","),s=0;s<n.length;++s){if(o.append){for(var l=!1,c=0;c<i.length;++c)if(i[c].key===n[s]){o.isDisabled||(i[c].value&&(i[c].value+=" "),i[c].value+=o.value),o.isMobileDisabled||(i[c].mobileValue&&(i[c].mobileValue+=" "),i[c].mobileValue+=o.mobileValue),l=!0;break}if(l)continue}var h={key:n[s],important:o.important};o.isDisabled||(h.value=o.value),o.isMobileDisabled||(h.mobileValue=o.mobileValue),i.push(h)}if(o.also)for(var s=0;s<o.also.length;++s){var u=o.also[s];t.hasOwnProperty(u.selector)||(t[u.selector]=[]);var d=t[u.selector];n=u.attribute.split(",");for(var c=0;c<n.length;++c){var h={key:n[c],important:o.important};o.isDisabled||(h.value=o.value),o.isMobileDisabled||(h.mobileValue=o.mobileValue),d.push(h)}}}}if(a){var f="";for(var p in t)if(t[p].length){for(var b=!1,_=p.split(", ").join(",\n")+" {\n",r=0;r<t[p].length;++r){var v=t[p][r];v.value&&(b=!0,_+=" "+v.key+": "+v.value,v.important&&(_+=" !important"),_+=";\n")}_+="}\n\n",b&&(f+=_)}for(var p in t)if(t[p].length){for(var b=!1,m=".wcMobile "+p.split(", ").join(", .wcMobile "),_=m.split(", ").join(",\n")+" {\n",r=0;r<t[p].length;++r){var v=t[p][r];v.mobileValue&&(b=!0,_+=" "+v.key+": "+v.mobileValue,v.important&&(_+=" !important"),_+=";\n")}_+="}\n\n",b&&(f+=_)}return f}},apply:function(t){$("option.custom").show().attr("selected","selected"),$("#wcTheme").remove(),$("#wcCustomTheme").remove(),this.$activeTheme=$('<style id="wcCustomTheme"></style>'),$("head").append(this.$activeTheme),this.$activeTheme.text(t),this._panel.docker().__update()},pull:function(t,e){e||(this._objMapping={},this._tempItems=[]);var a=!1,r=$("body").hasClass("wcMobile");$("body").removeClass("wcMobile").addClass("wcDesktop");for(var o=0;o<t.length;++o){var i=t[o];if(i.isDisabled=!1,i.controls&&this.pull(i.controls,!0),i.selector&&i.elem){var n=null;this._objMapping.hasOwnProperty(i.selector)?n=this._objMapping[i.selector]:(n=$(i.elem),$("body").append(n),this._tempItems.push(n),this._objMapping[i.selector]=n),n.children().length&&(n=n.children());var s=i.attribute.split(",")[0],l=n.css(s);"none"!==l&&l.length&&l!==i.notValue?i.parser?i.value=i.parser(l):i.value=l:(i.isDisabled=!0,i.value=i.notValue||i.value),i.grouped&&a&&(i.isDisabled=!0),i.grouped||(a=i.isDisabled)}}a=!1,$("body").addClass("wcMobile").removeClass("wcDesktop");for(var o=0;o<t.length;++o){var i=t[o];if(i.isMobileDisabled=!1,i.selector&&i.elem){var n=null,c=".wcMobile "+i.selector.split(", ").join(", .wcMobile ");this._objMapping.hasOwnProperty(c)?n=this._objMapping[c]:(n=$(i.elem),$("body").append(n),this._tempItems.push(n),this._objMapping[c]=n),n.children().length&&(n=n.children());var s=i.attribute.split(",")[0],l=n.css(s);"none"!==l&&l.length&&l!==i.notValue?i.parser?i.mobileValue=i.parser(l):i.mobileValue=l:(i.isMobileDisabled=!0,i.mobileValue=i.notValue||i.value),i.mobileValue===i.value&&(i.isMobileDisabled=!0),i.grouped&&a&&(i.isMobileDisabled=!0),i.grouped||(a=i.isDisabled)}}if(!e)for(var o=0;o<this._tempItems.length;++o)this._tempItems[o].remove();$("body").toggleClass("wcMobile",r).toggleClass("wcDesktop",!r)},onChanged:function(){if(this.$activeTheme&&this.$activeTheme.parent().length){var t=this.build();this.apply(t)}else this.$activeTheme=null},init:function(){this.initControls();var t=this;this._panel.on(e.EVENT.INIT,function(){setTimeout(function(){var e=$("body").hasClass("wcMobile");t.pull(t._controls),t.buildControls(e)},100)}),this._panel.addButton("Info","fa fa-question","?","Show information about this panel."),this._panel.on(e.EVENT.BUTTON,function(a){var r=t._panel.docker().addPanel("Info Panel",e.DOCK.MODAL,null);r.layout().scene().find("span").text('The theme builder panel allows you to design your own custom wcDocker themes without having to mess with CSS code directly! Press "Pull" to gather all current theme settings from the window and assign them into the displayed attributes. Press "Apply" to override the current visible theme with your custom theme (and display any further changes live!). Press "Download" to download a copy of your new theme!')}),this._panel.on(e.EVENT.CLOSED,function(){var t=$("#wcCustomTheme");t.length&&($("option.custom").hide(),$(".themeSelector").val("default").change(),t.remove())}),this._panel.on(e.EVENT.CUSTOM_TAB_CHANGED,function(e){for(var a=0;a<t._frames.length;++a)t._frames[a].update()})},initControls:function(){this._controls=[{create:this.addTabFrame,stretch:!0,controls:[{name:"Main",scrollable:!0,create:this.addTab,controls:[{name:"Main",create:this.addSpacer},{selector:".wcDocker",elem:'<div class="wcDocker"></div>',name:"Font Family",info:"The font family of standard text",create:this.addTextControl,attribute:"font-family",value:""},{selector:".wcDocker",elem:'<div class="wcDocker"></div>',name:"Font Weight",info:"The font weight of the standard text",create:this.addListControl(this._fontWeights),attribute:"font-weight",value:""},{selector:".wcDocker",elem:'<div class="wcDocker"></div>',name:"Font Size",info:"The font size of standard text",create:this.addPixelControl,attribute:"font-size",value:""},{selector:".wcDocker",elem:'<div class="wcDocker"></div>',name:"Font Color",info:"The font color of standard text",create:this.addColorControl,attribute:"color",value:""},{name:"",create:this.addSpacer},{name:"Background",create:this.addSpacer},{selector:".wcDocker, .wcPanelBackground",elem:'<div class="wcDocker"></div>',name:"Color",info:"The background color to use",create:this.addColorControl,attribute:"background-color",value:""},{selector:".wcDocker, .wcPanelBackground",elem:'<div class="wcDocker"></div>',name:"Box-Shadow Style",info:"The box shadow style",create:this.addListControl(this._shadowStyle),parser:this._parseBoxShadowStyle,attribute:"box-shadow",value:""},{selector:".wcDocker, .wcPanelBackground",elem:'<div class="wcDocker"></div>',name:"Box-Shadow Left Offset",info:"The box shadow horizontal offset from the left (can be negative)",create:this.addPixelControl,parser:this._parseBoxShadowAttribute(1),attribute:"box-shadow",append:!0,grouped:!0,value:"0px",mobileValue:"0px"},{selector:".wcDocker, .wcPanelBackground",elem:'<div class="wcDocker"></div>',name:"Box-Shadow Top Offset",info:"The box shadow vertical offset from the top (can be negative)",create:this.addPixelControl,parser:this._parseBoxShadowAttribute(2),attribute:"box-shadow",append:!0,grouped:!0,value:"0px",mobileValue:"0px"},{selector:".wcDocker, .wcPanelBackground",elem:'<div class="wcDocker"></div>',name:"Box-Shadow Blur",info:"The box shadow blur",create:this.addPixelControl,parser:this._parseBoxShadowAttribute(3),attribute:"box-shadow",append:!0,grouped:!0,value:"0px",mobileValue:"0px"},{selector:".wcDocker, .wcPanelBackground",elem:'<div class="wcDocker"></div>',name:"Box-Shadow Spread",info:"The box shadow spread",create:this.addPixelControl,parser:this._parseBoxShadowAttribute(4),attribute:"box-shadow",append:!0,grouped:!0,value:"0px",mobileValue:"0px"},{selector:".wcDocker, .wcPanelBackground",elem:'<div class="wcDocker"></div>',name:"Box-Shadow Color",info:"The box shadow color",create:this.addColorControl,parser:this._parseBoxShadowColor,attribute:"box-shadow",append:!0,grouped:!0,value:""},{name:"",create:this.addSpacer},{name:"Modal Blocker",create:this.addSpacer},{selector:".wcModalBlocker",elem:'<div class="wcModalBlocker"></div>',name:"Modal Blocker Color",info:"The color of the fullscreen blocker element that appears when a modal panel is visible",create:this.addColorControl,attribute:"background-color",value:""},{name:"",create:this.addSpacer},{name:"Loading Screen",create:this.addSpacer},{selector:".wcLoadingIcon",elem:'<div class="wcLoadingIcon"></div>',name:"Loading Icon Color",info:"The icon color or the loading screen to use",create:this.addColorControl,attribute:"color",value:""},{selector:".wcLoadingLabel",elem:'<div class="wcLoadingLabel"></div>',name:"Loading Label Color",info:"The label color or the loading screen to use",create:this.addColorControl,attribute:"color",value:""},{selector:".wcLoadingBackground",elem:'<div class="wcLoadingBackground"></div>',name:"Loading Screen Color",info:"The background color or the loading screen to use",create:this.addColorControl,attribute:"background-color",value:""},{name:"",create:this.addSpacer},{name:"Ghost",create:this.addSpacer},{selector:".wcGhost",elem:'<div class="wcGhost"></div>',name:"Ghost Color",info:"The ghost color, this is the overlay that shows where a moving panel is being moved",create:this.addColorControl,attribute:"background-color",value:""},{selector:".wcGhost",elem:'<div class="wcGhost"></div>',name:"Ghost Border Radius", ^ permalink raw reply [nested|flat] 3+ messages in thread
* Re: Styling tab navigation and close buttons 2016-04-07 09:42 Styling tab navigation and close buttons Arun Kollan <[email protected]> @ 2016-04-07 11:36 ` Arun Kollan <[email protected]> 2016-04-07 12:41 ` Re: Styling tab navigation and close buttons Dave Page <[email protected]> 0 siblings, 1 reply; 3+ messages in thread From: Arun Kollan @ 2016-04-07 11:36 UTC (permalink / raw) To: pgadmin-hackers; Dave Page <[email protected]> Hi Team, Please find the zipped version of the patch. Thank you. Regards, Arun On Thu, Apr 7, 2016 at 10:42 AM, Arun Kollan <[email protected]> wrote: > Hi Team, > > Please find attached patch for styling tab navigation and close buttons. > The patch consists of changes to wcDocker to customise the placement of > navigational buttons and also removal of an extra arrows. A readme file > added explaining the changes. > > > Arun Kollan > *Website: www.enterprisedb.com <http://www.enterprisedb.com>* > > *EnterpriseDB Blog: http://blogs.enterprisedb.com/ > <http://blogs.enterprisedb.com/>Follow us on > Twitter: http://www.twitter.com/enterprisedb > <http://www.twitter.com/enterprisedb>* > > This e-mail message (and any attachment) is intended for the use of the > individual or entity to whom it is addressed. This message contains > information from EnterpriseDB Corporation that may be privileged, > confidential, or exempt from disclosure under applicable law. If you are > not the intended recipient or authorized to receive this for the intended > recipient, any use, dissemination, distribution, retention, archiving, or > copying of this communication is strictly prohibited. If you have received > this e-mail in error, please notify the sender immediately by reply e-mail > and delete this message. > > > > > -- Sent via pgadmin-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgadmin-hackers Attachments: [application/zip] button_tab-nav_styling.patch.zip (69.7K, 3-button_tab-nav_styling.patch.zip) download ^ permalink raw reply [nested|flat] 3+ messages in thread
* Re: Styling tab navigation and close buttons 2016-04-07 09:42 Styling tab navigation and close buttons Arun Kollan <[email protected]> 2016-04-07 11:36 ` Re: Styling tab navigation and close buttons Arun Kollan <[email protected]> @ 2016-04-07 12:41 ` Dave Page <[email protected]> 0 siblings, 0 replies; 3+ messages in thread From: Dave Page @ 2016-04-07 12:41 UTC (permalink / raw) To: Arun Kollan <[email protected]>; +Cc: pgadmin-hackers Thanks - patch applied. Please ensure your changes are submitted to the wcDocker project for inclusion in future releases (assuming they accept the patches). On Thu, Apr 7, 2016 at 12:36 PM, Arun Kollan <[email protected]> wrote: > Hi Team, > Please find the zipped version of the patch. > > Thank you. > > Regards, > Arun > > On Thu, Apr 7, 2016 at 10:42 AM, Arun Kollan <[email protected]> > wrote: >> >> Hi Team, >> >> Please find attached patch for styling tab navigation and close buttons. >> The patch consists of changes to wcDocker to customise the placement of >> navigational buttons and also removal of an extra arrows. A readme file >> added explaining the changes. >> >> >> Arun Kollan >> Website: www.enterprisedb.com >> EnterpriseDB Blog: http://blogs.enterprisedb.com/ >> Follow us on Twitter: http://www.twitter.com/enterprisedb >> >> This e-mail message (and any attachment) is intended for the use of the >> individual or entity to whom it is addressed. This message contains >> information from EnterpriseDB Corporation that may be privileged, >> confidential, or exempt from disclosure under applicable law. If you are not >> the intended recipient or authorized to receive this for the intended >> recipient, any use, dissemination, distribution, retention, archiving, or >> copying of this communication is strictly prohibited. If you have received >> this e-mail in error, please notify the sender immediately by reply e-mail >> and delete this message. >> >> >> >> > -- Dave Page VP, Chief Architect, Tools & Installers EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company Blog: http://pgsnake.blogspot.com Twitter: @pgsnake -- Sent via pgadmin-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgadmin-hackers ^ permalink raw reply [nested|flat] 3+ messages in thread
end of thread, other threads:[~2016-04-07 12:41 UTC | newest] Thread overview: 3+ messages (download: mbox mbox.gz follow: Atom feed) -- links below jump to the message on this page -- 2016-04-07 09:42 Styling tab navigation and close buttons Arun Kollan <[email protected]> 2016-04-07 11:36 ` Arun Kollan <[email protected]> 2016-04-07 12:41 ` Dave Page <[email protected]>
This inbox is served by agora; see mirroring instructions for how to clone and mirror all data and code used for this inbox