e;e++)i=o[e],d.set(i,d.get(i)+r)}return d},_getLeftWing:function(){var t={value:null},e=this.computeClasses(t,1);return this.nodeLeftClass=t.value,e},_getRightWing:function(){var t={value:null},e=this.computeClasses(t,-1);return this.nodeRightClass=t.value,e},computeClasses:function(t,e){var i,n,o,r,s,a,l,c,u,d=0,f=t.value=new h;for(i=0;this.layers.length>i;++i)for(d=i,n=this.layers[i],o=1===e?0:n.length-1;o>=0&&n.length>o;o+=e)if(r=n[o],f.containsKey(r))d=f.get(r);else if(f.set(r,d),r.isVirtual)for(s=this._nodesInLink(r),a=0;s.length>a;a++)l=s[a],f.set(l,d);for(c=[],u=0;this.layers.length>u;u++)c.push(null);return f.forEach(function(t,e){null===c[e]&&(c[e]=[]),c[e].push(t)}),c},_isVerticalLayout:function(){return"up"===this.options.subtype.toLowerCase()||"down"===this.options.subtype.toLowerCase()||"vertical"===this.options.subtype.toLowerCase()},_isHorizontalLayout:function(){return"right"===this.options.subtype.toLowerCase()||"left"===this.options.subtype.toLowerCase()||"horizontal"===this.options.subtype.toLowerCase()},_isIncreasingLayout:function(){return"right"===this.options.subtype.toLowerCase()||"down"===this.options.subtype.toLowerCase()},_moveThingsAround:function(){function t(t,e){var i,n,o=Number.MIN_VALUE;for(i=0;t.length>i;++i)n=t[i],o=e._isVerticalLayout()?Math.max(o,n.height):Math.max(o,n.width);return o}var e,i,n,o,r,s,a,l,c,u,d,p,g,m,v,w,_,y,x,b,k,C,S,T,A,P,D;for(i=0;this.layers.length>i;++i)o=this.layers[i],o.sort(this._gridPositionComparer);for(this.minDistances=[],i=0;this.layers.length>i;++i)for(o=this.layers[i],this.minDistances[i]=[],r=0;o.length>r;++r)n=o[r],n.layerIndex=r,this.minDistances[i][r]=this.options.nodeDistance,o.length-1>r&&(this.minDistances[i][r]+=this._isVerticalLayout()?(n.width+o[r+1].width)/2:(n.height+o[r+1].height)/2);for(this.downNodes=new h,this.upNodes=new h,f.forEach(this.graph.nodes,function(t){this.downNodes.set(t,[]),this.upNodes.set(t,[])},this),f.forEach(this.graph.links,function(t){var e=t.source,i=t.target,n=null,o=null;e.layer>i.layer?(n=t.source,o=t.target):(o=t.source,n=t.target),this.downNodes.get(o).push(n),this.upNodes.get(n).push(o)},this),this.downNodes.forEachValue(function(t){t.sort(this._gridPositionComparer)},this),this.upNodes.forEachValue(function(t){t.sort(this._gridPositionComparer)},this),i=0;this.layers.length-1>i;++i)for(o=this.layers[i],s=0;o.length-1>s;s++)if(a=o[s],a.isVirtual&&(l=this.downNodes.get(a)[0],l.isVirtual))for(r=s+1;o.length>r;++r)n=o[r],n.isVirtual&&(c=this.downNodes.get(n)[0],c.isVirtual&&l.gridPosition>c.gridPosition&&(u=l.gridPosition,l.gridPosition=c.gridPosition,c.gridPosition=u,d=l.layerIndex,p=c.layerIndex,this.layers[i+1][d]=c,this.layers[i+1][p]=l,l.layerIndex=p,c.layerIndex=d));for(g=this._getLeftWing(),m=this._getRightWing(),v=this.placeLeftToRight(g),w=this.placeRightToLeft(m),_=new h,f.forEach(this.graph.nodes,function(t){_.set(t,(v.get(t)+w.get(t))/2)}),y=new h,x=new h,i=0;this.layers.length>i;++i)for(o=this.layers[i],b=-1,k=-1,r=0;o.length>r;++r)n=o[r],y.set(n,0),x.set(n,!1),n.isVirtual&&(-1===b?b=r:b===r-1?b=r:(k=r,y.set(o[b],0),_.get(n)-_.get(o[b])===this.getMinDist(o[b],n)?x.set(o[b],!0):x.set(o[b],!1),b=r));for(C=[1,-1],f.forEach(C,function(t){var i,n,o,r,s,a,l,c=1===t?0:this.layers.length-1;for(i=c;i>=0&&this.layers.length>i;i+=t){if(n=this.layers[i],o=this._firstVirtualNode(n),r=null,s=null,-1!==o)for(r=n[o],s=[],e=0;o>e;e++)s.push(n[e]);else r=null,s=n;if(s.length>0){for(this._sequencer(_,null,r,t,s),e=0;s.length-1>e;++e)this.setMinDist(s[e],s[e+1],_.get(s[e+1])-_.get(s[e]));r&&this.setMinDist(s[s.length-1],r,_.get(r)-_.get(s[s.length-1]))}for(;r;){if(a=this.nextVirtualNode(n,r)){if(y.get(r)===t){for(o=r.layerIndex,l=a.layerIndex,s=[],e=o+1;l>e;e++)s.push(n[e]);s.length>0&&this._sequencer(_,r,a,t,s),x.set(r,!0)}}else{for(o=r.layerIndex,s=[],e=o+1;n.length>e;e++)s.push(n[e]);if(s.length>0){for(this._sequencer(_,r,null,t,s),e=0;s.length-1>e;++e)this.setMinDist(s[e],s[e+1],_.get(s[e+1])-_.get(s[e]));this.setMinDist(r,s[0],_.get(s[0])-_.get(r))}}r=a}this.adjustDirections(i,t,y,x)}},this),S=this._isIncreasingLayout()?0:this.layers.length-1,T=function(t,e){return e._isIncreasingLayout()?e.layers.length>t:t>=0},A=this._isIncreasingLayout()?1:-1,P=0,e=S;T(e,this);e+=A){for(o=this.layers[e],D=t(o,this),r=0;o.length>r;++r)n=o[r],this._isVerticalLayout()?(n.x=_.get(n),n.y=P+D/2):(n.x=P+D/2,n.y=_.get(n));P+=this.options.layerSeparation+D}},adjustDirections:function(t,e,i,n){var o,r,s,a,l,c,h,u,d,f,p,g,m,v;if(!(0>t+e||t+e>=this.layers.length))for(o=null,r=null,s=this.layers[t+e],a=0;s.length>a;++a)if(l=s[a],l.isVirtual&&(c=this.getNeighborOnLayer(l,t),c.isVirtual)){if(o){for(h=n.get(r),u=this.layers[t],d=r.layerIndex,f=c.layerIndex,p=d+1;f>p;++p)u[p].isVirtual&&(h=h&&n.get(u[p]));if(h)for(i.set(o,e),g=o.layerIndex,m=l.layerIndex,v=g+1;m>v;++v)s[v].isVirtual&&i.set(s[v],e)}o=l,r=c}},getNeighborOnLayer:function(t,e){var i=this.upNodes.get(t)[0];return i.layer===e?i:(i=this.downNodes.get(t)[0],i.layer===e?i:null)},_sequencer:function(t,e,i,n,o){if(1===o.length&&this._sequenceSingle(t,e,i,n,o[0]),o.length>1){var r=o.length,s=this.intDiv(r,2);this._sequencer(t,e,i,n,o.slice(0,s)),this._sequencer(t,e,i,n,o.slice(s)),this.combineSequences(t,e,i,n,o)}},_sequenceSingle:function(t,e,i,n,o){var r=-1===n?this.downNodes.get(o):this.upNodes.get(o),s=r.length;0!==s&&(s%2===1?t.set(o,t.get(r[this.intDiv(s,2)])):t.set(o,(t.get(r[this.intDiv(s,2)-1])+t.get(r[this.intDiv(s,2)]))/2),e&&t.set(o,Math.max(t.get(o),t.get(e)+this.getMinDist(e,o))),i&&t.set(o,Math.min(t.get(o),t.get(i)-this.getMinDist(o,i))))},combineSequences:function(t,e,i,n,o){var r,s,a,l,c,h,u,d,f,p,g=o.length,m=this.intDiv(g,2),v=[];for(r=0;m>r;++r){for(s=0,l=-1===n?this.downNodes.get(o[r]):this.upNodes.get(o[r]),a=0;l.length>a;++a)c=l[a],t.get(c)>=t.get(o[r])?s++:(s--,v.push({k:t.get(c)+this.getMinDist(o[r],o[m-1]),v:2}));v.push({k:t.get(o[r])+this.getMinDist(o[r],o[m-1]),v:s})}for(e&&v.push({k:t.get(e)+this.getMinDist(e,o[m-1]),v:Number.MAX_VALUE}),v.sort(this._positionDescendingComparer),u=[],r=m;g>r;++r){for(s=0,l=-1===n?this.downNodes.get(o[r]):this.upNodes.get(o[r]),a=0;l.length>a;++a)c=l[a],t.get(c)<=t.get(o[r])?s++:(s--,u.push({k:t.get(c)-this.getMinDist(o[r],o[m]),v:2}));u.push({k:t.get(o[r])-this.getMinDist(o[r],o[m]),v:s})}for(i&&u.push({k:t.get(i)-this.getMinDist(i,o[m]),v:Number.MAX_VALUE}),u.sort(this._positionAscendingComparer),d=0,f=0,p=this.getMinDist(o[m-1],o[m]);t.get(o[m])-t.get(o[m-1])d){if(0===v.length){t.set(o[m-1],t.get(o[m])-p);break}h=v.shift(),d+=h.v,t.set(o[m-1],h.k),t.set(o[m-1],Math.max(t.get(o[m-1]),t.get(o[m])-p))}else{if(0===u.length){t.set(o[m],t.get(o[m-1])+p);break}h=u.shift(),f+=h.v,t.set(o[m],h.k),t.set(o[m],Math.min(t.get(o[m]),t.get(o[m-1])+p))}for(r=m-2;r>=0;r--)t.set(o[r],Math.min(t.get(o[r]),t.get(o[m-1])-this.getMinDist(o[r],o[m-1])));for(r=m+1;g>r;r++)t.set(o[r],Math.max(t.get(o[r]),t.get(o[m])+this.getMinDist(o[r],o[m])))},placeLeft:function(t,e,i){var n=Number.NEGATIVE_INFINITY;f.forEach(this._getComposite(t),function(t){var o=this.leftSibling(t);o&&this.nodeLeftClass.get(o)===this.nodeLeftClass.get(t)&&(e.containsKey(o)||this.placeLeft(o,e,i),n=Math.max(n,e.get(o)+this.getMinDist(o,t)))},this),n===Number.NEGATIVE_INFINITY&&(n=0),f.forEach(this._getComposite(t),function(t){e.set(t,n)})},placeRight:function(t,e,i){var n=Number.POSITIVE_INFINITY;f.forEach(this._getComposite(t),function(t){var o=this.rightSibling(t);o&&this.nodeRightClass.get(o)===this.nodeRightClass.get(t)&&(e.containsKey(o)||this.placeRight(o,e,i),n=Math.min(n,e.get(o)-this.getMinDist(t,o)))},this),n===Number.POSITIVE_INFINITY&&(n=0),f.forEach(this._getComposite(t),function(t){e.set(t,n)})},leftSibling:function(t){var e=this.layers[t.layer],i=t.layerIndex;return 0===i?null:e[i-1]},rightSibling:function(t){var e=this.layers[t.layer],i=t.layerIndex;return i===e.length-1?null:e[i+1]},_getComposite:function(t){return t.isVirtual?this._nodesInLink(t):[t]},arrangeNodes:function(){var t,e,i,n,o,r,s,a;for(e=0;this.layers.length>e;e++)for(n=this.layers[e],i=0;n.length>i;i++)o=n[i],o.upstreamPriority=o.upstreamLinkCount,o.downstreamPriority=o.downstreamLinkCount;for(r=2,s=0;r>s;s++){for(t=this.layers.length-1;t>=1;t--)this.layoutLayer(!1,t);for(t=0;this.layers.length-1>t;t++)this.layoutLayer(!0,t);
}for(a=Number.MAX_VALUE,e=0;this.layers.length>e;e++)for(n=this.layers[e],i=0;n.length>i;i++)o=n[i],a=Math.min(a,o.gridPosition);if(0>a)for(e=0;this.layers.length>e;e++)for(n=this.layers[e],i=0;n.length>i;i++)o=n[i],o.gridPosition=o.gridPosition-a},layoutLayer:function(t,e){var i,n,o,r;for(n=t?this.layers[i=e+1]:this.layers[i=e-1],o=[],r=0;n.length>r;r++)o.push(n[r]);o.sort(function(t,e){var i=(t.upstreamPriority+t.downstreamPriority)/2,n=(e.upstreamPriority+e.downstreamPriority)/2;return Math.abs(i-n)<1e-4?0:n>i?1:-1}),f.forEach(o,function(t){var e=t.gridPosition,i=this.calcBaryCenter(t),o=(t.upstreamPriority+t.downstreamPriority)/2;if(!(Math.abs(e-i)<1e-4||Math.abs(e-i)<.2501))if(i>e)for(;i>e&&this.moveRight(t,n,o);)e=t.gridPosition;else for(;e>i&&this.moveLeft(t,n,o);)e=t.gridPosition},this),i>0&&this.calcDownData(i-1),this.layers.length-1>i&&this.calcUpData(i+1)},moveRight:function(t,e,i){var n,o,r=f.indexOf(e,t);return r===e.length-1?(t.gridPosition=t.gridPosition+.5,!0):(n=e[r+1],o=(n.upstreamPriority+n.downstreamPriority)/2,n.gridPosition>t.gridPosition+1?(t.gridPosition=t.gridPosition+.5,!0):o>i||Math.abs(o-i)<1e-4?!1:this.moveRight(n,e,i)?(t.gridPosition=t.gridPosition+.5,!0):!1)},moveLeft:function(t,e,i){var n,o,r=f.indexOf(e,t);return 0===r?(t.gridPosition=t.gridPosition-.5,!0):(n=e[r-1],o=(n.upstreamPriority+n.downstreamPriority)/2,t.gridPosition-1>n.gridPosition?(t.gridPosition=t.gridPosition-.5,!0):o>i||Math.abs(o-i)<1e-4?!1:this.moveLeft(n,e,i)?(t.gridPosition=t.gridPosition-.5,!0):!1)},mapVirtualNode:function(t,e){this.nodeToLinkMap.set(t,e),this.linkToNodeMap.containsKey(e)||this.linkToNodeMap.set(e,[]),this.linkToNodeMap.get(e).push(t)},_nodesInLink:function(t){return this.linkToNodeMap.get(this.nodeToLinkMap.get(t))},_dummify:function(){var t,e,i,n,o,a,l,c,u,d,p,g,m,v,w,_,y,x,b,k;for(this.linkToNodeMap=new h,this.nodeToLinkMap=new h,u=this.graph.links.slice(0),d=this.layers,p=function(t,e,i){d[t].linksTo[e]=d[t].linksTo[e]||[],d[t].linksTo[e].push(i)},c=0;u.length>c;c++)if(g=u[c],m=g.source,v=g.target,w=m.layer,_=v.layer,y=m.gridPosition,x=v.gridPosition,b=(x-y)/Math.abs(_-w),k=m,w-_>1){for(l=w-1;l>_;l--){for(i=new r,i.x=m.x,i.y=m.y,i.width=m.width/100,i.height=m.height/100,t=d[l],e=(l-_)*b+y,e>t.length&&(e=t.length),y>=d[w].length-1&&x>=d[_].length-1?e=t.length:0===y&&0===x&&(e=0),i.layer=l,i.uBaryCenter=0,i.dBaryCenter=0,i.upstreamLinkCount=0,i.downstreamLinkCount=0,i.gridPosition=e,i.isVirtual=!0,f.insert(t,i,e),o=e+1;t.length>o;o++)n=t[o],n.gridPosition=n.gridPosition+1;a=new s(k,i),a.depthOfDumminess=0,p(l-1,l,a),k=i,this.graph._addNode(i),this.graph.addLink(a),i.index=this.graph.nodes.length-1,this.mapVirtualNode(i,g)}p(_-1,_,a),g.changeSource(k),g.depthOfDumminess=w-_-1}else if(-1>w-_){for(l=w+1;_>l;l++){for(i=new r,i.x=m.x,i.y=m.y,i.width=m.width/100,i.height=m.height/100,t=d[l],e=(l-w)*b+y,e>t.length&&(e=t.length),y>=d[w].length-1&&x>=d[_].length-1?e=t.length:0===y&&0===x&&(e=0),i.layer=l,i.uBaryCenter=0,i.dBaryCenter=0,i.upstreamLinkCount=0,i.downstreamLinkCount=0,i.gridPosition=e,i.isVirtual=!0,e&=e,f.insert(t,i,e),o=e+1;t.length>o;o++)n=t[o],n.gridPosition=n.gridPosition+1;a=new s(k,i),a.depthOfDumminess=0,p(l-1,l,a),k=i,this.graph._addNode(i),this.graph.addLink(a),i.index=this.graph.nodes.length-1,this.mapVirtualNode(i,g)}p(_-1,_,g),g.changeSource(k),g.depthOfDumminess=_-w-1}else p(w,_,g)},_dedummify:function(){for(var t,e,i,n,o,r,s,a,l=!0;l;)for(l=!1,t=0;this.graph.links.length>t;t++)if(e=this.graph.links[t],e.depthOfDumminess){for(i=[],i.unshift({x:e.target.x,y:e.target.y}),i.unshift({x:e.source.x,y:e.source.y}),n=e,o=e.depthOfDumminess,r=0;o>r;r++)s=n.source,a=s.incoming[0],i.unshift({x:a.source.x,y:a.source.y}),n=a;e.changeSource(n.source),e.depthOfDumminess=0,i.length>2?(i.splice(0,1),i.splice(i.length-1),e.points=i):e.points=[],l=!0;break}},_optimizeCrossings:function(){for(var t,e=-1,i=3,n=0;0!==e&&!(n++>i);){for(e=0,t=this.layers.length-1;t>=1;t--)e+=this.optimizeLayerCrossings(!1,t);for(t=0;this.layers.length-1>t;t++)e+=this.optimizeLayerCrossings(!0,t)}},calcUpData:function(t){var e,i,n,o,r,s,a,l,c;if(0!==t){for(e=this.layers[t],r=new u,s=this.layers[t-1],i=0;s.length>i;i++)r.add(s[i]);for(i=0;e.length>i;i++){for(a=e[i],l=0,c=0,n=0;a.incoming.length>n;n++)o=a.incoming[n],r.contains(o.source)&&(c++,l+=o.source.gridPosition);for(n=0;a.outgoing.length>n;n++)o=a.outgoing[n],r.contains(o.target)&&(c++,l+=o.target.gridPosition);c>0?(a.uBaryCenter=l/c,a.upstreamLinkCount=c):(a.uBaryCenter=i,a.upstreamLinkCount=0)}}},calcDownData:function(t){var e,i,n,o,r,s,a,l,c;if(t!==this.layers.length-1){for(e=this.layers[t],r=new u,s=this.layers[t+1],i=0;s.length>i;i++)r.add(s[i]);for(i=0;e.length>i;i++){for(a=e[i],l=0,c=0,n=0;a.incoming.length>n;n++)o=a.incoming[n],r.contains(o.source)&&(c++,l+=o.source.gridPosition);for(n=0;a.outgoing.length>n;n++)o=a.outgoing[n],r.contains(o.target)&&(c++,l+=o.target.gridPosition);c>0?(a.dBaryCenter=l/c,a.downstreamLinkCount=c):(a.dBaryCenter=i,a.downstreamLinkCount=0)}}},optimizeLayerCrossings:function(t,e){var i,n,o,r,s,a,l,c;for(n=t?this.layers[i=e+1]:this.layers[i=e-1],o=n.slice(0),t?this.calcUpData(i):this.calcDownData(i),r=this,n.sort(function(t,e){var i,n=r.calcBaryCenter(t),o=r.calcBaryCenter(e);return Math.abs(n-o)<1e-4?t.degree()===e.degree()?r.compareByIndex(t,e):t.degree()0?-1:0>i?1:r.compareByIndex(t,e))}),a=0,s=0;n.length>s;s++)n[s]!==o[s]&&a++;if(a>0)for(l=0,s=0;n.length>s;s++)c=n[s],c.gridPosition=l++;return a},_swapPairs:function(){for(var t,e,i,n,o,r,s,a,l,c,h,u,d,f,p,g,m,v=this.options.layeredIterations,w=0;;){if(w++>v)break;for(t=1>=w%4,e=w%4===1,i=t?0:this.layers.length-1;t?this.layers.length-1>=i:i>=0;i+=t?1:-1){for(n=this.layers[i],o=!1,r=!0,s=0,a=0;n.length-1>a;a++)l=0,c=0,h=0,r?(0!==i&&(l=this.countLinksCrossingBetweenTwoLayers(i-1,i)),i!==this.layers.length-1&&(c=this.countLinksCrossingBetweenTwoLayers(i,i+1)),t?l*=2:c*=2,h=l+c):h=s,0!==h&&(u=n[a],d=n[a+1],f=u.gridPosition,p=d.gridPosition,n[a]=d,n[a+1]=u,u.gridPosition=p,d.gridPosition=f,l=0,0!==i&&(l=this.countLinksCrossingBetweenTwoLayers(i-1,i)),c=0,i!==this.layers.length-1&&(c=this.countLinksCrossingBetweenTwoLayers(i,i+1)),t?l*=2:c*=2,g=l+c,m=!1,m=e?g>=h:g>h,m?(u=n[a],d=n[a+1],f=u.gridPosition,p=d.gridPosition,n[a]=d,n[a+1]=u,u.gridPosition=p,d.gridPosition=f,s=h,r=!1):(o=!0,r=!0));o&&(i!==this.layers.length-1&&this.calcUpData(i+1),0!==i&&this.calcDownData(i-1))}}},countLinksCrossingBetweenTwoLayers:function(t,e){var i,n,o,r,s,a,l,c,h,u,d,f,p=this.layers[t].linksTo[e],g=0,m=p.length;for(l=0;m>l;l++)for(i=p[l],c=l+1;m>c;c++)n=p[c],i.target.layer===e?(o=i.source,r=i.target):(o=i.target,r=i.source),n.target.layer===e?(s=n.source,a=n.target):(s=n.target,a=n.source),h=o.gridPosition,u=r.gridPosition,d=s.gridPosition,f=a.gridPosition,0>(h-d)*(u-f)&&g++;return g},calcBaryCenter:function(t){var e=t.upstreamLinkCount,i=t.downstreamLinkCount,n=t.uBaryCenter,o=t.dBaryCenter;return e>0&&i>0?(n+o)/2:e>0?n:i>0?o:0},_gridPositionComparer:function(t,e){return e.gridPosition>t.gridPosition?-1:t.gridPosition>e.gridPosition?1:0},_positionAscendingComparer:function(t,e){return e.k>t.k?-1:t.k>e.k?1:0},_positionDescendingComparer:function(t,e){return e.k>t.k?1:t.k>e.k?-1:0},_firstVirtualNode:function(t){for(var e=0;t.length>e;e++)if(t[e].isVirtual)return e;return-1},compareByIndex:function(t,e){var i=t.index,n=e.index;return n>i?1:i>n?-1:0},intDiv:function(t,e){return(t-t%e)/e},nextVirtualNode:function(t,e){var i,n=e.layerIndex;for(i=n+1;t.length>i;++i)if(t[i].isVirtual)return t[i];return null}}),S=i.Class.extend({init:function(t,e){if(f.isUndefined(t))throw"No diagram given";this.diagram=t,this.nodeMap=new h,this.linkMap=new h,this.capture(e?e:t)},capture:function(t){var e,i,o,r,s,a,l,h,u;if(t instanceof n.Graph){for(r=0;t.nodes.length>r;r++)e=t.nodes[r],o=e.associatedShape,this.nodeMap.set(o.visual.id,new c(e.x,e.y,e.width,e.height));for(r=0;t.links.length>r;r++)a=t.links[r],s=a.associatedConnection,this.linkMap.set(s.visual.id,a.points())}else if(t instanceof Array)for(i=t,r=0;i.length>r;r++)e=i[r],o=e.associatedShape,o&&this.nodeMap.set(o.visual.id,new c(e.x,e.y,e.width,e.height));else if(t.hasOwnProperty("links")&&t.hasOwnProperty("nodes")){for(i=t.nodes,l=t.links,r=0;i.length>r;r++)e=i[r],o=e.associatedShape,o&&this.nodeMap.set(o.visual.id,new c(e.x,e.y,e.width,e.height));for(r=0;l.length>r;r++)a=l[r],s=a.associatedConnection,s&&this.linkMap.set(s.visual.id,a.points)}else{for(h=this.diagram.shapes,u=this.diagram.connections,r=0;h.length>r;r++)o=h[r],this.nodeMap.set(o.visual.id,o.bounds());for(r=0;u.length>r;r++)s=u[r],this.linkMap.set(s.visual.id,s.points())}}});a(n,{init:function(t){i.init(t,n.ui)},SpringLayout:x,TreeLayout:k,GraphAdapter:y,LayeredLayout:C,LayoutBase:_,LayoutState:S})}(window.kendo.jQuery)},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.toolbar.min",["kendo.core.min","kendo.userevents.min","kendo.popup.min"],t)}(function(){return function(t,e){function i(){var t,e=this.options.anchor,i=e.outerWidth();k.wrap(this.element).addClass("k-split-wrapper"),t="border-box"!==this.element.css("box-sizing")?i-(this.element.outerWidth()-this.element.width()):i,this.element.css({fontFamily:e.css("font-family"),"min-width":t})}function n(t){t.target.is(".k-toggle-button")||t.target.toggleClass(F,"press"==t.type)}function o(e){return e=t(e),e.hasClass("km-actionsheet")?e.closest(".km-popup-wrapper"):e.addClass("km-widget km-actionsheet").wrap('').parent().wrap('').parent()}function r(t){t.preventDefault()}function s(e,i){var n="next"===i?t.fn.next:t.fn.prev,o="next"===i?t.fn.first:t.fn.last,r=n.call(e);return r.is(":kendoFocusable")||!r.length?r:r.find(":kendoFocusable").length?o.call(r.find(":kendoFocusable")):s(r,i)}var a,l,c,h,u,d,f,p,g,m,v,w,_,y,x,b,k=window.kendo,C=k.Class,S=k.ui.Widget,T=t.proxy,A=k.isFunction,P=k.keys,D="k-toolbar",M="k-button",E="k-overflow-button",B="k-toggle-button",I="k-button-group",z="k-split-button",L="k-separator",R="k-popup",O="k-toolbar-resizable",F="k-state-active",V="k-state-disabled",N="k-state-hidden",H="k-group-start",U="k-group-end",j="k-primary",G="k-icon",W="k-i-",q="k-button-icon",$="k-button-icontext",Y="k-list-container k-split-container",X="k-split-button-arrow",Q="k-overflow-anchor",K="k-overflow-container",Z="k-toolbar-first-visible",J="k-toolbar-last-visible",tt="click",et="toggle",it="open",nt="close",ot="overflowOpen",rt="overflowClose",st="never",at="auto",lt="always",ct="k-overflow-hidden",ht=k.attr("uid");k.toolbar={},a={overflowAnchor:'
',overflowContainer:''},k.toolbar.registerComponent=function(t,e,i){a[t]={toolbar:e,overflow:i}},l=k.Class.extend({addOverflowAttr:function(){this.element.attr(k.attr("overflow"),this.options.overflow||at)},addUidAttr:function(){this.element.attr(ht,this.options.uid)},addIdAttr:function(){this.options.id&&this.element.attr("id",this.options.id)},addOverflowIdAttr:function(){this.options.id&&this.element.attr("id",this.options.id+"_overflow")},attributes:function(){this.options.attributes&&this.element.attr(this.options.attributes)},show:function(){this.element.removeClass(N).show(),this.options.hidden=!1},hide:function(){this.element.addClass(N).hide(),this.options.hidden=!0},remove:function(){this.element.remove()},enable:function(t){t===e&&(t=!0),this.element.toggleClass(V,!t),this.options.enable=t},twin:function(){var t=this.element.attr(ht);return this.overflow?this.toolbar.element.find("["+ht+"='"+t+"']").data(this.options.type):this.toolbar.options.resizable?this.toolbar.popup.element.find("["+ht+"='"+t+"']").data(this.options.type):e}}),k.toolbar.Item=l,c=l.extend({init:function(i,n){var o=t(i.useButtonTag?' ':' ');this.element=o,this.options=i,this.toolbar=n,this.attributes(),i.primary&&o.addClass(j),i.togglable&&(o.addClass(B),this.toggle(i.selected)),i.url===e||i.useButtonTag||(o.attr("href",i.url),i.mobile&&o.attr(k.attr("role"),"button")),i.group&&(o.attr(k.attr("group"),i.group),this.group=this.toolbar.addToGroup(this,i.group)),!i.togglable&&i.click&&A(i.click)&&(this.clickHandler=i.click),i.togglable&&i.toggle&&A(i.toggle)&&(this.toggleHandler=i.toggle)},toggle:function(t,e){t=!!t,this.group&&t?this.group.select(this):this.group||this.select(t),e&&this.twin()&&this.twin().toggle(t)},getParentGroup:function(){return this.options.isChild?this.element.closest("."+I).data("buttonGroup"):e},_addGraphics:function(){var e,i,n,o=this.element,r=this.options.icon,s=this.options.spriteCssClass,a=this.options.imageUrl;(s||a||r)&&(e=!0,o.contents().not("span.k-sprite,span."+G+",img.k-image").each(function(i,n){(1==n.nodeType||3==n.nodeType&&t.trim(n.nodeValue).length>0)&&(e=!1)}),o.addClass(e?q:$)),r?(i=o.children("span."+G).first(),i[0]||(i=t(' ').prependTo(o)),i.addClass(W+r)):s?(i=o.children("span.k-sprite").first(),i[0]||(i=t(' ').prependTo(o)),i.addClass(s)):a&&(n=o.children("img.k-image").first(),n[0]||(n=t(' ').prependTo(o)),n.attr("src",a))}}),k.toolbar.Button=c,h=c.extend({init:function(t,e){c.fn.init.call(this,t,e);var i=this.element;i.addClass(M),this.addIdAttr(),t.align&&i.addClass("k-align-"+t.align),"overflow"!=t.showText&&t.text&&i.html(t.mobile?''+t.text+" ":t.text),t.hasIcon="overflow"!=t.showIcon&&(t.icon||t.spriteCssClass||t.imageUrl),t.hasIcon&&this._addGraphics(),this.addUidAttr(),this.addOverflowAttr(),this.enable(t.enable),t.hidden&&this.hide(),this.element.data({type:"button",button:this})},select:function(t){t===e&&(t=!1),this.element.toggleClass(F,t),this.options.selected=t}}),k.toolbar.ToolBarButton=h,u=c.extend({init:function(t,e){this.overflow=!0,c.fn.init.call(this,t,e);var i=this.element;"toolbar"!=t.showText&&t.text&&i.html(t.mobile?''+t.text+" ":''+t.text+" "),t.hasIcon="toolbar"!=t.showIcon&&(t.icon||t.spriteCssClass||t.imageUrl),t.hasIcon&&this._addGraphics(),t.isChild||this._wrap(),this.addOverflowIdAttr(),this.attributes(),this.addUidAttr(),this.addOverflowAttr(),this.enable(t.enable),i.addClass(E+" "+M),t.hidden&&this.hide(),this.element.data({type:"button",button:this})},_wrap:function(){this.element=this.element.wrap(" ").parent()},overflowHidden:function(){this.element.addClass(ct)},select:function(t){t===e&&(t=!1),this.options.isChild?this.element.toggleClass(F,t):this.element.find(".k-button").toggleClass(F,t),this.options.selected=t}}),k.toolbar.OverflowButton=u,k.toolbar.registerComponent("button",h,u),d=l.extend({createButtons:function(e){var i,n,o=this.options,r=o.buttons||[];for(n=0;r.length>n;n++)r[n].uid||(r[n].uid=k.guid()),i=new e(t.extend({mobile:o.mobile,isChild:!0,type:"button"},r[n]),this.toolbar),i.element.appendTo(this.element)},refresh:function(){this.element.children().filter(":not('."+N+"'):first").addClass(H),this.element.children().filter(":not('."+N+"'):last").addClass(U)}}),k.toolbar.ButtonGroup=d,f=d.extend({init:function(e,i){var n=this.element=t("
");this.options=e,this.toolbar=i,this.addIdAttr(),e.align&&n.addClass("k-align-"+e.align),this.createButtons(h),this.attributes(),this.addUidAttr(),this.addOverflowAttr(),this.refresh(),n.addClass(I),this.element.data({type:"buttonGroup",buttonGroup:this})}}),k.toolbar.ToolBarButtonGroup=f,p=d.extend({init:function(e,i){var n=this.element=t(" ");this.options=e,this.toolbar=i,this.overflow=!0,this.addOverflowIdAttr(),this.createButtons(u),this.attributes(),this.addUidAttr(),this.addOverflowAttr(),this.refresh(),n.addClass((e.mobile?"":I)+" k-overflow-group"),this.element.data({type:"buttonGroup",buttonGroup:this})},overflowHidden:function(){this.element.addClass(ct)}}),k.toolbar.OverflowButtonGroup=p,k.toolbar.registerComponent("buttonGroup",f,p),g=l.extend({init:function(e,i){var n=this.element=t('
');this.options=e,this.toolbar=i,this.mainButton=new h(e,i),this.arrowButton=t(' '),this.popupElement=t(''),this.mainButton.element.removeAttr("href tabindex").appendTo(n),this.arrowButton.appendTo(n),this.popupElement.appendTo(n),e.align&&n.addClass("k-align-"+e.align),e.id||(e.id=e.uid),n.attr("id",e.id+"_wrapper"),this.addOverflowAttr(),this.addUidAttr(),this.createMenuButtons(),this.createPopup(),this._navigatable(),this.mainButton.main=!0,n.data({type:"splitButton",splitButton:this,kendoPopup:this.popup})},_navigatable:function(){var e=this;e.popupElement.on("keydown","."+M,function(i){var n=t(i.target).parent();i.preventDefault(),i.keyCode===P.ESC||i.keyCode===P.TAB||i.altKey&&i.keyCode===P.UP?(e.toggle(),e.focus()):i.keyCode===P.DOWN?s(n,"next").focus():i.keyCode===P.UP?s(n,"prev").focus():(i.keyCode===P.SPACEBAR||i.keyCode===P.ENTER)&&e.toolbar.userEvents.trigger("tap",{target:t(i.target)})})},createMenuButtons:function(){var e,i,n=this.options,o=n.menuButtons;for(i=0;o.length>i;i++)e=new h(t.extend({mobile:n.mobile,type:"button",click:n.click},o[i]),this.toolbar),e.element.wrap(" ").parent().appendTo(this.popupElement)},createPopup:function(){var e=this.options,n=this.element;this.popupElement.attr("id",e.id+"_optionlist").attr(ht,e.rootUid),e.mobile&&(this.popupElement=o(this.popupElement)),this.popup=this.popupElement.kendoPopup({appendTo:e.mobile?t(e.mobile).children(".km-pane"):null,anchor:n,isRtl:this.toolbar._isRtl,copyAnchorStyles:!1,animation:e.animation,open:i,activate:function(){this.element.find(":kendoFocusable").first().focus()},close:function(){n.focus()}}).data("kendoPopup"),this.popup.element.on(tt,"a.k-button",r)},remove:function(){this.popup.element.off(tt,"a.k-button"),this.popup.destroy(),this.element.remove()},toggle:function(){this.popup.toggle()},enable:function(t){t===e&&(t=!0),this.mainButton.enable(t),this.options.enable=t},focus:function(){this.element.focus()}}),k.toolbar.ToolBarSplitButton=g,m=l.extend({init:function(e,i){var n,o,r=this.element=t(' '),s=e.menuButtons;for(this.options=e,this.toolbar=i,this.overflow=!0,this.mainButton=new u(t.extend({isChild:!0},e)),this.mainButton.element.appendTo(r),o=0;s.length>o;o++)n=new u(t.extend({mobile:e.mobile,isChild:!0},s[o]),this.toolbar),n.element.appendTo(r);this.addUidAttr(),this.addOverflowAttr(),this.mainButton.main=!0,r.data({type:"splitButton",splitButton:this})},overflowHidden:function(){this.element.addClass(ct)}}),k.toolbar.OverflowSplitButton=m,k.toolbar.registerComponent("splitButton",g,m),v=l.extend({init:function(e,i){var n=this.element=t("
");this.element=n,this.options=e,this.toolbar=i,this.attributes(),this.addIdAttr(),this.addUidAttr(),this.addOverflowAttr(),n.addClass(L),n.data({type:"separator",separator:this})}}),w=l.extend({init:function(e,i){var n=this.element=t(" ");this.element=n,this.options=e,this.toolbar=i,this.overflow=!0,this.attributes(),this.addUidAttr(),this.addOverflowIdAttr(),n.addClass(L),n.data({type:"separator",separator:this})},overflowHidden:function(){this.element.addClass(ct)}}),k.toolbar.registerComponent("separator",v,w),_=l.extend({init:function(e,i,n){var o=A(e)?e(i):e;o=o instanceof jQuery?o.wrap("
").parent():t("
").html(o),this.element=o,this.options=i,this.options.type="template",this.toolbar=n,this.attributes(),this.addUidAttr(),this.addIdAttr(),this.addOverflowAttr(),o.data({type:"template",template:this})}}),k.toolbar.TemplateItem=_,y=l.extend({init:function(e,i,n){var o=t(A(e)?e(i):e);o=o instanceof jQuery?o.wrap(" ").parent():t(" ").html(o),this.element=o,this.options=i,this.options.type="template",this.toolbar=n,this.overflow=!0,this.attributes(),this.addUidAttr(),this.addOverflowIdAttr(),this.addOverflowAttr(),o.data({type:"template",template:this})},overflowHidden:function(){this.element.addClass(ct)}}),k.toolbar.OverflowTemplateItem=y,x=C.extend({init:function(t){this.name=t,this.buttons=[]},add:function(t){this.buttons[this.buttons.length]=t},remove:function(e){var i=t.inArray(e,this.buttons);this.buttons.splice(i,1)},select:function(t){var e,i;for(i=0;this.buttons.length>i;i++)e=this.buttons[i],e.select(!1);t.select(!0),t.twin()&&t.twin().select(!0)}}),b=S.extend({init:function(e,i){var o,s=this;if(S.fn.init.call(s,e,i),i=s.options,e=s.wrapper=s.element,e.addClass(D+" k-widget"),this.uid=k.guid(),this._isRtl=k.support.isRtl(e),this._groups={},e.attr(ht,this.uid),s.isMobile="boolean"==typeof i.mobile?i.mobile:s.element.closest(".km-root")[0],s.animation=s.isMobile?{open:{effects:"fade"}}:{},s.isMobile&&(e.addClass("km-widget"),G="km-icon",W="km-",M="km-button",I="km-buttongroup km-widget",F="km-state-active",V="km-state-disabled"),i.resizable?(s._renderOverflow(),e.addClass(O),s.overflowUserEvents=new k.UserEvents(s.element,{threshold:5,allowSelection:!0,filter:"."+Q,tap:T(s._toggleOverflow,s)}),s._resizeHandler=k.onResize(function(){s.resize()})):s.popup={element:t([])},i.items&&i.items.length)for(o=0;i.items.length>o;o++)s.add(i.items[o]);s.userEvents=new k.UserEvents(document,{threshold:5,allowSelection:!0,filter:"["+ht+"="+this.uid+"] a."+M+", ["+ht+"="+this.uid+"] ."+E,tap:T(s._buttonClick,s),press:n,release:n}),s.element.on(tt,"a.k-button",r),s._navigatable(),i.resizable&&s.popup.element.on(tt,NaN,r),i.resizable&&this._toggleOverflowAnchor(),k.notify(s)},events:[tt,et,it,nt,ot,rt],options:{name:"ToolBar",items:[],resizable:!0,mobile:null},addToGroup:function(t,e){var i;return i=this._groups[e]?this._groups[e]:this._groups[e]=new x,i.add(t),i},destroy:function(){var e=this;e.element.find("."+z).each(function(e,i){t(i).data("kendoPopup").destroy()}),e.element.off(tt,"a.k-button"),e.userEvents.destroy(),e.options.resizable&&(k.unbindResize(e._resizeHandler),e.overflowUserEvents.destroy(),e.popup.element.off(tt,"a.k-button"),e.popup.destroy()),S.fn.destroy.call(e)},add:function(e){var i,n,o,r=a[e.type],s=e.template,l=this,c=l.isMobile?"":"k-item k-state-default",h=e.overflowTemplate;if(t.extend(e,{uid:k.guid(),animation:l.animation,mobile:l.isMobile,rootUid:l.uid}),e.menuButtons)for(o=0;e.menuButtons.length>o;o++)t.extend(e.menuButtons[o],{uid:k.guid()});s&&!h?e.overflow=st:e.overflow||(e.overflow=at),e.overflow!==st&&l.options.resizable&&(h?n=new y(h,e,l):r&&(n=new r.overflow(e,l),n.element.addClass(c)),n&&(e.overflow===at&&n.overflowHidden(),n.element.appendTo(l.popup.container),l.angular("compile",function(){return{elements:n.element.get()}}))),e.overflow!==lt&&(s?i=new _(s,e,l):r&&(i=new r.toolbar(e,l)),i&&(l.options.resizable?(i.element.appendTo(l.element).css("visibility","hidden"),l._shrink(l.element.innerWidth()),i.element.css("visibility","visible")):i.element.appendTo(l.element),l.angular("compile",function(){return{elements:i.element.get()}})))},_getItem:function(e){var i,n,o,r,s=this.options.resizable;return i=this.element.find(e),i.length||(i=t(".k-split-container[data-uid="+this.uid+"]").find(e)),r=i.length?i.data("type"):"",n=i.data(r),n?(n.main&&(i=i.parent("."+z),r="splitButton",n=i.data(r)),s&&(o=n.twin())):s&&(i=this.popup.element.find(e),r=i.length?i.data("type"):"",o=i.data(r),o&&o.main&&(i=i.parent("."+z),r="splitButton",o=i.data(r))),{type:r,toolbar:n,overflow:o}},remove:function(t){var e=this._getItem(t);e.toolbar&&e.toolbar.remove(),e.overflow&&e.overflow.remove(),this.resize(!0)},hide:function(t){var e=this._getItem(t);e.toolbar&&(e.toolbar.hide(),"button"===e.toolbar.options.type&&e.toolbar.options.isChild&&e.toolbar.getParentGroup().refresh()),e.overflow&&(e.overflow.hide(),"button"===e.overflow.options.type&&e.overflow.options.isChild&&e.overflow.getParentGroup().refresh()),this.resize(!0)},show:function(t){var e=this._getItem(t);e.toolbar?(e.toolbar.show(),"button"===e.toolbar.options.type&&e.toolbar.options.isChild&&e.toolbar.getParentGroup().refresh()):e.overflow&&(e.overflow.show(),"button"===e.overflow.options.type&&e.overflow.options.isChild&&e.overflow.getParentGroup().refresh()),this.resize(!0)},enable:function(t,i){var n=this._getItem(t);e===i&&(i=!0),n.toolbar&&n.toolbar.enable(i),n.overflow&&n.overflow.enable(i)},getSelectedFromGroup:function(t){return this.element.find("."+B+"[data-group='"+t+"']").filter("."+F)},toggle:function(i,n){var o=t(i),r=o.data("button");r.options.togglable&&(n===e&&(n=!0),r.toggle(n,!0))},_renderOverflow:function(){var e=this,i=a.overflowContainer,n=e._isRtl,r=n?"left":"right";e.overflowAnchor=t(a.overflowAnchor).addClass(M),e.element.append(e.overflowAnchor),e.isMobile?(e.overflowAnchor.append(' '),i=o(i)):e.overflowAnchor.append(' '),e.popup=new k.ui.Popup(i,{origin:"bottom "+r,position:"top "+r,anchor:e.overflowAnchor,isRtl:n,animation:e.animation,appendTo:e.isMobile?t(e.isMobile).children(".km-pane"):null,copyAnchorStyles:!1,open:function(i){var o=k.wrap(e.popup.element).addClass("k-overflow-wrapper");e.isMobile?e.popup.container.css("max-height",parseFloat(t(".km-content:visible").innerHeight())-15+"px"):o.css("margin-left",(n?-1:1)*((o.outerWidth()-o.width())/2+1)),e.trigger(ot)&&i.preventDefault()},activate:function(){this.element.find(":kendoFocusable").first().focus()},close:function(t){e.trigger(rt)&&t.preventDefault(),this.element.focus()}}),e.popup.element.on("keydown","."+M,function(i){var n,o=t(i.target),r=o.parent(),a=r.is("."+I)||r.is("."+z);i.preventDefault(),i.keyCode===P.ESC||i.keyCode===P.TAB||i.altKey&&i.keyCode===P.UP?(e._toggleOverflow(),e.overflowAnchor.focus()):i.keyCode===P.DOWN?(n=!a||a&&o.is(":last-child")?r:o,s(n,"next").focus()):i.keyCode===P.UP?(n=!a||a&&o.is(":first-child")?r:o,s(n,"prev").focus()):(i.keyCode===P.SPACEBAR||i.keyCode===P.ENTER)&&e.userEvents.trigger("tap",{target:t(i.target)})}),e.popup.container=e.isMobile?e.popup.element.find("."+K):e.popup.element,e.popup.container.attr(ht,this.uid)},_toggleOverflowAnchor:function(){this.overflowAnchor.css(this.popup.element.children(":not(."+ct+", ."+R+")").length>0?{visibility:"visible",width:""}:{visibility:"hidden",width:"1px"})},_buttonClick:function(i){var n,o,r,s,a,l,c=this,h=i.target.closest("."+X).length;return i.preventDefault(),h?(c._toggle(i),e):(o=t(i.target).closest("."+M,c.element),o.hasClass(Q)||(r=o.data("button"),!r&&c.popup&&(o=t(i.target).closest("."+E,c.popup.container),r=o.parent("li").data("button")),r&&r.options.enable&&(r.options.togglable?(a=A(r.toggleHandler)?r.toggleHandler:null,r.toggle(!r.options.selected,!0),l={target:o,group:r.options.group,checked:r.options.selected,id:r.options.id},a&&a.call(c,l),c.trigger(et,l)):(a=A(r.clickHandler)?r.clickHandler:null,l={sender:c,target:o,id:r.options.id},a&&a.call(c,l),c.trigger(tt,l)),r.options.url&&(window.location.href=r.options.url),o.hasClass(E)&&c.popup.close(),s=o.closest(".k-split-container"),s[0]&&(n=s.data("kendoPopup"),(n?n:s.parents(".km-popup-wrapper").data("kendoPopup")).close()))),e)},_navigatable:function(){var e=this;e.element.attr("tabindex",0).focus(function(){var e=t(this).find(":kendoFocusable:first");e.is("."+Q)&&(e=s(e,"next")),e[0].focus()}).on("keydown",T(e._keydown,e))},_keydown:function(i){var n,o,r,s,a,l=t(i.target),c=i.keyCode,h=this.element.children(":not(.k-separator):visible");return c===P.TAB&&(n=l.parentsUntil(this.element).last(),o=!1,r=!1,n.length||(n=l),n.is("."+Q)&&(i.shiftKey&&i.preventDefault(),h.last().is(":kendoFocusable")?h.last().focus():h.last().find(":kendoFocusable").last().focus()),i.shiftKey||h.index(n)!==h.length-1||(o=n.is("."+I)?l.is(":last-child"):!0),i.shiftKey&&1===h.index(n)&&(r=n.is("."+I)?l.is(":first-child"):!0),o&&"hidden"!==this.overflowAnchor.css("visibility")&&(i.preventDefault(),this.overflowAnchor.focus()),r&&(i.preventDefault(),this.wrapper.prev(":kendoFocusable").focus())),i.altKey&&c===P.DOWN?(s=t(document.activeElement).data("splitButton"),a=t(document.activeElement).is("."+Q),s?s.toggle():a&&this._toggleOverflow(),e):c!==P.SPACEBAR&&c!==P.ENTER||l.is("input, checkbox")?e:(i.preventDefault(),l.is("."+z)&&(l=l.children().first()),this.userEvents.trigger("tap",{target:l}),e)},_toggle:function(e){var i,n=t(e.target).closest("."+z).data("splitButton");e.preventDefault(),n.options.enable&&(i=n.popup.element.is(":visible")?this.trigger(nt,{target:n.element}):this.trigger(it,{target:n.element}),i||n.toggle())},_toggleOverflow:function(){this.popup.toggle()},_resize:function(t){var e=t.width;this.options.resizable&&(this.popup.close(),this._shrink(e),this._stretch(e),this._markVisibles(),this._toggleOverflowAnchor())},_childrenWidth:function(){var e=0;return this.element.children(":visible:not('."+N+"')").each(function(){e+=t(this).outerWidth(!0)}),Math.ceil(e)},_shrink:function(t){var e,i,n;if(t=0&&(e=i.eq(n),!(t>this._childrenWidth()));n--)this._hideItem(e)},_stretch:function(t){var e,i,n;if(t>this._childrenWidth())for(i=this.element.children(":hidden:not('."+N+"')"),n=0;i.length>n&&(e=i.eq(n),!(tli[data-uid='"+t.data("uid")+"']").removeClass(ct)},_showItem:function(t,e){return t.length&&e>this._childrenWidth()+t.outerWidth(!0)?(t.show(),this.popup&&this.popup.container.find(">li[data-uid='"+t.data("uid")+"']").addClass(ct),!0):!1},_markVisibles:function(){var t=this.popup.container.children(),e=this.element.children(":not(.k-overflow-anchor)"),i=t.filter(":not(.k-overflow-hidden)"),n=e.filter(":visible");t.add(e).removeClass(Z+" "+J),i.first().add(n.first()).addClass(Z),i.last().add(n.last()).addClass(J)}}),k.ui.plugin(b)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.calendar.min",["kendo.core.min"],t)}(function(){return function(t,e){function i(t,e,i,n){var o,r=t.getFullYear(),s=e.getFullYear(),a=i.getFullYear();return r-=r%n,o=r+(n-1),s>r&&(r=s),o>a&&(o=a),r+"-"+o}function n(t){for(var e,i=0,n=t.min,o=t.max,r=t.start,s=t.setter,l=t.build,c=t.cells||12,h=t.perRow||4,u=t.content||z,d=t.empty||L,f=t.html||'';c>i;i++)i>0&&i%h===0&&(f+=' '),r=new vt(r.getFullYear(),r.getMonth(),r.getDate(),0,0,0),P(r,0),e=l(r,i,t.disableDates),f+=a(r,n,o)?u(e):d(e),s(r,1);return f+"
"}function o(t,e,i){var n=t.getFullYear(),o=e.getFullYear(),r=o,s=0;return i&&(o-=o%i,r=o-o%i+i-1),n>r?s=1:o>n&&(s=-1),s}function r(){var t=new vt;return new vt(t.getFullYear(),t.getMonth(),t.getDate())}function s(t,e,i){var n=r();return t&&(n=new vt(+t)),e>n?n=new vt(+e):n>i&&(n=new vt(+i)),n}function a(t,e,i){return+t>=+e&&+i>=+t}function l(t,e){return t.slice(e).concat(t.slice(0,e))}function c(t,e,i){e=e instanceof vt?e.getFullYear():t.getFullYear()+i*e,t.setFullYear(e)}function h(e){var i=t(this).hasClass("k-state-disabled");i||t(this).toggleClass(Q,st.indexOf(e.type)>-1||e.type==ot)}function u(t){t.preventDefault()}function d(t){return E(t).calendars.standard}function f(t){var i=wt[t.start],n=wt[t.depth],o=E(t.culture);t.format=D(t.format||o.calendars.standard.patterns.d),isNaN(i)&&(i=0,t.start=W),(n===e||n>i)&&(t.depth=W),t.dates||(t.dates=[])}function p(t){O&&t.find("*").attr("unselectable","on")}function g(t,e){for(var i=0,n=e.length;n>i;i++)if(t===+e[i])return!0;return!1}function m(t,e){return t?t.getFullYear()===e.getFullYear()&&t.getMonth()===e.getMonth()&&t.getDate()===e.getDate():!1}function v(t,e){return t?t.getFullYear()===e.getFullYear()&&t.getMonth()===e.getMonth():!1;
}function w(e){return b.isFunction(e)?e:t.isArray(e)?_(e):t.noop}function _(e){var i,n,o,r,s,a=[],l=["su","mo","tu","we","th","fr","sa"];for(o=0;e.length>o;o++)r=e[o].toLowerCase(),s=t.inArray(r,l),s>-1&&a.push(s);return i="var found = date && $.inArray(date.getDay(),["+a+"]) > -1;if (found) { return true } else {return false}",n=Function("date",i)}function y(t,e){return t instanceof Date&&e instanceof Date&&(t=t.getTime(),e=e.getTime()),t===e}var x,b=window.kendo,k=b.support,C=b.ui,S=C.Widget,T=b.keys,A=b.parseDate,P=b.date.adjustDST,D=b._extractFormat,M=b.template,E=b.getCulture,B=b.support.transitions,I=B?B.css+"transform-origin":"",z=M('#=data.value# ',{useWithBlock:!1}),L=M(' ',{useWithBlock:!1}),R=b.support.browser,O=R.msie&&9>R.version,F=".kendoCalendar",V="click"+F,N="keydown"+F,H="id",U="min",j="left",G="slideIn",W="month",q="century",$="change",Y="navigate",X="value",Q="k-state-hover",K="k-state-disabled",Z="k-state-focused",J="k-other-month",tt=' class="'+J+'"',et="k-nav-today",it="td:has(.k-link)",nt="blur"+F,ot="focus",rt=ot+F,st=k.touch?"touchstart":"mouseenter",at=k.touch?"touchstart"+F:"mouseenter"+F,lt=k.touch?"touchend"+F+" touchmove"+F:"mouseleave"+F,ct=6e4,ht=864e5,ut="_prevArrow",dt="_nextArrow",ft="aria-disabled",pt="aria-selected",gt=t.proxy,mt=t.extend,vt=Date,wt={month:0,year:1,decade:2,century:3},_t=S.extend({init:function(e,i){var n,o,a=this;S.fn.init.call(a,e,i),e=a.wrapper=a.element,i=a.options,i.url=window.unescape(i.url),a.options.disableDates=w(a.options.disableDates),a._templates(),a._header(),a._footer(a.footer),o=e.addClass("k-widget k-calendar").on(at+" "+lt,it,h).on(N,"table.k-content",gt(a._move,a)).on(V,it,function(e){var i=e.currentTarget.firstChild,n=a._toDateObject(i);-1!=i.href.indexOf("#")&&e.preventDefault(),a.options.disableDates(n)||a._click(t(i))}).on("mouseup"+F,"table.k-content, .k-footer",function(){a._focusView(a.options.focusOnNav!==!1)}).attr(H),o&&(a._cellID=o+"_cell_selected"),f(i),n=A(i.value,i.format,i.culture),a._index=wt[i.start],a._current=new vt(+s(n,i.min,i.max)),a._addClassProxy=function(){if(a._active=!0,a._cell.hasClass(K)){var t=a._view.toDateString(r());a._cell=a._cellByDate(t)}a._cell.addClass(Z)},a._removeClassProxy=function(){a._active=!1,a._cell.removeClass(Z)},a.value(n),b.notify(a)},options:{name:"Calendar",value:null,min:new vt(1900,0,1),max:new vt(2099,11,31),dates:[],url:"",culture:"",footer:"",format:"",month:{},start:W,depth:W,animation:{horizontal:{effects:G,reverse:!0,duration:500,divisor:2},vertical:{effects:"zoomIn",duration:400}}},events:[$,Y],setOptions:function(t){var e=this;f(t),t.dates[0]||(t.dates=e.options.dates),t.disableDates=w(t.disableDates),S.fn.setOptions.call(e,t),e._templates(),e._footer(e.footer),e._index=wt[e.options.start],e.navigate()},destroy:function(){var t=this,e=t._today;t.element.off(F),t._title.off(F),t[ut].off(F),t[dt].off(F),b.destroy(t._table),e&&b.destroy(e.off(F)),S.fn.destroy.call(t)},current:function(){return this._current},view:function(){return this._view},focus:function(t){t=t||this._table,this._bindTable(t),t.focus()},min:function(t){return this._option(U,t)},max:function(t){return this._option("max",t)},navigateToPast:function(){this._navigate(ut,-1)},navigateToFuture:function(){this._navigate(dt,1)},navigateUp:function(){var t=this,e=t._index;t._title.hasClass(K)||t.navigate(t._current,++e)},navigateDown:function(t){var i=this,n=i._index,o=i.options.depth;if(t)return n===wt[o]?(y(i._value,i._current)&&y(i._value,t)||(i.value(t),i.trigger($)),e):(i.navigate(t,--n),e)},navigate:function(i,n){var o,r,a,l,c,h,u,d,f,g,m,v,w,_,y,b,k;n=isNaN(n)?wt[n]:n,o=this,r=o.options,a=r.culture,l=r.min,c=r.max,h=o._title,u=o._table,d=o._oldTable,f=o._value,g=o._current,m=i&&+i>+g,v=n!==e&&n!==o._index,i||(i=g),o._current=i=new vt(+s(i,l,c)),n===e?n=o._index:o._index=n,o._view=_=x.views[n],y=_.compare,b=n===wt[q],h.toggleClass(K,b).attr(ft,b),b=y(i,l)<1,o[ut].toggleClass(K,b).attr(ft,b),b=y(i,c)>-1,o[dt].toggleClass(K,b).attr(ft,b),u&&d&&d.data("animating")&&(d.kendoStop(!0,!0),u.kendoStop(!0,!0)),o._oldTable=u,(!u||o._changeView)&&(h.html(_.title(i,l,c,a)),o._table=w=t(_.content(mt({min:l,max:c,date:i,url:r.url,dates:r.dates,format:r.format,culture:a,disableDates:r.disableDates},o[_.name]))),p(w),k=u&&u.data("start")===w.data("start"),o._animate({from:u,to:w,vertical:v,future:m,replace:k}),o.trigger(Y),o._focus(i)),n===wt[r.depth]&&f&&!o.options.disableDates(f)&&o._class("k-state-selected",f),o._class(Z,i),!u&&o._cell&&o._cell.removeClass(Z),o._changeView=!0},value:function(t){var i=this,n=i._view,o=i.options,r=i._view,s=o.min,l=o.max;return t===e?i._value:(null===t&&(i._current=new Date(i._current.getFullYear(),i._current.getMonth(),i._current.getDate())),t=A(t,o.format,o.culture),null!==t&&(t=new vt(+t),a(t,s,l)||(t=null)),i.options.disableDates(t)?i._value===e&&(i._value=null):i._value=t,r&&null===t&&i._cell?i._cell.removeClass("k-state-selected"):(i._changeView=!t||n&&0!==n.compare(t,i._current),i.navigate(t)),e)},_move:function(e){var i,n,o,r,l=this,c=l.options,h=e.keyCode,u=l._view,d=l._index,f=l.options.min,p=l.options.max,g=new vt(+l._current),m=b.support.isRtl(l.wrapper),v=l.options.disableDates;return e.target===l._table[0]&&(l._active=!0),e.ctrlKey?h==T.RIGHT&&!m||h==T.LEFT&&m?(l.navigateToFuture(),n=!0):h==T.LEFT&&!m||h==T.RIGHT&&m?(l.navigateToPast(),n=!0):h==T.UP?(l.navigateUp(),n=!0):h==T.DOWN&&(l._click(t(l._cell[0].firstChild)),n=!0):(h==T.RIGHT&&!m||h==T.LEFT&&m?(i=1,n=!0):h==T.LEFT&&!m||h==T.RIGHT&&m?(i=-1,n=!0):h==T.UP?(i=0===d?-7:-4,n=!0):h==T.DOWN?(i=0===d?7:4,n=!0):h==T.ENTER?(l._click(t(l._cell[0].firstChild)),n=!0):h==T.HOME||h==T.END?(o=h==T.HOME?"first":"last",r=u[o](g),g=new vt(r.getFullYear(),r.getMonth(),r.getDate(),g.getHours(),g.getMinutes(),g.getSeconds(),g.getMilliseconds()),n=!0):h==T.PAGEUP?(n=!0,l.navigateToPast()):h==T.PAGEDOWN&&(n=!0,l.navigateToFuture()),(i||o)&&(o||u.setDate(g,i),v(g)&&(g=l._nextNavigatable(g,i)),a(g,f,p)&&l._focus(s(g,c.min,c.max)))),n&&e.preventDefault(),l._current},_nextNavigatable:function(t,e){var i=this,n=!0,o=i._view,r=i.options.min,s=i.options.max,l=i.options.disableDates,c=new Date(t.getTime());for(o.setDate(c,-e);n;){if(o.setDate(t,e),!a(t,r,s)){t=c;break}n=l(t)}return t},_animate:function(t){var e=this,i=t.from,n=t.to,o=e._active;i?i.parent().data("animating")?(i.off(F),i.parent().kendoStop(!0,!0).remove(),i.remove(),n.insertAfter(e.element[0].firstChild),e._focusView(o)):!i.is(":visible")||e.options.animation===!1||t.replace?(n.insertAfter(i),i.off(F).remove(),e._focusView(o)):e[t.vertical?"_vertical":"_horizontal"](i,n,t.future):(n.insertAfter(e.element[0].firstChild),e._bindTable(n))},_horizontal:function(t,e,i){var n=this,o=n._active,r=n.options.animation.horizontal,s=r.effects,a=t.outerWidth();s&&-1!=s.indexOf(G)&&(t.add(e).css({width:a}),t.wrap("
"),n._focusView(o,t),t.parent().css({position:"relative",width:2*a,"float":j,"margin-left":i?0:-a}),e[i?"insertAfter":"insertBefore"](t),mt(r,{effects:G+":"+(i?"right":j),complete:function(){t.off(F).remove(),n._oldTable=null,e.unwrap(),n._focusView(o)}}),t.parent().kendoStop(!0,!0).kendoAnimate(r))},_vertical:function(t,e){var i,n,o=this,r=o.options.animation.vertical,s=r.effects,a=o._active;s&&-1!=s.indexOf("zoom")&&(e.css({position:"absolute",top:t.prev().outerHeight(),left:0}).insertBefore(t),I&&(i=o._cellByDate(o._view.toDateString(o._current)),n=i.position(),n=n.left+parseInt(i.width()/2,10)+"px "+(n.top+parseInt(i.height()/2,10)+"px"),e.css(I,n)),t.kendoStop(!0,!0).kendoAnimate({effects:"fadeOut",duration:600,complete:function(){t.off(F).remove(),o._oldTable=null,e.css({position:"static",top:0,left:0}),o._focusView(a)}}),e.kendoStop(!0,!0).kendoAnimate(r))},_cellByDate:function(e){return this._table.find("td:not(."+J+")").filter(function(){return t(this.firstChild).attr(b.attr(X))===e})},_class:function(e,i){var n,o=this,r=o._cellID,s=o._cell,a=o._view.toDateString(i);s&&s.removeAttr(pt).removeAttr("aria-label").removeAttr(H),i&&(n=o.options.disableDates(i)),s=o._table.find("td:not(."+J+")").removeClass(e).filter(function(){return t(this.firstChild).attr(b.attr(X))===a}).attr(pt,!0),(e===Z&&!o._active&&o.options.focusOnNav!==!1||n)&&(e=""),s.addClass(e),s[0]&&(o._cell=s),r&&(s.attr(H,r),o._table.removeAttr("aria-activedescendant").attr("aria-activedescendant",r))},_bindTable:function(t){t.on(rt,this._addClassProxy).on(nt,this._removeClassProxy)},_click:function(t){var e=this,i=e.options,n=new Date(+e._current),o=e._toDateObject(t);P(o,0),e.options.disableDates(o)&&(o=e._value),e._view.setDate(n,o),e.navigateDown(s(n,i.min,i.max))},_focus:function(t){var e=this,i=e._view;0!==i.compare(t,e._current)?e.navigate(t):(e._current=t,e._class(Z,t))},_focusView:function(t,e){t&&this.focus(e)},_footer:function(i){var n=this,o=r(),s=n.element,a=s.find(".k-footer");return i?(a[0]||(a=t('').appendTo(s)),n._today=a.show().find(".k-link").html(i(o)).attr("title",b.toString(o,"D",n.options.culture)),n._toggle(),e):(n._toggle(!1),a.hide(),e)},_header:function(){var t,e=this,i=e.element;i.find(".k-header")[0]||i.html(''),t=i.find(".k-link").on(at+" "+lt+" "+rt+" "+nt,h).click(!1),e._title=t.eq(1).on(V,function(){e._active=e.options.focusOnNav!==!1,e.navigateUp()}),e[ut]=t.eq(0).on(V,function(){e._active=e.options.focusOnNav!==!1,e.navigateToPast()}),e[dt]=t.eq(2).on(V,function(){e._active=e.options.focusOnNav!==!1,e.navigateToFuture()})},_navigate:function(t,e){var i=this,n=i._index+1,o=new vt(+i._current);t=i[t],t.hasClass(K)||(n>3?o.setFullYear(o.getFullYear()+100*e):x.views[n].setDate(o,e),i.navigate(o))},_option:function(t,i){var n,o=this,r=o.options,s=o._value||o._current;return i===e?r[t]:(i=A(i,r.format,r.culture),i&&(r[t]=new vt(+i),n=t===U?i>s:s>i,(n||v(s,i))&&(n&&(o._value=null),o._changeView=!0),o._changeView||(o._changeView=!(!r.month.content&&!r.month.empty)),o.navigate(o._value),o._toggle()),e)},_toggle:function(t){var i=this,n=i.options,o=i.options.disableDates(r()),s=i._today;t===e&&(t=a(r(),n.min,n.max)),s&&(s.off(V),t&&!o?s.addClass(et).removeClass(K).on(V,gt(i._todayClick,i)):s.removeClass(et).addClass(K).on(V,u))},_todayClick:function(t){var e=this,i=wt[e.options.depth],n=e.options.disableDates,o=r();t.preventDefault(),n(o)||(0===e._view.compare(e._current,o)&&e._index==i&&(e._changeView=!1),e._value=o,e.navigate(o,i),e.trigger($))},_toDateObject:function(e){var i=t(e).attr(b.attr(X)).split("/");return i=new vt(i[0],i[1],i[2])},_templates:function(){var t=this,e=t.options,i=e.footer,n=e.month,o=n.content,r=n.empty;t.month={content:M(''+(o||"#=data.value#")+" ",{useWithBlock:!!o}),empty:M(''+(r||" ")+" ",{useWithBlock:!!r})},t.footer=i!==!1?M(i||'#= kendo.toString(data,"D","'+e.culture+'") #',{useWithBlock:!1}):null}});C.plugin(_t),x={firstDayOfMonth:function(t){return new vt(t.getFullYear(),t.getMonth(),1)},firstVisibleDay:function(t,e){e=e||b.culture().calendar;for(var i=e.firstDay,n=new vt(t.getFullYear(),t.getMonth(),0,t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds());n.getDay()!=i;)x.setTime(n,-1*ht);return n},setTime:function(t,e){var i=t.getTimezoneOffset(),n=new vt(t.getTime()+e),o=n.getTimezoneOffset()-i;t.setTime(n.getTime()+o*ct)},views:[{name:W,title:function(t,e,i,n){return d(n).months.names[t.getMonth()]+" "+t.getFullYear()},content:function(t){for(var e=this,i=0,o=t.min,r=t.max,s=t.date,a=t.dates,c=t.format,h=t.culture,u=t.url,f=u&&a[0],p=d(h),m=p.firstDay,v=p.days,w=l(v.names,m),_=l(v.namesShort,m),y=x.firstVisibleDay(s,p),k=e.first(s),C=e.last(s),S=e.toDateString,T=new vt,A='';7>i;i++)A+=''+_[i]+" ";return T=new vt(T.getFullYear(),T.getMonth(),T.getDate()),P(T,0),T=+T,n({cells:42,perRow:7,html:A+=' ',start:y,min:new vt(o.getFullYear(),o.getMonth(),o.getDate()),max:new vt(r.getFullYear(),r.getMonth(),r.getDate()),content:t.content,empty:t.empty,setter:e.setDate,disableDates:t.disableDates,build:function(t,e,i){var n=[],o=t.getDay(),r="",s="#";return(k>t||t>C)&&n.push(J),i(t)&&n.push(K),+t===T&&n.push("k-today"),(0===o||6===o)&&n.push("k-weekend"),f&&g(+t,a)&&(s=u.replace("{0}",b.toString(t,c,h)),r=" k-action-link"),{date:t,dates:a,ns:b.ns,title:b.toString(t,"D",h),value:t.getDate(),dateString:S(t),cssClass:n[0]?' class="'+n.join(" ")+'"':"",linkClass:r,url:s}}})},first:function(t){return x.firstDayOfMonth(t)},last:function(t){var e=new vt(t.getFullYear(),t.getMonth()+1,0),i=x.firstDayOfMonth(t),n=Math.abs(e.getTimezoneOffset()-i.getTimezoneOffset());return n&&e.setHours(i.getHours()+n/60),e},compare:function(t,e){var i,n=t.getMonth(),o=t.getFullYear(),r=e.getMonth(),s=e.getFullYear();return i=o>s?1:s>o?-1:n==r?0:n>r?1:-1},setDate:function(t,e){var i=t.getHours();e instanceof vt?t.setFullYear(e.getFullYear(),e.getMonth(),e.getDate()):x.setTime(t,e*ht),P(t,i)},toDateString:function(t){return t.getFullYear()+"/"+t.getMonth()+"/"+t.getDate()}},{name:"year",title:function(t){return t.getFullYear()},content:function(t){var e=d(t.culture).months.namesAbbr,i=this.toDateString,o=t.min,r=t.max;return n({min:new vt(o.getFullYear(),o.getMonth(),1),max:new vt(r.getFullYear(),r.getMonth(),1),start:new vt(t.date.getFullYear(),0,1),setter:this.setDate,build:function(t){return{value:e[t.getMonth()],ns:b.ns,dateString:i(t),cssClass:""}}})},first:function(t){return new vt(t.getFullYear(),0,t.getDate())},last:function(t){return new vt(t.getFullYear(),11,t.getDate())},compare:function(t,e){return o(t,e)},setDate:function(t,e){var i,n=t.getHours();e instanceof vt?(i=e.getMonth(),t.setFullYear(e.getFullYear(),i,t.getDate()),i!==t.getMonth()&&t.setDate(0)):(i=t.getMonth()+e,t.setMonth(i),i>11&&(i-=12),i>0&&t.getMonth()!=i&&t.setDate(0)),P(t,n)},toDateString:function(t){return t.getFullYear()+"/"+t.getMonth()+"/1"}},{name:"decade",title:function(t,e,n){return i(t,e,n,10)},content:function(t){var e=t.date.getFullYear(),i=this.toDateString;return n({start:new vt(e-e%10-1,0,1),min:new vt(t.min.getFullYear(),0,1),max:new vt(t.max.getFullYear(),0,1),setter:this.setDate,build:function(t,e){return{value:t.getFullYear(),ns:b.ns,dateString:i(t),cssClass:0===e||11==e?tt:""}}})},first:function(t){var e=t.getFullYear();return new vt(e-e%10,t.getMonth(),t.getDate())},last:function(t){var e=t.getFullYear();return new vt(e-e%10+9,t.getMonth(),t.getDate())},compare:function(t,e){return o(t,e,10)},setDate:function(t,e){c(t,e,1)},toDateString:function(t){return t.getFullYear()+"/0/1"}},{name:q,title:function(t,e,n){return i(t,e,n,100)},content:function(t){var e=t.date.getFullYear(),i=t.min.getFullYear(),o=t.max.getFullYear(),r=this.toDateString,s=i,a=o;return s-=s%10,a-=a%10,10>a-s&&(a=s+9),n({start:new vt(e-e%100-10,0,1),min:new vt(s,0,1),max:new vt(a,0,1),setter:this.setDate,build:function(t,e){var n=t.getFullYear(),s=n+9;return i>n&&(n=i),s>o&&(s=o),{ns:b.ns,value:n+" - "+s,dateString:r(t),cssClass:0===e||11==e?tt:""}}})},first:function(t){var e=t.getFullYear();return new vt(e-e%100,t.getMonth(),t.getDate())},last:function(t){var e=t.getFullYear();return new vt(e-e%100+99,t.getMonth(),t.getDate())},compare:function(t,e){return o(t,e,100)},setDate:function(t,e){c(t,e,10)},toDateString:function(t){var e=t.getFullYear();return e-e%10+"/0/1"}}]},x.isEqualDatePart=m,x.makeUnselectable=p,x.restrictValue=s,x.isInRange=a,x.normalize=f,x.viewsEnum=wt,x.disabled=w,b.calendar=x}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.datepicker.min",["kendo.calendar.min","kendo.popup.min"],t)}(function(){return function(t,e){function i(e){var i=e.parseFormats,n=e.format;R.normalize(e),i=t.isArray(i)?i:[i],i.length||i.push("yyyy-MM-dd"),-1===t.inArray(n,i)&&i.splice(0,0,e.format),e.parseFormats=i}function n(t){t.preventDefault()}var o,r=window.kendo,s=r.ui,a=s.Widget,l=r.parseDate,c=r.keys,h=r.template,u=r._activeElement,d="
",f=" ",p=".kendoDatePicker",g="click"+p,m="open",v="close",w="change",_="disabled",y="readonly",x="k-state-default",b="k-state-focused",k="k-state-selected",C="k-state-disabled",S="k-state-hover",T="mouseenter"+p+" mouseleave"+p,A="mousedown"+p,P="id",D="min",M="max",E="month",B="aria-disabled",I="aria-expanded",z="aria-hidden",L="aria-readonly",R=r.calendar,O=R.isInRange,F=R.restrictValue,V=R.isEqualDatePart,N=t.extend,H=t.proxy,U=Date,j=function(e){var i,n=this,o=document.body,a=t(d).attr(z,"true").addClass("k-calendar-container").appendTo(o);n.options=e=e||{},i=e.id,i&&(i+="_dateview",a.attr(P,i),n._dateViewID=i),n.popup=new s.Popup(a,N(e.popup,e,{name:"Popup",isRtl:r.support.isRtl(e.anchor)})),n.div=a,n.value(e.value)};j.prototype={_calendar:function(){var e,i=this,o=i.calendar,a=i.options;o||(e=t(d).attr(P,r.guid()).appendTo(i.popup.element).on(A,n).on(g,"td:has(.k-link)",H(i._click,i)),i.calendar=o=new s.Calendar(e),i._setOptions(a),r.calendar.makeUnselectable(o.element),o.navigate(i._value||i._current,a.start),i.value(i._value))},_setOptions:function(t){this.calendar.setOptions({focusOnNav:!1,change:t.change,culture:t.culture,dates:t.dates,depth:t.depth,footer:t.footer,format:t.format,max:t.max,min:t.min,month:t.month,start:t.start,disableDates:t.disableDates})},setOptions:function(t){var e=this.options;this.options=N(e,t,{change:e.change,close:e.close,open:e.open}),this.calendar&&this._setOptions(this.options)},destroy:function(){this.popup.destroy()},open:function(){var t=this;t._calendar(),t.popup.open()},close:function(){this.popup.close()},min:function(t){this._option(D,t)},max:function(t){this._option(M,t)},toggle:function(){var t=this;t[t.popup.visible()?v:m]()},move:function(t){var e=this,i=t.keyCode,n=e.calendar,o=t.ctrlKey&&i==c.DOWN||i==c.ENTER,r=!1;if(t.altKey)i==c.DOWN?(e.open(),t.preventDefault(),r=!0):i==c.UP&&(e.close(),t.preventDefault(),r=!0);else if(e.popup.visible()){if(i==c.ESC||o&&n._cell.hasClass(k))return e.close(),t.preventDefault(),!0;e._current=n._move(t),r=!0}return r},current:function(t){this._current=t,this.calendar._focus(t)},value:function(t){var e=this,i=e.calendar,n=e.options,o=n.disableDates;o&&o(t)&&(t=null),e._value=t,e._current=new U(+F(t,n.min,n.max)),i&&i.value(t)},_click:function(t){-1!==t.currentTarget.className.indexOf(k)&&this.close()},_option:function(t,e){var i=this,n=i.calendar;i.options[t]=e,n&&n[t](e)}},j.normalize=i,r.DateView=j,o=a.extend({init:function(e,n){var o,s,c=this;a.fn.init.call(c,e,n),e=c.element,n=c.options,n.disableDates=r.calendar.disabled(n.disableDates),n.min=l(e.attr("min"))||l(n.min),n.max=l(e.attr("max"))||l(n.max),i(n),c._initialOptions=N({},n),c._wrapper(),c.dateView=new j(N({},n,{id:e.attr(P),anchor:c.wrapper,change:function(){c._change(this.value()),c.close()},close:function(t){c.trigger(v)?t.preventDefault():(e.attr(I,!1),s.attr(z,!0))},open:function(t){var i,n=c.options;c.trigger(m)?t.preventDefault():(c.element.val()!==c._oldText&&(i=l(e.val(),n.parseFormats,n.culture),c.dateView[i?"current":"value"](i)),e.attr(I,!0),s.attr(z,!1),c._updateARIA(i))}})),s=c.dateView.div,c._icon();try{e[0].setAttribute("type","text")}catch(h){e[0].type="text"}e.addClass("k-input").attr({role:"combobox","aria-expanded":!1,"aria-owns":c.dateView._dateViewID}),c._reset(),c._template(),o=e.is("[disabled]")||t(c.element).parents("fieldset").is(":disabled"),o?c.enable(!1):c.readonly(e.is("[readonly]")),c._old=c._update(n.value||c.element.val()),c._oldText=e.val(),r.notify(c)},events:[m,v,w],options:{name:"DatePicker",value:null,footer:"",format:"",culture:"",parseFormats:[],min:new Date(1900,0,1),max:new Date(2099,11,31),start:E,depth:E,animation:{},month:{},dates:[],ARIATemplate:'Current focused date is #=kendo.toString(data.current, "D")#'},setOptions:function(t){var e=this,n=e._value;a.fn.setOptions.call(e,t),t=e.options,t.min=l(t.min),t.max=l(t.max),i(t),e.dateView.setOptions(t),n&&(e.element.val(r.toString(n,t.format,t.culture)),e._updateARIA(n))},_editable:function(t){var e=this,i=e._dateIcon.off(p),o=e.element.off(p),r=e._inputWrapper.off(p),s=t.readonly,a=t.disable;s||a?(r.addClass(a?C:x).removeClass(a?x:C),o.attr(_,a).attr(y,s).attr(B,a).attr(L,s)):(r.addClass(x).removeClass(C).on(T,e._toggleHover),o.removeAttr(_).removeAttr(y).attr(B,!1).attr(L,!1).on("keydown"+p,H(e._keydown,e)).on("focusout"+p,H(e._blur,e)).on("focus"+p,function(){e._inputWrapper.addClass(b)}),i.on(g,H(e._click,e)).on(A,n))},readonly:function(t){this._editable({readonly:t===e?!0:t,disable:!1})},enable:function(t){this._editable({readonly:!1,disable:!(t=t===e?!0:t)})},destroy:function(){var t=this;a.fn.destroy.call(t),t.dateView.destroy(),t.element.off(p),t._dateIcon.off(p),t._inputWrapper.off(p),t._form&&t._form.off("reset",t._resetHandler)},open:function(){this.dateView.open()},close:function(){this.dateView.close()},min:function(t){return this._option(D,t)},max:function(t){return this._option(M,t)},value:function(t){var i=this;return t===e?i._value:(i._old=i._update(t),null===i._old&&i.element.val(""),i._oldText=i.element.val(),e)},_toggleHover:function(e){t(e.currentTarget).toggleClass(S,"mouseenter"===e.type)},_blur:function(){var t=this,e=t.element.val();t.close(),e!==t._oldText&&t._change(e),t._inputWrapper.removeClass(b)},_click:function(){var t=this,e=t.element;t.dateView.toggle(),r.support.touch||e[0]===u()||e.focus()},_change:function(t){var e,i,n,o=this,r=o.element.val();t=o._update(t),e=+o._old!=+t,i=e&&!o._typing,n=r!==o.element.val(),(i||n)&&o.element.trigger(w),e&&(o._old=t,o._oldText=o.element.val(),o.trigger(w)),o._typing=!1},_keydown:function(t){var e=this,i=e.dateView,n=e.element.val(),o=!1;i.popup.visible()||t.keyCode!=c.ENTER||n===e._oldText?(o=i.move(t),e._updateARIA(i._current),o||(e._typing=!0)):e._change(n)},_icon:function(){var e,i=this,n=i.element;e=n.next("span.k-select"),e[0]||(e=t('select ').insertAfter(n)),i._dateIcon=e.attr({role:"button","aria-controls":i.dateView._dateViewID})},_option:function(t,i){var n=this,o=n.options;return i===e?o[t]:(i=l(i,o.parseFormats,o.culture),i&&(o[t]=new U(+i),n.dateView[t](i)),e)},_update:function(t){var e,i=this,n=i.options,o=n.min,s=n.max,a=i._value,c=l(t,n.parseFormats,n.culture),h=null===c&&null===a||c instanceof Date&&a instanceof Date;return n.disableDates(c)&&(c=null,i._old||(t=null)),+c===+a&&h?(e=r.toString(c,n.format,n.culture),e!==t&&i.element.val(null===c?t:e),c):(null!==c&&V(c,o)?c=F(c,o,s):O(c,o,s)||(c=null),i._value=c,i.dateView.value(c),i.element.val(c?r.toString(c,n.format,n.culture):t),i._updateARIA(c),c)},_wrapper:function(){var e,i=this,n=i.element;e=n.parents(".k-datepicker"),e[0]||(e=n.wrap(f).parent().addClass("k-picker-wrap k-state-default"),e=e.wrap(f).parent()),e[0].style.cssText=n[0].style.cssText,n.css({width:"100%",height:n[0].style.height}),i.wrapper=e.addClass("k-widget k-datepicker k-header").addClass(n[0].className),i._inputWrapper=t(e[0].firstChild)},_reset:function(){var e=this,i=e.element,n=i.attr("form"),o=n?t("#"+n):i.closest("form");o[0]&&(e._resetHandler=function(){e.value(i[0].defaultValue),e.max(e._initialOptions.max),e.min(e._initialOptions.min)},e._form=o.on("reset",e._resetHandler))},_template:function(){this._ariaTemplate=h(this.options.ARIATemplate)},_updateARIA:function(t){var e,i=this,n=i.dateView.calendar;i.element.removeAttr("aria-activedescendant"),n&&(e=n._cell,e.attr("aria-label",i._ariaTemplate({current:t||n.current()})),i.element.attr("aria-activedescendant",e.attr("id")))}}),s.plugin(o)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.numerictextbox.min",["kendo.core.min","kendo.userevents.min"],t)}(function(){return function(t,e){function i(t,e){return''+e+" "}var n=window.kendo,o=n.caret,r=n.keys,s=n.ui,a=s.Widget,l=n._activeElement,c=n._extractFormat,h=n.parseFloat,u=n.support.placeholder,d=n.getCulture,f=n._round,p="change",g="disabled",m="readonly",v="k-input",w="spin",_=".kendoNumericTextBox",y="touchend",x="mouseleave"+_,b="mouseenter"+_+" "+x,k="k-state-default",C="k-state-focused",S="k-state-hover",T="focus",A=".",P="k-state-selected",D="k-state-disabled",M="aria-disabled",E="aria-readonly",B=/^(-)?(\d*)$/,I=null,z=t.proxy,L=t.extend,R=a.extend({init:function(i,o){var r,s,l,h,u,d=this,f=o&&o.step!==e;a.fn.init.call(d,i,o),o=d.options,i=d.element.on("focusout"+_,z(d._focusout,d)).attr("role","spinbutton"),o.placeholder=o.placeholder||i.attr("placeholder"),d._initialOptions=L({},o),d._reset(),d._wrapper(),d._arrows(),d._input(),n.support.mobileOS?d._text.on(y+_+" "+T+_,function(){d._toggleText(!1),i.focus()}):d._text.on(T+_,z(d._click,d)),r=d.min(i.attr("min")),s=d.max(i.attr("max")),l=d._parse(i.attr("step")),o.min===I&&r!==I&&(o.min=r),o.max===I&&s!==I&&(o.max=s),f||l===I||(o.step=l),i.attr("aria-valuemin",o.min).attr("aria-valuemax",o.max),o.format=c(o.format),h=o.value,d.value(h!==I?h:i.val()),u=i.is("[disabled]")||t(d.element).parents("fieldset").is(":disabled"),u?d.enable(!1):d.readonly(i.is("[readonly]")),n.notify(d)},options:{name:"NumericTextBox",decimals:I,min:I,max:I,value:I,step:1,culture:"",format:"n",spinners:!0,placeholder:"",upArrowText:"Increase value",downArrowText:"Decrease value"},events:[p,w],_editable:function(t){var e=this,i=e.element,n=t.disable,o=t.readonly,r=e._text.add(i),s=e._inputWrapper.off(b);e._toggleText(!0),e._upArrowEventHandler.unbind("press"),e._downArrowEventHandler.unbind("press"),i.off("keydown"+_).off("keypress"+_).off("paste"+_),o||n?(s.addClass(n?D:k).removeClass(n?k:D),r.attr(g,n).attr(m,o).attr(M,n).attr(E,o)):(s.addClass(k).removeClass(D).on(b,e._toggleHover),r.removeAttr(g).removeAttr(m).attr(M,!1).attr(E,!1),e._upArrowEventHandler.bind("press",function(t){t.preventDefault(),e._spin(1),e._upArrow.addClass(P)}),e._downArrowEventHandler.bind("press",function(t){t.preventDefault(),e._spin(-1),e._downArrow.addClass(P)}),e.element.on("keydown"+_,z(e._keydown,e)).on("keypress"+_,z(e._keypress,e)).on("paste"+_,z(e._paste,e)))},readonly:function(t){this._editable({readonly:t===e?!0:t,disable:!1})},enable:function(t){this._editable({readonly:!1,disable:!(t=t===e?!0:t)})},destroy:function(){var t=this;t.element.add(t._text).add(t._upArrow).add(t._downArrow).add(t._inputWrapper).off(_),t._upArrowEventHandler.destroy(),t._downArrowEventHandler.destroy(),t._form&&t._form.off("reset",t._resetHandler),a.fn.destroy.call(t)},min:function(t){return this._option("min",t)},max:function(t){return this._option("max",t)},step:function(t){return this._option("step",t)},value:function(t){var i,n=this;return t===e?n._value:(t=n._parse(t),i=n._adjust(t),t===i&&(n._update(t),n._old=n._value),e)},focus:function(){this._focusin()},_adjust:function(t){var e=this,i=e.options,n=i.min,o=i.max;return t===I?t:(n!==I&&n>t?t=n:o!==I&&t>o&&(t=o),t)},_arrows:function(){var e,o=this,r=function(){clearTimeout(o._spinning),e.removeClass(P)},s=o.options,a=s.spinners,l=o.element;e=l.siblings(".k-icon"),e[0]||(e=t(i("n",s.upArrowText)+i("s",s.downArrowText)).insertAfter(l),e.wrapAll(' ')),a||(e.parent().toggle(a),o._inputWrapper.addClass("k-expand-padding")),o._upArrow=e.eq(0),o._upArrowEventHandler=new n.UserEvents(o._upArrow,{release:r}),o._downArrow=e.eq(1),o._downArrowEventHandler=new n.UserEvents(o._downArrow,{release:r})},_blur:function(){var t=this;t._toggleText(!0),t._change(t.element.val())},_click:function(t){var e=this;clearTimeout(e._focusing),e._focusing=setTimeout(function(){var i,n,r,s=t.target,a=o(s)[0],l=s.value.substring(0,a),c=e._format(e.options.format),h=c[","],u=0;h&&(n=RegExp("\\"+h,"g"),r=RegExp("([\\d\\"+h+"]+)(\\"+c[A]+")?(\\d+)?")),r&&(i=r.exec(l)),i&&(u=i[0].replace(n,"").length,-1!=l.indexOf("(")&&0>e._value&&u++),e._focusin(),o(e.element[0],u)})},_change:function(t){var e=this;e._update(t),t=e._value,e._old!=t&&(e._old=t,e._typing||e.element.trigger(p),e.trigger(p)),e._typing=!1},_culture:function(t){return t||d(this.options.culture)},_focusin:function(){var t=this;t._inputWrapper.addClass(C),t._toggleText(!1),t.element[0].focus()},_focusout:function(){var t=this;clearTimeout(t._focusing),t._inputWrapper.removeClass(C).removeClass(S),t._blur()},_format:function(t,e){var i=this._culture(e).numberFormat;return t=t.toLowerCase(),t.indexOf("c")>-1?i=i.currency:t.indexOf("p")>-1&&(i=i.percent),i},_input:function(){var e,i=this,n="k-formatted-value",o=i.element.addClass(v).show()[0],r=o.accessKey,s=i.wrapper;e=s.find(A+n),e[0]||(e=t(' ').insertBefore(o).addClass(n));try{o.setAttribute("type","text")}catch(a){o.type="text"}e[0].tabIndex=o.tabIndex,e[0].style.cssText=o.style.cssText,e[0].title=o.title,e.prop("placeholder",i.options.placeholder),r&&(e.attr("accesskey",r),o.accessKey=""),i._text=e.addClass(o.className)},_keydown:function(t){var e=this,i=t.keyCode;e._key=i,i==r.DOWN?e._step(-1):i==r.UP?e._step(1):i==r.ENTER?e._change(e.element.val()):e._typing=!0},_keypress:function(t){var e,i,n,s,a,l,c,h,u,d,f;0===t.which||t.metaKey||t.ctrlKey||t.keyCode===r.BACKSPACE||t.keyCode===r.ENTER||(e=this,i=e.options.min,n=e.element,s=o(n),a=s[0],l=s[1],c=String.fromCharCode(t.which),h=e._format(e.options.format),u=e._key===r.NUMPAD_DOT,d=n.val(),u&&(c=h[A]),d=d.substring(0,a)+c+d.substring(l),f=e._numericRegex(h).test(d),f&&u?(n.val(d),o(n,a+c.length),t.preventDefault()):(null!==i&&i>=0&&"-"===d.charAt(0)||!f)&&t.preventDefault(),e._key=0)},_numericRegex:function(t){var e=this,i=t[A],n=e.options.decimals;return i===A&&(i="\\"+i),n===I&&(n=t.decimals),0===n?B:(e._separator!==i&&(e._separator=i,e._floatRegExp=RegExp("^(-)?(((\\d+("+i+"\\d*)?)|("+i+"\\d*)))?$")),e._floatRegExp)},_paste:function(t){var e=this,i=t.target,n=i.value;setTimeout(function(){e._parse(i.value)===I&&e._update(n)})},_option:function(t,i){var n=this,o=n.options;return i===e?o[t]:(i=n._parse(i),(i||"step"!==t)&&(o[t]=i,n.element.attr("aria-value"+t,i).attr(t,i)),e)},_spin:function(t,e){var i=this;e=e||500,clearTimeout(i._spinning),i._spinning=setTimeout(function(){i._spin(t,50)},e),i._step(t)},_step:function(t){var e=this,i=e.element,n=e._parse(i.val())||0;l()!=i[0]&&e._focusin(),n+=e.options.step*t,e._update(e._adjust(n)),e._typing=!1,e.trigger(w)},_toggleHover:function(e){t(e.currentTarget).toggleClass(S,"mouseenter"===e.type)},_toggleText:function(t){var e=this;e._text.toggle(t),e.element.toggle(!t)},_parse:function(t,e){return h(t,this._culture(e),this.options.format)},_update:function(t){var e,i=this,o=i.options,r=o.format,s=o.decimals,a=i._culture(),l=i._format(r,a);s===I&&(s=l.decimals),t=i._parse(t,a),e=t!==I,e&&(t=parseFloat(f(t,s))),i._value=t=i._adjust(t),i._placeholder(n.toString(t,r,a)),e?(t=""+t,-1!==t.indexOf("e")&&(t=f(+t,s)),t=t.replace(A,l[A])):t="",i.element.val(t).attr("aria-valuenow",t)},_placeholder:function(t){this._text.val(t),u||t||this._text.val(this.options.placeholder)},_wrapper:function(){var e,i=this,n=i.element,o=n[0];e=n.parents(".k-numerictextbox"),e.is("span.k-numerictextbox")||(e=n.hide().wrap(' ').parent(),
e=e.wrap(" ").parent()),e[0].style.cssText=o.style.cssText,o.style.width="",i.wrapper=e.addClass("k-widget k-numerictextbox").addClass(o.className).css("display",""),i._inputWrapper=t(e[0].firstChild)},_reset:function(){var e=this,i=e.element,n=i.attr("form"),o=n?t("#"+n):i.closest("form");o[0]&&(e._resetHandler=function(){setTimeout(function(){e.value(i[0].value),e.max(e._initialOptions.max),e.min(e._initialOptions.min)})},e._form=o.on("reset",e._resetHandler))}});s.plugin(R)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.validator.min",["kendo.core.min"],t)}(function(){return function(t,e){function i(e){var i,n=l.ui.validator.ruleResolvers||{},o={};for(i in n)t.extend(!0,o,n[i].resolve(e));return o}function n(t){return t.replace(/&/g,"&").replace(/"/g,'"').replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}function o(t){return t=(t+"").split("."),t.length>1?t[1].length:0}function r(e){return t(t.parseHTML?t.parseHTML(e):e)}function s(e,i){var n,o,r,s,a=t();for(r=0,s=e.length;s>r;r++)n=e[r],d.test(n.className)&&(o=n.getAttribute(l.attr("for")),o===i&&(a=a.add(n)));return a}var a,l=window.kendo,c=l.ui.Widget,h=".kendoValidator",u="k-invalid-msg",d=RegExp(u,"i"),f="k-invalid",p="k-valid",g=/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i,m=/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i,v=":input:not(:button,[type=submit],[type=reset],[disabled],[readonly])",w=":checkbox:not([disabled],[readonly])",_="[type=number],[type=range]",y="blur",x="name",b="form",k="novalidate",C=t.proxy,S=function(t,e){return"string"==typeof e&&(e=RegExp("^(?:"+e+")$")),e.test(t)},T=function(t,e,i){var n=t.val();return t.filter(e).length&&""!==n?S(n,i):!0},A=function(t,e){return t.length?null!=t[0].attributes[e]:!1};l.ui.validator||(l.ui.validator={rules:{},messages:{}}),a=c.extend({init:function(e,n){var o=this,r=i(e),s="["+l.attr("validate")+"!=false]";n=n||{},n.rules=t.extend({},l.ui.validator.rules,r.rules,n.rules),n.messages=t.extend({},l.ui.validator.messages,r.messages,n.messages),c.fn.init.call(o,e,n),o._errorTemplate=l.template(o.options.errorTemplate),o.element.is(b)&&o.element.attr(k,k),o._inputSelector=v+s,o._checkboxSelector=w+s,o._errors={},o._attachEvents(),o._isValidated=!1},events:["validate","change"],options:{name:"Validator",errorTemplate:' #=message# ',messages:{required:"{0} is required",pattern:"{0} is not valid",min:"{0} should be greater than or equal to {1}",max:"{0} should be smaller than or equal to {1}",step:"{0} is not valid",email:"{0} is not valid email",url:"{0} is not valid URL",date:"{0} is not valid date",dateCompare:"End date should be greater than or equal to the start date"},rules:{required:function(t){var e=t.filter("[type=checkbox]").length&&!t.is(":checked"),i=t.val();return!(A(t,"required")&&(""===i||!i||e))},pattern:function(t){return t.filter("[type=text],[type=email],[type=url],[type=tel],[type=search],[type=password]").filter("[pattern]").length&&""!==t.val()?S(t.val(),t.attr("pattern")):!0},min:function(t){if(t.filter(_+",["+l.attr("type")+"=number]").filter("[min]").length&&""!==t.val()){var e=parseFloat(t.attr("min"))||0,i=l.parseFloat(t.val());return i>=e}return!0},max:function(t){if(t.filter(_+",["+l.attr("type")+"=number]").filter("[max]").length&&""!==t.val()){var e=parseFloat(t.attr("max"))||0,i=l.parseFloat(t.val());return e>=i}return!0},step:function(t){if(t.filter(_+",["+l.attr("type")+"=number]").filter("[step]").length&&""!==t.val()){var e,i=parseFloat(t.attr("min"))||0,n=parseFloat(t.attr("step"))||1,r=parseFloat(t.val()),s=o(n);return s?(e=Math.pow(10,s),Math.floor((r-i)*e)%(n*e)/Math.pow(100,s)===0):(r-i)%n===0}return!0},email:function(t){return T(t,"[type=email],["+l.attr("type")+"=email]",g)},url:function(t){return T(t,"[type=url],["+l.attr("type")+"=url]",m)},date:function(t){return t.filter("[type^=date],["+l.attr("type")+"=date]").length&&""!==t.val()?null!==l.parseDate(t.val(),t.attr(l.attr("format"))):!0}},validateOnBlur:!0},destroy:function(){c.fn.destroy.call(this),this.element.off(h)},value:function(){return this._isValidated?0===this.errors().length:!1},_submit:function(t){return this.validate()?!0:(t.stopPropagation(),t.stopImmediatePropagation(),t.preventDefault(),!1)},_checkElement:function(t){var e=this.value();this.validateInput(t),this.value()!==e&&this.trigger("change")},_attachEvents:function(){var e=this;e.element.is(b)&&e.element.on("submit"+h,C(e._submit,e)),e.options.validateOnBlur&&(e.element.is(v)?(e.element.on(y+h,function(){e._checkElement(e.element)}),e.element.is(w)&&e.element.on("click"+h,function(){e._checkElement(e.element)})):(e.element.on(y+h,e._inputSelector,function(){e._checkElement(t(this))}),e.element.on("click"+h,e._checkboxSelector,function(){e._checkElement(t(this))})))},validate:function(){var t,e,i,n,o=!1,r=this.value();if(this._errors={},this.element.is(v))o=this.validateInput(this.element);else{for(n=!1,t=this.element.find(this._inputSelector),e=0,i=t.length;i>e;e++)this.validateInput(t.eq(e))||(n=!0);o=!n}return this.trigger("validate",{valid:o}),r!==o&&this.trigger("change"),o},validateInput:function(e){var i,o,s,a,c,h,d,g,m,v;return e=t(e),this._isValidated=!0,i=this,o=i._errorTemplate,s=i._checkValidity(e),a=s.valid,c="."+u,h=e.attr(x)||"",d=i._findMessageContainer(h).add(e.next(c).filter(function(){var e=t(this);return e.filter("["+l.attr("for")+"]").length?e.attr(l.attr("for"))===h:!0})).hide(),e.removeAttr("aria-invalid"),a?delete i._errors[h]:(g=i._extractMessage(e,s.key),i._errors[h]=g,m=r(o({message:n(g)})),v=d.attr("id"),i._decorateMessageContainer(m,h),v&&m.attr("id",v),d.replaceWith(m).length||m.insertAfter(e),m.show(),e.attr("aria-invalid",!0)),e.toggleClass(f,!a),e.toggleClass(p,a),a},hideMessages:function(){var t=this,e="."+u,i=t.element;i.is(v)?i.next(e).hide():i.find(e).hide()},_findMessageContainer:function(e){var i,n,o,r=l.ui.validator.messageLocators,a=t();for(n=0,o=this.element.length;o>n;n++)a=a.add(s(this.element[n].getElementsByTagName("*"),e));for(i in r)a=a.add(r[i].locate(this.element,e));return a},_decorateMessageContainer:function(t,e){var i,n=l.ui.validator.messageLocators;t.addClass(u).attr(l.attr("for"),e||"");for(i in n)n[i].decorate(t,e);t.attr("role","alert")},_extractMessage:function(t,e){var i=this,n=i.options.messages[e],o=t.attr(x);return n=l.isFunction(n)?n(t):n,l.format(t.attr(l.attr(e+"-msg"))||t.attr("validationMessage")||t.attr("title")||n||"",o,t.attr(e))},_checkValidity:function(t){var e,i=this.options.rules;for(e in i)if(!i[e].call(this,t))return{valid:!1,key:e};return{valid:!0}},errors:function(){var t,e=[],i=this._errors;for(t in i)e.push(i[t]);return e}}),l.ui.plugin(a)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.editable.min",["kendo.datepicker.min","kendo.numerictextbox.min","kendo.validator.min","kendo.binder.min"],t)}(function(){return function(t,e){function i(e){return e=null!=e?e:"",e.type||t.type(e)||"string"}function n(e){e.find(":input:not(:button, ["+a.attr("role")+"=upload], ["+a.attr("skip")+"], [type=file]), select").each(function(){var e=a.attr("bind"),i=this.getAttribute(e)||"",n="checkbox"===this.type||"radio"===this.type?"checked:":"value:",o=this.name;-1===i.indexOf(n)&&o&&(i+=(i.length?",":"")+n+o,t(this).attr(e,i))})}function o(t){var e,n,o=(t.model.fields||t.model)[t.field],r=i(o),s=o?o.validation:{},l=a.attr("type"),c=a.attr("bind"),h={name:t.field};for(e in s)n=s[e],p(e,w)>=0?h[l]=e:d(n)||(h[e]=f(n)?n.value||e:n),h[a.attr(e+"-msg")]=n.message;return p(r,w)>=0&&(h[l]=r),h[c]=("boolean"===r?"checked:":"value:")+t.field,h}function r(t){var e,i,n,o,r,s;if(t&&t.length)for(s=[],e=0,i=t.length;i>e;e++)n=t[e],r=n.text||n.value||n,o=null==n.value?n.text||n:n.value,s[e]={text:r,value:o};return s}function s(t,e){var i,n,o=t?t.validation||{}:{};for(i in o)n=o[i],f(n)&&n.value&&(n=n.value),d(n)&&(e[i]=n)}var a=window.kendo,l=a.ui,c=l.Widget,h=t.extend,u=a.support.browser.msie&&9>a.support.browser.version,d=a.isFunction,f=t.isPlainObject,p=t.inArray,g=/("|\%|'|\[|\]|\$|\.|\,|\:|\;|\+|\*|\&|\!|\#|\(|\)|<|>|\=|\?|\@|\^|\{|\}|\~|\/|\||`)/g,m='',v="change",w=["url","email","number","date","boolean"],_={number:function(e,i){var n=o(i);t(' ').attr(n).appendTo(e).kendoNumericTextBox({format:i.format}),t(" ').hide().appendTo(e)},date:function(e,i){var n=o(i),r=i.format;r&&(r=a._extractFormat(r)),n[a.attr("format")]=r,t(' ').attr(n).appendTo(e).kendoDatePicker({format:i.format}),t(" ').hide().appendTo(e)},string:function(e,i){var n=o(i);t(' ').attr(n).appendTo(e)},"boolean":function(e,i){var n=o(i);t(' ').attr(n).appendTo(e)},values:function(e,i){var n=o(i),s=a.stringify(r(i.values));t(" ').attr(n).appendTo(e),t(" ').hide().appendTo(e)}},y=c.extend({init:function(e,i){var n=this;i.target&&(i.$angular=i.target.options.$angular),c.fn.init.call(n,e,i),n._validateProxy=t.proxy(n._validate,n),n.refresh()},events:[v],options:{name:"Editable",editors:_,clearContainer:!0,errorTemplate:m},editor:function(t,e){var n=this,o=n.options.editors,r=f(t),s=r?t.field:t,l=n.options.model||{},c=r&&t.values,u=c?"values":i(e),d=r&&t.editor,p=d?t.editor:o[u],m=n.element.find("["+a.attr("container-for")+"="+s.replace(g,"\\$1")+"]");p=p?p:o.string,d&&"string"==typeof t.editor&&(p=function(e){e.append(t.editor)}),m=m.length?m:n.element,p(m,h(!0,{},r?t:{field:s},{model:l}))},_validate:function(e){var i,n=this,o=e.value,r=n._validationEventInProgress,s={},l=a.attr("bind"),c=e.field.replace(g,"\\$1"),h=RegExp("(value|checked)\\s*:\\s*"+c+"\\s*(,|$)");s[e.field]=e.value,i=t(":input["+l+'*="'+c+'"]',n.element).filter("["+a.attr("validate")+"!='false']").filter(function(){return h.test(t(this).attr(l))}),i.length>1&&(i=i.filter(function(){var e=t(this);return!e.is(":radio")||e.val()==o}));try{n._validationEventInProgress=!0,(!n.validatable.validateInput(i)||!r&&n.trigger(v,{values:s}))&&e.preventDefault()}finally{n._validationEventInProgress=!1}},end:function(){return this.validatable.validate()},destroy:function(){var t=this;t.angular("cleanup",function(){return{elements:t.element}}),c.fn.destroy.call(t),t.options.model.unbind("set",t._validateProxy),a.unbind(t.element),t.validatable&&t.validatable.destroy(),a.destroy(t.element),t.element.removeData("kendoValidator"),t.element.is("["+a.attr("role")+"=editable]")&&t.element.removeAttr(a.attr("role"))},refresh:function(){var i,o,r,l,c,h,d,p,g=this,m=g.options.fields||[],v=g.options.clearContainer?g.element.empty():g.element,w=g.options.model||{},_={};for(t.isArray(m)||(m=[m]),i=0,o=m.length;o>i;i++)r=m[i],l=f(r),c=l?r.field:r,h=(w.fields||w)[c],s(h,_),g.editor(r,h);if(g.options.target&&g.angular("compile",function(){return{elements:v,data:v.map(function(){return{dataItem:w}})}}),!o){d=w.fields||w;for(c in d)s(d[c],_)}n(v),g.validatable&&g.validatable.destroy(),a.bind(v,g.options.model),g.options.model.unbind("set",g._validateProxy),g.options.model.bind("set",g._validateProxy),g.validatable=new a.ui.Validator(v,{validateOnBlur:!1,errorTemplate:g.options.errorTemplate||e,rules:_}),p=v.find(":kendoFocusable").eq(0).focus(),u&&p.focus()}});l.plugin(y)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.window.min",["kendo.draganddrop.min"],t)}(function(){return function(t,e){function i(t){return e!==t}function n(t,e,i){return Math.max(Math.min(parseInt(t,10),i===1/0?i:parseInt(i,10)),parseInt(e,10))}function o(t,e){return function(){var i=this,n=i.wrapper,o=n[0].style,r=i.options;return r.isMaximized||r.isMinimized?i:(i.restoreOptions={width:o.width,height:o.height},n.children(k).hide().end().children(x).find(W).parent().hide().eq(0).before(J.action({name:"Restore"})),e.call(i),"maximize"==t?i.wrapper.children(x).find(Y).parent().hide():i.wrapper.children(x).find(Y).parent().show(),i)}}function r(){return!this.type||this.type.toLowerCase().indexOf("script")>=0}function s(t){var e=this;e.owner=t,e._draggable=new h(t.wrapper,{filter:">"+k,group:t.wrapper.id+"-resizing",dragstart:f(e.dragstart,e),drag:f(e.drag,e),dragend:f(e.dragend,e)}),e._draggable.userEvents.bind("press",f(e.addOverlay,e)),e._draggable.userEvents.bind("release",f(e.removeOverlay,e))}function a(t,e){var i=this;i.owner=t,i._draggable=new h(t.wrapper,{filter:e,group:t.wrapper.id+"-moving",dragstart:f(i.dragstart,i),drag:f(i.drag,i),dragend:f(i.dragend,i),dragcancel:f(i.dragcancel,i)}),i._draggable.userEvents.stopPropagation=!1}var l=window.kendo,c=l.ui.Widget,h=l.ui.Draggable,u=t.isPlainObject,d=l._activeElement,f=t.proxy,p=t.extend,g=t.each,m=l.template,v="body",w=".kendoWindow",_=".k-window",y=".k-window-title",x=y+"bar",b=".k-window-content",k=".k-resize-handle",C=".k-overlay",S="k-content-frame",T="k-loading",A="k-state-hover",P="k-state-focused",D="k-window-maximized",M=":visible",E="hidden",B="cursor",I="open",z="activate",L="deactivate",R="close",O="refresh",F="resize",V="resizeEnd",N="dragstart",H="dragend",U="error",j="overflow",G="zIndex",W=".k-window-actions .k-i-minimize,.k-window-actions .k-i-maximize",q=".k-i-pin",$=".k-i-unpin",Y=q+","+$,X=".k-window-titlebar .k-window-action",Q=".k-window-titlebar .k-i-refresh",K=l.isLocalUrl,Z=c.extend({init:function(n,o){var s,a,h,d,p,g,m,v=this,k={},C=!1,S=o&&o.actions&&!o.actions.length;c.fn.init.call(v,n,o),o=v.options,d=o.position,n=v.element,p=o.content,S&&(o.actions=[]),v.appendTo=t(o.appendTo),p&&!u(p)&&(p=o.content={url:p}),n.find("script").filter(r).remove(),n.parent().is(v.appendTo)||d.top!==e&&d.left!==e||(n.is(M)?(k=n.offset(),C=!0):(a=n.css("visibility"),h=n.css("display"),n.css({visibility:E,display:""}),k=n.offset(),n.css({visibility:a,display:h})),d.top===e&&(d.top=k.top),d.left===e&&(d.left=k.left)),i(o.visible)&&null!==o.visible||(o.visible=n.is(M)),s=v.wrapper=n.closest(_),n.is(".k-content")&&s[0]||(n.addClass("k-window-content k-content"),v._createWindow(n,o),s=v.wrapper=n.closest(_),v._dimensions()),v._position(),o.pinned&&v.pin(!0),p&&v.refresh(p),o.visible&&v.toFront(),g=s.children(b),v._tabindex(g),o.visible&&o.modal&&v._overlay(s.is(M)).css({opacity:.5}),s.on("mouseenter"+w,X,f(v._buttonEnter,v)).on("mouseleave"+w,X,f(v._buttonLeave,v)).on("click"+w,"> "+X,f(v._windowActionHandler,v)),g.on("keydown"+w,f(v._keydown,v)).on("focus"+w,f(v._focus,v)).on("blur"+w,f(v._blur,v)),this._resizable(),this._draggable(),m=n.attr("id"),m&&(m+="_wnd_title",s.children(x).children(y).attr("id",m),g.attr({role:"dialog","aria-labelledby":m})),s.add(s.children(".k-resize-handle,"+x)).on("mousedown"+w,f(v.toFront,v)),v.touchScroller=l.touchScroller(n),v._resizeHandler=f(v._onDocumentResize,v),v._marker=l.guid().substring(0,8),t(window).on("resize"+w+v._marker,v._resizeHandler),o.visible&&(v.trigger(I),v.trigger(z)),l.notify(v)},_buttonEnter:function(e){t(e.currentTarget).addClass(A)},_buttonLeave:function(e){t(e.currentTarget).removeClass(A)},_focus:function(){this.wrapper.addClass(P)},_blur:function(){this.wrapper.removeClass(P)},_dimensions:function(){var t,e,i=this.wrapper,o=this.options,r=o.width,s=o.height,a=o.maxHeight,l=["minWidth","minHeight","maxWidth","maxHeight"];for(this.title(o.title),t=0;l.length>t;t++)e=o[l[t]],e&&e!=1/0&&i.css(l[t],e);a&&a!=1/0&&this.element.css("maxHeight",a),r&&i.width((""+r).indexOf("%")>0?r:n(r,o.minWidth,o.maxWidth)),s&&i.height((""+s).indexOf("%")>0?s:n(s,o.minHeight,o.maxHeight)),o.visible||i.hide()},_position:function(){var t=this.wrapper,e=this.options.position;0===e.top&&(e.top=""+e.top),0===e.left&&(e.left=""+e.left),t.css({top:e.top||"",left:e.left||""})},_animationOptions:function(t){var e=this.options.animation,i={open:{effects:{}},close:{hide:!0,effects:{}}};return e&&e[t]||i[t]},_resize:function(){l.resize(this.element.children())},_resizable:function(){var e=this.options.resizable,i=this.wrapper;this.resizing&&(i.off("dblclick"+w).children(k).remove(),this.resizing.destroy(),this.resizing=null),e&&(i.on("dblclick"+w,x,f(function(e){t(e.target).closest(".k-window-action").length||this.toggleMaximization()},this)),g("n e s w se sw ne nw".split(" "),function(t,e){i.append(J.resizeHandle(e))}),this.resizing=new s(this)),i=null},_draggable:function(){var t=this.options.draggable;this.dragging&&(this.dragging.destroy(),this.dragging=null),t&&(this.dragging=new a(this,t.dragHandle||x))},_actions:function(){var e=this.options.actions,i=this.wrapper.children(x),n=i.find(".k-window-actions");e=t.map(e,function(t){return{name:t}}),n.html(l.render(J.action,e))},setOptions:function(t){var i,n;c.fn.setOptions.call(this,t),i=this.options.scrollable!==!1,this.restore(),this._dimensions(),this._position(),this._resizable(),this._draggable(),this._actions(),e!==t.modal&&(n=this.options.visible!==!1,this._overlay(t.modal&&n)),this.element.css(j,i?"":"hidden")},events:[I,z,L,R,O,F,V,N,H,U],options:{name:"Window",animation:{open:{effects:{zoom:{direction:"in"},fade:{direction:"in"}},duration:350},close:{effects:{zoom:{direction:"out",properties:{scale:.7}},fade:{direction:"out"}},duration:350,hide:!0}},title:"",actions:["Close"],autoFocus:!0,modal:!1,resizable:!0,draggable:!0,minWidth:90,minHeight:50,maxWidth:1/0,maxHeight:1/0,pinned:!1,scrollable:!0,position:{},content:null,visible:null,height:null,width:null,appendTo:"body"},_closable:function(){return t.inArray("close",t.map(this.options.actions,function(t){return t.toLowerCase()}))>-1},_keydown:function(t){var e,i,o,r,s,a,c=this,h=c.options,u=l.keys,d=t.keyCode,f=c.wrapper,p=10,g=c.options.isMaximized;t.target!=t.currentTarget||c._closing||(d==u.ESC&&c._closable()&&c._close(!1),!h.draggable||t.ctrlKey||g||(e=l.getOffset(f),d==u.UP?i=f.css("top",e.top-p):d==u.DOWN?i=f.css("top",e.top+p):d==u.LEFT?i=f.css("left",e.left-p):d==u.RIGHT&&(i=f.css("left",e.left+p))),h.resizable&&t.ctrlKey&&!g&&(d==u.UP?(i=!0,r=f.height()-p):d==u.DOWN&&(i=!0,r=f.height()+p),d==u.LEFT?(i=!0,o=f.width()-p):d==u.RIGHT&&(i=!0,o=f.width()+p),i&&(s=n(o,h.minWidth,h.maxWidth),a=n(r,h.minHeight,h.maxHeight),isNaN(s)||(f.width(s),c.options.width=s+"px"),isNaN(a)||(f.height(a),c.options.height=a+"px"),c.resize())),i&&t.preventDefault())},_overlay:function(e){var i=this.appendTo.children(C),n=this.wrapper;return i.length||(i=t("
")),i.insertBefore(n[0]).toggle(e).css(G,parseInt(n.css(G),10)-1),i},_actionForIcon:function(t){var e=/\bk-i-\w+\b/.exec(t[0].className)[0];return{"k-i-close":"_close","k-i-maximize":"maximize","k-i-minimize":"minimize","k-i-restore":"restore","k-i-refresh":"refresh","k-i-pin":"pin","k-i-unpin":"unpin"}[e]},_windowActionHandler:function(i){var n,o;if(!this._closing)return n=t(i.target).closest(".k-window-action").find(".k-icon"),o=this._actionForIcon(n),o?(i.preventDefault(),this[o](),!1):e},_modals:function(){var e=this,i=t(_).filter(function(){var i=t(this),n=e._object(i),o=n&&n.options;return o&&o.modal&&o.visible&&o.appendTo===e.options.appendTo&&i.is(M)}).sort(function(e,i){return+t(e).css("zIndex")-+t(i).css("zIndex")});return e=null,i},_object:function(t){var i=t.children(b),n=l.widgetInstance(i);return n instanceof Z?n:e},center:function(){var e,i,n=this,o=n.options.position,r=n.wrapper,s=t(window),a=0,l=0;return n.options.isMaximized?n:(n.options.pinned||(a=s.scrollTop(),l=s.scrollLeft()),i=l+Math.max(0,(s.width()-r.width())/2),e=a+Math.max(0,(s.height()-r.height()-parseInt(r.css("paddingTop"),10))/2),r.css({left:i,top:e}),o.top=e,o.left=i,n)},title:function(t){var e,i=this,n=i.wrapper,o=i.options,r=n.children(x),s=r.children(y);return arguments.length?(t===!1?(n.addClass("k-window-titleless"),r.remove()):(r.length?s.html(t):(n.prepend(J.titlebar(o)),i._actions(),r=n.children(x)),e=r.outerHeight(),n.css("padding-top",e),r.css("margin-top",-e)),i.options.title=t,i):s.html()},content:function(t,e){var n=this.wrapper.children(b),o=n.children(".km-scroll-container");return n=o[0]?o:n,i(t)?(this.angular("cleanup",function(){return{elements:n.children()}}),l.destroy(this.element.children()),n.empty().html(t),this.angular("compile",function(){var t,i=[];for(t=n.length;--t>=0;)i.push({dataItem:e});return{elements:n.children(),data:i}}),this):n.html()},open:function(){var e,i,n=this,o=n.wrapper,r=n.options,s=this._animationOptions("open"),a=o.children(b),c=t(document);return n.trigger(I)||(n._closing&&o.kendoStop(!0,!0),n._closing=!1,n.toFront(),r.autoFocus&&n.element.focus(),r.visible=!0,r.modal&&(e=n._overlay(!1),e.kendoStop(!0,!0),s.duration&&l.effects.Fade?(i=l.fx(e).fadeIn(),i.duration(s.duration||0),i.endValue(.5),i.play()):e.css("opacity",.5),e.show()),o.is(M)||(a.css(j,E),o.show().kendoStop().kendoAnimate({effects:s.effects,duration:s.duration,complete:f(this._activate,this)}))),r.isMaximized&&(n._documentScrollTop=c.scrollTop(),n._documentScrollLeft=c.scrollLeft(),t("html, body").css(j,E)),n},_activate:function(){var t=this.options.scrollable!==!1;this.options.autoFocus&&this.element.focus(),this.element.css(j,t?"":"hidden"),this.trigger(z)},_removeOverlay:function(i){var n,o=this._modals(),r=this.options,s=r.modal&&!o.length,a=r.modal?this._overlay(!0):t(e),c=this._animationOptions("close");s?!i&&c.duration&&l.effects.Fade?(n=l.fx(a).fadeOut(),n.duration(c.duration||0),n.startValue(.5),n.play()):this._overlay(!1).remove():o.length&&this._object(o.last())._overlay(!0)},_close:function(e){var i=this,n=i.wrapper,o=i.options,r=this._animationOptions("open"),s=this._animationOptions("close"),a=t(document);if(n.is(M)&&!i.trigger(R,{userTriggered:!e})){if(i._closing)return;i._closing=!0,o.visible=!1,t(_).each(function(e,i){var o=t(i).children(b);i!=n&&o.find("> ."+S).length>0&&o.children(C).remove()}),this._removeOverlay(),n.kendoStop().kendoAnimate({effects:s.effects||r.effects,reverse:s.reverse===!0,duration:s.duration,complete:f(this._deactivate,this)})}i.options.isMaximized&&(t("html, body").css(j,""),i._documentScrollTop&&i._documentScrollTop>0&&a.scrollTop(i._documentScrollTop),i._documentScrollLeft&&i._documentScrollLeft>0&&a.scrollLeft(i._documentScrollLeft))},_deactivate:function(){var t,e=this;e.wrapper.hide().css("opacity",""),e.trigger(L),e.options.modal&&(t=e._object(e._modals().last()),t&&t.toFront())},close:function(){return this._close(!0),this},_actionable:function(e){return t(e).is(X+","+X+" .k-icon,:input,a")},_shouldFocus:function(e){var i=d(),n=this.element;return this.options.autoFocus&&!t(i).is(n)&&!this._actionable(e)&&(!n.find(i).length||!n.find(e).length)},toFront:function(e){var i,n,o=this,r=o.wrapper,s=r[0],a=+r.css(G),l=a,c=e&&e.target||null;return t(_).each(function(e,i){var n=t(i),o=n.css(G),r=n.children(b);isNaN(o)||(a=Math.max(+o,a)),i!=s&&r.find("> ."+S).length>0&&r.append(J.overlay)}),(!r[0].style.zIndex||a>l)&&r.css(G,a+2),o.element.find("> .k-overlay").remove(),o._shouldFocus(c)&&(o.element.focus(),i=t(window).scrollTop(),n=parseInt(r.position().top,10),n>0&&i>n&&(i>0?t(window).scrollTop(n):r.css("top",i))),r=null,o},toggleMaximization:function(){return this._closing?this:this[this.options.isMaximized?"restore":"maximize"]()},restore:function(){var e=this,i=e.options,n=i.minHeight,o=e.restoreOptions,r=t(document);return i.isMaximized||i.isMinimized?(n&&n!=1/0&&e.wrapper.css("min-height",n),e.wrapper.css({position:i.pinned?"fixed":"absolute",left:o.left,top:o.top,width:o.width,height:o.height}).removeClass(D).find(".k-window-content,.k-resize-handle").show().end().find(".k-window-titlebar .k-i-restore").parent().remove().end().end().find(W).parent().show().end().end().find(Y).parent().show(),e.options.width=o.width,e.options.height=o.height,t("html, body").css(j,""),this._documentScrollTop&&this._documentScrollTop>0&&r.scrollTop(this._documentScrollTop),this._documentScrollLeft&&this._documentScrollLeft>0&&r.scrollLeft(this._documentScrollLeft),i.isMaximized=i.isMinimized=!1,e.resize(),e):e},maximize:o("maximize",function(){var e=this,i=e.wrapper,n=i.position(),o=t(document);p(e.restoreOptions,{left:n.left,top:n.top}),i.css({left:0,top:0,position:"fixed"}).addClass(D),this._documentScrollTop=o.scrollTop(),this._documentScrollLeft=o.scrollLeft(),t("html, body").css(j,E),e.options.isMaximized=!0,e._onDocumentResize()}),minimize:o("minimize",function(){var t=this;t.wrapper.css({height:"",minHeight:""}),t.element.hide(),t.options.isMinimized=!0}),pin:function(e){var i=this,n=t(window),o=i.wrapper,r=parseInt(o.css("top"),10),s=parseInt(o.css("left"),10);(e||!i.options.pinned&&!i.options.isMaximized)&&(o.css({position:"fixed",top:r-n.scrollTop(),left:s-n.scrollLeft()}),o.children(x).find(q).addClass("k-i-unpin").removeClass("k-i-pin"),i.options.pinned=!0)},unpin:function(){var e=this,i=t(window),n=e.wrapper,o=parseInt(n.css("top"),10),r=parseInt(n.css("left"),10);e.options.pinned&&!e.options.isMaximized&&(n.css({position:"",top:o+i.scrollTop(),left:r+i.scrollLeft()}),n.children(x).find($).addClass("k-i-pin").removeClass("k-i-unpin"),e.options.pinned=!1)},_onDocumentResize:function(){var e,i,n=this,o=n.wrapper,r=t(window),s=l.support.zoomLevel();n.options.isMaximized&&(e=r.width()/s,i=r.height()/s-parseInt(o.css("padding-top"),10),o.css({width:e,height:i}),n.options.width=e,n.options.height=i,n.resize())},refresh:function(e){var n,o,r,s=this,a=s.options,l=t(s.element);return u(e)||(e={url:e}),e=p({},a.content,e),o=i(a.iframe)?a.iframe:e.iframe,r=e.url,r?(i(o)||(o=!K(r)),o?(n=l.find("."+S)[0],n?n.src=r||n.src:l.html(J.contentFrame(p({},a,{content:e}))),l.find("."+S).unbind("load"+w).on("load"+w,f(this._triggerRefresh,this))):s._ajaxRequest(e)):(e.template&&s.content(m(e.template)({})),s.trigger(O)),l.toggleClass("k-window-iframecontent",!!o),s},_triggerRefresh:function(){this.trigger(O)},_ajaxComplete:function(){clearTimeout(this._loadingIconTimeout),this.wrapper.find(Q).removeClass(T)},_ajaxError:function(t,e){this.trigger(U,{status:e,xhr:t})},_ajaxSuccess:function(t){return function(e){var i=e;t&&(i=m(t)(e||{})),this.content(i,e),this.element.prop("scrollTop",0),this.trigger(O)}},_showLoading:function(){this.wrapper.find(Q).addClass(T)},_ajaxRequest:function(e){this._loadingIconTimeout=setTimeout(f(this._showLoading,this),100),t.ajax(p({type:"GET",dataType:"html",cache:!1,error:f(this._ajaxError,this),complete:f(this._ajaxComplete,this),success:f(this._ajaxSuccess(e.template),this)},e))},_destroy:function(){this.resizing&&this.resizing.destroy(),this.dragging&&this.dragging.destroy(),this.wrapper.off(w).children(b).off(w).end().find(".k-resize-handle,.k-window-titlebar").off(w),t(window).off("resize"+w+this._marker),clearTimeout(this._loadingIconTimeout),c.fn.destroy.call(this),this.unbind(e),l.destroy(this.wrapper),this._removeOverlay(!0)},destroy:function(){this._destroy(),this.wrapper.empty().remove(),this.wrapper=this.appendTo=this.element=t()},_createWindow:function(){var e,i,n=this.element,o=this.options,r=l.support.isRtl(n);o.scrollable===!1&&n.attr("style","overflow:hidden;"),i=t(J.wrapper(o)),e=n.find("iframe:not(.k-content)").map(function(){var t=this.getAttribute("src");return this.src="",t}),i.toggleClass("k-rtl",r).appendTo(this.appendTo).append(n).find("iframe:not(.k-content)").each(function(t){this.src=e[t]}),i.find(".k-window-title").css(r?"left":"right",i.find(".k-window-actions").outerWidth()+10),n.css("visibility","").show(),n.find("[data-role=editor]").each(function(){var e=t(this).data("kendoEditor");e&&e.refresh()}),i=n=null}}),J={wrapper:m("
"),action:m("#= name # "),titlebar:m(""),overlay:"
",contentFrame:m(""),resizeHandle:m("
")};s.prototype={addOverlay:function(){this.owner.wrapper.append(J.overlay)},removeOverlay:function(){this.owner.wrapper.find(C).remove()},dragstart:function(e){var i=this,n=i.owner,o=n.wrapper;i.elementPadding=parseInt(o.css("padding-top"),10),i.initialPosition=l.getOffset(o,"position"),i.resizeDirection=e.currentTarget.prop("className").replace("k-resize-handle k-resize-",""),i.initialSize={width:o.width(),height:o.height()},i.containerOffset=l.getOffset(n.appendTo,"position"),o.children(k).not(e.currentTarget).hide(),t(v).css(B,e.currentTarget.css(B))},drag:function(t){var e,i,o,r,s=this,a=s.owner,l=a.wrapper,c=a.options,h=s.resizeDirection,u=s.containerOffset,d=s.initialPosition,f=s.initialSize,p=Math.max(t.x.location,u.left),g=Math.max(t.y.location,u.top);h.indexOf("e")>=0?(e=p-d.left,l.width(n(e,c.minWidth,c.maxWidth))):h.indexOf("w")>=0&&(r=d.left+f.width,e=n(r-p,c.minWidth,c.maxWidth),l.css({left:r-e-u.left,width:e})),h.indexOf("s")>=0?(i=g-d.top-s.elementPadding,l.height(n(i,c.minHeight,c.maxHeight))):h.indexOf("n")>=0&&(o=d.top+f.height,i=n(o-g,c.minHeight,c.maxHeight),l.css({top:o-i-u.top,height:i})),e&&(a.options.width=e+"px"),i&&(a.options.height=i+"px"),a.resize()},dragend:function(e){var i=this,n=i.owner,o=n.wrapper;return o.children(k).not(e.currentTarget).show(),t(v).css(B,""),n.touchScroller&&n.touchScroller.reset(),
27==e.keyCode&&o.css(i.initialPosition).css(i.initialSize),n.trigger(V),!1},destroy:function(){this._draggable&&this._draggable.destroy(),this._draggable=this.owner=null}},a.prototype={dragstart:function(e){var i=this.owner,n=i.element,o=n.find(".k-window-actions"),r=l.getOffset(i.appendTo);i.trigger(N),i.initialWindowPosition=l.getOffset(i.wrapper,"position"),i.startPosition={left:e.x.client-i.initialWindowPosition.left,top:e.y.client-i.initialWindowPosition.top},i.minLeftPosition=o.length>0?o.outerWidth()+parseInt(o.css("right"),10)-n.outerWidth():20-n.outerWidth(),i.minLeftPosition-=r.left,i.minTopPosition=-r.top,i.wrapper.append(J.overlay).children(k).hide(),t(v).css(B,e.currentTarget.css(B))},drag:function(e){var i=this.owner,n=i.options.position,o=Math.max(e.y.client-i.startPosition.top,i.minTopPosition),r=Math.max(e.x.client-i.startPosition.left,i.minLeftPosition),s={left:r,top:o};t(i.wrapper).css(s),n.top=o,n.left=r},_finishDrag:function(){var e=this.owner;e.wrapper.children(k).toggle(!e.options.isMinimized).end().find(C).remove(),t(v).css(B,"")},dragcancel:function(t){this._finishDrag(),t.currentTarget.closest(_).css(this.owner.initialWindowPosition)},dragend:function(){return this._finishDrag(),this.owner.trigger(H),!1},destroy:function(){this._draggable&&this._draggable.destroy(),this._draggable=this.owner=null}},l.ui.plugin(Z)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.list.min",["kendo.data.min","kendo.popup.min"],t)}(function(){return function(t,e){function i(t,i){return t!==e&&""!==t&&null!==t&&("boolean"===i?t=!!t:"number"===i?t=+t:"string"===i&&(t=""+t)),t}function n(t,e){var i,n,o,r,s=e.length,a=t.length,l=[],c=[];if(a)for(o=0;a>o;o++){for(i=t[o],n=!1,r=0;s>r;r++)if(i===e[r]){n=!0,l.push({index:o,item:i});break}n||c.push(i)}return{changed:l,unchanged:c}}function o(e,i){var n,r=!1;return e.filters&&(n=t.grep(e.filters,function(t){return r=o(t,i),t.filters?t.filters.length:t.field!=i}),r||e.filters.length===n.length||(r=!0),e.filters=n),r}var r,s,a=window.kendo,l=a.ui,c=l.Widget,h=a.keys,u=a.support,d=a.htmlEncode,f=a._activeElement,p=a.data.ObservableArray,g="id",m="change",v="k-state-focused",w="k-state-hover",_="k-loading",y="open",x="close",b="cascade",k="select",C="selected",S="requestStart",T="requestEnd",A="width",P=t.extend,D=t.proxy,M=t.isArray,E=u.browser,B=E.msie&&9>E.version,I=/"/g,z={ComboBox:"DropDownList",DropDownList:"ComboBox"},L=a.ui.DataBoundWidget.extend({init:function(e,i){var n,o=this,r=o.ns;c.fn.init.call(o,e,i),e=o.element,i=o.options,o._isSelect=e.is(k),o._isSelect&&o.element[0].length&&(i.dataSource||(i.dataTextField=i.dataTextField||"text",i.dataValueField=i.dataValueField||"value")),o.ul=t('').attr({tabIndex:-1,"aria-hidden":!0}),o.list=t("
").append(o.ul).on("mousedown"+r,D(o._listMousedown,o)),n=e.attr(g),n&&(o.list.attr(g,n+"-list"),o.ul.attr(g,n+"_listbox")),o._header(),o._accessors(),o._initValue()},options:{valuePrimitive:!1,headerTemplate:""},setOptions:function(t){c.fn.setOptions.call(this,t),t&&t.enable!==e&&(t.enabled=t.enable)},focus:function(){this._focused.focus()},readonly:function(t){this._editable({readonly:t===e?!0:t,disable:!1})},enable:function(t){this._editable({readonly:!1,disable:!(t=t===e?!0:t)})},_listOptions:function(e){var i=this,n=i.options,o=n.virtual,r=D(i._listBound,i);return o="object"==typeof o?o:{},e=t.extend({autoBind:!1,selectable:!0,dataSource:i.dataSource,click:D(i._click,i),change:D(i._listChange,i),activate:D(i._activateItem,i),deactivate:D(i._deactivateItem,i),dataBinding:function(){i.trigger("dataBinding"),i._angularItems("cleanup")},dataBound:r,listBound:r,height:n.height,dataValueField:n.dataValueField,dataTextField:n.dataTextField,groupTemplate:n.groupTemplate,fixedGroupTemplate:n.fixedGroupTemplate,template:n.template},e,o),e.template||(e.template="#:"+a.expr(e.dataTextField,"data")+"#"),e},_initList:function(){var t=this,e=t._listOptions({selectedItemChange:D(t._listChange,t)});t.listView=t.options.virtual?new a.ui.VirtualList(t.ul,e):new a.ui.StaticList(t.ul,e),t._setListValue()},_setListValue:function(t){t=t||this.options.value,t!==e&&this.listView.value(t).done(D(this._updateSelectionState,this))},_updateSelectionState:t.noop,_listMousedown:function(t){this.filterInput&&this.filterInput[0]===t.target||t.preventDefault()},_filterSource:function(t,e){var i=this,n=i.options,r=i.dataSource,s=P({},r.filter()||{}),a=o(s,n.dataTextField);(t||a)&&i.trigger("filtering",{filter:t})||(s={filters:s.filters||[],logic:"and"},t&&s.filters.push(t),i._cascading&&this.listView.setDSFilter(s),e?r.read({filter:s}):r.filter(s))},_header:function(){var e,i=this,n=i.options.headerTemplate;t.isFunction(n)&&(n=n({})),n&&(i.list.prepend(n),e=i.ul.prev(),i.header=e[0]?e:null,i.header&&i.angular("compile",function(){return{elements:i.header}}))},_initValue:function(){var t=this,e=t.options.value;null!==e?t.element.val(e):(e=t._accessor(),t.options.value=e),t._old=e},_ignoreCase:function(){var t,e=this,i=e.dataSource.reader.model;i&&i.fields&&(t=i.fields[e.options.dataTextField],t&&t.type&&"string"!==t.type&&(e.options.ignoreCase=!1))},_focus:function(t){return this.listView.focus(t)},current:function(t){return this._focus(t)},items:function(){return this.ul[0].children},destroy:function(){var t=this,e=t.ns;c.fn.destroy.call(t),t._unbindDataSource(),t.listView.destroy(),t.list.off(e),t.popup.destroy(),t._form&&t._form.off("reset",t._resetHandler)},dataItem:function(i){var n=this;if(i===e)return n.listView.selectedDataItems()[0];if("number"!=typeof i){if(n.options.virtual)return n.dataSource.getByUid(t(i).data("uid"));i=t(n.items()).index(i)}return n.dataSource.flatView()[i]},_activateItem:function(){var t=this.listView.focus();t&&this._focused.add(this.filterInput).attr("aria-activedescendant",t.attr("id"))},_deactivateItem:function(){this._focused.add(this.filterInput).removeAttr("aria-activedescendant")},_accessors:function(){var t=this,e=t.element,i=t.options,n=a.getter,o=e.attr(a.attr("text-field")),r=e.attr(a.attr("value-field"));!i.dataTextField&&o&&(i.dataTextField=o),!i.dataValueField&&r&&(i.dataValueField=r),t._text=n(i.dataTextField),t._value=n(i.dataValueField)},_aria:function(t){var i=this,n=i.options,o=i._focused.add(i.filterInput);n.suggest!==e&&o.attr("aria-autocomplete",n.suggest?"both":"list"),t=t?t+" "+i.ul[0].id:i.ul[0].id,o.attr("aria-owns",t),i.ul.attr("aria-live",n.filter&&"none"!==n.filter?"polite":"off")},_blur:function(){var t=this;t._change(),t.close()},_change:function(){var t,n=this,o=n.selectedIndex,r=n.options.value,s=n.value();n._isSelect&&!n.listView.bound()&&r&&(s=r),s!==i(n._old,typeof s)?t=!0:o!==e&&o!==n._oldIndex&&(t=!0),t&&(n._old=s,n._oldIndex=o,n._typing||n.element.trigger(m),n.trigger(m)),n.typing=!1},_data:function(){return this.dataSource.view()},_enable:function(){var t=this,i=t.options,n=t.element.is("[disabled]");i.enable!==e&&(i.enabled=i.enable),!i.enabled||n?t.enable(!1):t.readonly(t.element.is("[readonly]"))},_dataValue:function(t){var i=this._value(t);return i===e&&(i=this._text(t)),i},_offsetHeight:function(){var e=0,i=this.listView.content.prevAll(":visible");return i.each(function(){var i=t(this);e+=i.hasClass("k-list-filter")?i.children().outerHeight():i.outerHeight()}),e},_height:function(t){var i,n,o=this,r=o.list,s=o.options.height,a=o.popup.visible();if(t){if(n=r.add(r.parent(".k-animation-container")).show(),!r.is(":visible"))return n.hide(),e;s=o.listView.content[0].scrollHeight>s?s:"auto",n.height(s),"auto"!==s&&(i=o._offsetHeight(),i&&(s-=i)),o.listView.content.height(s),a||n.hide()}return s},_adjustListWidth:function(){var t,e,i=this.list,n=i[0].style.width,o=this.wrapper;if(i.data(A)||!n)return t=window.getComputedStyle?window.getComputedStyle(o[0],null):0,e=parseFloat(t&&t.width)||o.outerWidth(),t&&E.msie&&(e+=parseFloat(t.paddingLeft)+parseFloat(t.paddingRight)+parseFloat(t.borderLeftWidth)+parseFloat(t.borderRightWidth)),n="border-box"!==i.css("box-sizing")?e-(i.outerWidth()-i.width()):e,i.css({fontFamily:o.css("font-family"),width:n}).data(A,n),!0},_openHandler:function(t){this._adjustListWidth(),this.trigger(y)?t.preventDefault():(this._focused.attr("aria-expanded",!0),this.ul.attr("aria-hidden",!1))},_closeHandler:function(t){this.trigger(x)?t.preventDefault():(this._focused.attr("aria-expanded",!1),this.ul.attr("aria-hidden",!0))},_focusItem:function(){var t=this.listView,i=t.focus(),n=t.select();n=n[n.length-1],n===e&&this.options.highlightFirst&&!i&&(n=0),n!==e?t.focus(n):t.scrollToIndex(0)},_calculateGroupPadding:function(t){var e=this.ul.children(".k-first:first"),i=this.listView.content.prev(".k-group-header"),n=0;i[0]&&"none"!==i[0].style.display&&("auto"!==t&&(n=a.support.scrollbar()),n+=parseFloat(e.css("border-right-width"),10)+parseFloat(e.children(".k-group").css("padding-right"),10),i.css("padding-right",n))},_calculatePopupHeight:function(t){var e=this._height(this.dataSource.flatView().length||t);this._calculateGroupPadding(e)},_resizePopup:function(t){this.options.virtual||(this.popup.element.is(":visible")?this._calculatePopupHeight(t):this.popup.one("open",function(t){return D(function(){this._calculatePopupHeight(t)},this)}.call(this,t)))},_popup:function(){var t=this;t.popup=new l.Popup(t.list,P({},t.options.popup,{anchor:t.wrapper,open:D(t._openHandler,t),close:D(t._closeHandler,t),animation:t.options.animation,isRtl:u.isRtl(t.wrapper)}))},_makeUnselectable:function(){B&&this.list.find("*").not(".k-textbox").attr("unselectable","on")},_toggleHover:function(e){t(e.currentTarget).toggleClass(w,"mouseenter"===e.type)},_toggle:function(t,i){var n=this,o=u.mobileOS&&(u.touch||u.MSPointers||u.pointers);t=t!==e?t:!n.popup.visible(),i||o||n._focused[0]===f()||(n._prevent=!0,n._focused.focus(),n._prevent=!1),n[t?y:x]()},_triggerCascade:function(){var t=this;t._cascadeTriggered&&t._old===t.value()&&t._oldIndex===t.selectedIndex||(t._cascadeTriggered=!0,t.trigger(b,{userTriggered:t._userTriggered}))},_triggerChange:function(){this._valueBeforeCascade!==this.value()&&this.trigger(m)},_unbindDataSource:function(){var t=this;t.dataSource.unbind(S,t._requestStartHandler).unbind(T,t._requestEndHandler).unbind("error",t._errorHandler)}});P(L,{inArray:function(t,e){var i,n,o=e.children;if(!t||t.parentNode!==e)return-1;for(i=0,n=o.length;n>i;i++)if(t===o[i])return i;return-1},unifyType:i}),a.ui.List=L,l.Select=L.extend({init:function(t,e){L.fn.init.call(this,t,e),this._initial=this.element.val()},setDataSource:function(t){var e,i=this;i.options.dataSource=t,i._dataSource(),i.listView.bound()&&(i._initialIndex=null),i.listView.setDataSource(i.dataSource),i.options.autoBind&&i.dataSource.fetch(),e=i._parentWidget(),e&&i._cascadeSelect(e)},close:function(){this.popup.close()},select:function(t){var i=this;return t===e?i.selectedIndex:(i._select(t),i._old=i._accessor(),i._oldIndex=i.selectedIndex,e)},search:function(t){var e,i,n,o,r,s;t="string"==typeof t?t:this.text(),e=this,i=t.length,n=e.options,o=n.ignoreCase,r=n.filter,s=n.dataTextField,clearTimeout(e._typingTimeout),(!i||i>=n.minLength)&&(e._state="filter","none"===r?e._filter(t):(e._open=!0,e._filterSource({value:o?t.toLowerCase():t,field:s,operator:r,ignoreCase:o})))},_accessor:function(t,e){return this[this._isSelect?"_accessorSelect":"_accessorInput"](t,e)},_accessorInput:function(t){var i=this.element[0];return t===e?i.value:(null===t&&(t=""),i.value=t,e)},_accessorSelect:function(t,i){var n,o=this.element[0],r=o.selectedIndex;return t===e?(r>-1&&(n=o.options[r]),n&&(t=n.value),t||""):(r>-1&&(o.options[r].removeAttribute(C),o.options[r].selected=!1),i===e&&(i=-1),null!==t&&""!==t&&-1==i?this._custom(t):(t?o.value=t:o.selectedIndex=i,o.selectedIndex>-1&&(n=o.options[o.selectedIndex]),n&&n.setAttribute(C,C)),e)},_custom:function(e){var i=this,n=i.element,o=i._customOption;o||(o=t(" "),i._customOption=o,n.append(o)),o.text(e),o[0].setAttribute(C,C),o[0].selected=!0},_hideBusy:function(){var t=this;clearTimeout(t._busy),t._arrow.removeClass(_),t._focused.attr("aria-busy",!1),t._busy=null},_showBusy:function(){var t=this;t._request=!0,t._busy||(t._busy=setTimeout(function(){t._arrow&&(t._focused.attr("aria-busy",!0),t._arrow.addClass(_))},100))},_requestEnd:function(){this._request=!1,this._hideBusy()},_dataSource:function(){var e,i=this,n=i.element,o=i.options,r=o.dataSource||{};r=t.isArray(r)?{data:r}:r,i._isSelect&&(e=n[0].selectedIndex,e>-1&&(o.index=e),r.select=n,r.fields=[{field:o.dataTextField},{field:o.dataValueField}]),i.dataSource?i._unbindDataSource():(i._requestStartHandler=D(i._showBusy,i),i._requestEndHandler=D(i._requestEnd,i),i._errorHandler=D(i._hideBusy,i)),i.dataSource=a.data.DataSource.create(r).bind(S,i._requestStartHandler).bind(T,i._requestEndHandler).bind("error",i._errorHandler)},_firstItem:function(){this.listView.focusFirst()},_lastItem:function(){this.listView.focusLast()},_nextItem:function(){this.listView.focusNext()},_prevItem:function(){this.listView.focusPrev()},_move:function(t){var i,n,o,r,s=this,a=t.keyCode,l=a===h.DOWN;if(a===h.UP||l){if(t.altKey)s.toggle(l);else{if(!s.listView.bound())return s._fetch||(s.dataSource.one(m,function(){s._fetch=!1,s._move(t)}),s._fetch=!0,s._filterSource()),t.preventDefault(),!0;if(o=s._focus(),s._fetch||o&&!o.hasClass("k-state-selected")||(l?(s._nextItem(),s._focus()||s._lastItem()):(s._prevItem(),s._focus()||s._firstItem())),s.trigger(k,{item:s._focus()}))return s._focus(o),e;s._select(s._focus(),!0),s.popup.visible()||s._blur()}t.preventDefault(),n=!0}else if(a===h.ENTER||a===h.TAB){if(s.popup.visible()&&t.preventDefault(),o=s._focus(),i=s.dataItem(),s.popup.visible()||i&&s.text()===s._text(i)||(o=null),r=s.filterInput&&s.filterInput[0]===f(),o){if(s.trigger(k,{item:o}))return;s._select(o)}else s.input&&(s._accessor(s.input.val()),s.listView.value(s.input.val()));s._focusElement&&s._focusElement(s.wrapper),r&&a===h.TAB?s.wrapper.focusout():s._blur(),s.close(),n=!0}else a===h.ESC&&(s.popup.visible()&&t.preventDefault(),s.close(),n=!0);return n},_fetchData:function(){var t=this,e=!!t.dataSource.view().length;t._request||t.options.cascadeFrom||t.listView.bound()||t._fetch||e||(t._fetch=!0,t.dataSource.fetch().done(function(){t._fetch=!1}))},_options:function(t,i,n){var o,r,s,a,l=this,c=l.element,h=t.length,u="",f=0;for(i&&(u=i);h>f;f++)o="",s!==e&&(o+=d(s)),o+=" ",u+=o;c.html(u),n!==e&&(c[0].value=n,c[0].value&&!n&&(c[0].selectedIndex=-1))},_reset:function(){var e=this,i=e.element,n=i.attr("form"),o=n?t("#"+n):i.closest("form");o[0]&&(e._resetHandler=function(){setTimeout(function(){e.value(e._initial)})},e._form=o.on("reset",e._resetHandler))},_parentWidget:function(){var e=this.options.name,i=t("#"+this.options.cascadeFrom),n=i.data("kendo"+e);return n||(n=i.data("kendo"+z[e])),n},_cascade:function(){var t,e,i=this,n=i.options,o=n.cascadeFrom;if(o){if(e=i._parentWidget(),!e)return;n.autoBind=!1,t=D(function(t){var i=this.value();this._userTriggered=t.userTriggered,this.listView.bound()&&this._clearSelection(e,!0),this._cascadeSelect(e,i)},i),e.first(b,t),e._focused.bind("focus",function(){e.unbind(b,t),e.first(m,t)}),e._focused.bind("focusout",function(){e.unbind(m,t),e.first(b,t)}),e.listView.bound()?i._cascadeSelect(e):e.value()||i.enable(!1)}},_cascadeChange:function(t){var e=this,i=e._accessor();e._userTriggered?e._clearSelection(t,!0):i?(i!==e.listView.value()[0]&&e.value(i),e.dataSource.view()[0]&&-1!==e.selectedIndex||e._clearSelection(t,!0)):e.dataSource.flatView().length&&e.select(e.options.index),e.enable(),e._triggerCascade(),e._triggerChange(),e._userTriggered=!1},_cascadeSelect:function(t,i){var n,r,s,a=this,l=t.dataItem(),c=l?t._value(l):null,h=a.options.cascadeFromField||t.options.dataValueField;a._valueBeforeCascade=i!==e?i:a.value(),c||0===c?(n=a.dataSource.filter()||{},o(n,h),r=n.filters||[],r.push({field:h,operator:"eq",value:c}),s=function(){a.unbind("dataBound",s),a._cascadeChange(t)},a.first("dataBound",s),a._cascading=!0,a._filterSource({field:h,operator:"eq",value:c}),a._cascading=!1):(a.enable(!1),a._clearSelection(t),a._triggerCascade(),a._triggerChange(),a._userTriggered=!1)}}),r=".StaticList",s=a.ui.DataBoundWidget.extend({init:function(e,i){c.fn.init.call(this,e,i),this.element.attr("role","listbox").on("click"+r,"li",D(this._click,this)).on("mouseenter"+r,"li",function(){t(this).addClass(w)}).on("mouseleave"+r,"li",function(){t(this).removeClass(w)}),this.content=this.element.wrap("
").parent(),this.header=this.content.before('').prev(),this.bound(!1),this._optionID=a.guid(),this._selectedIndices=[],this._view=[],this._dataItems=[],this._values=[];var n=this.options.value;n&&(this._values=t.isArray(n)?n.slice(0):[n]),this._getter(),this._templates(),this.setDataSource(this.options.dataSource),this._onScroll=D(function(){var t=this;clearTimeout(t._scrollId),t._scrollId=setTimeout(function(){t._renderHeader()},50)},this)},options:{name:"StaticList",dataValueField:null,valuePrimitive:!1,selectable:!0,template:null,groupTemplate:null,fixedGroupTemplate:null},events:["click",m,"activate","deactivate","dataBinding","dataBound","selectedItemChange"],setDataSource:function(e){var i,n=this,o=e||{};o=t.isArray(o)?{data:o}:o,o=a.data.DataSource.create(o),n.dataSource?(n.dataSource.unbind(m,n._refreshHandler),i=n.value(),n.value([]),n.bound(!1),n.value(i)):n._refreshHandler=D(n.refresh,n),n.setDSFilter(o.filter()),n.dataSource=o.bind(m,n._refreshHandler),n._fixedHeader()},skip:function(){return this.dataSource.skip()},setOptions:function(t){c.fn.setOptions.call(this,t),this._getter(),this._templates(),this._render()},destroy:function(){this.element.off(r),this._refreshHandler&&this.dataSource.unbind(m,this._refreshHandler),clearTimeout(this._scrollId),c.fn.destroy.call(this)},scrollToIndex:function(t){var e=this.element[0].children[t];e&&this.scroll(e)},scroll:function(t){if(t){t[0]&&(t=t[0]);var e=this.content[0],i=t.offsetTop,n=t.offsetHeight,o=e.scrollTop,r=e.clientHeight,s=i+n;o>i?o=i:s>o+r&&(o=s-r),e.scrollTop=o}},selectedDataItems:function(t){return t===e?this._dataItems.slice():(this._dataItems=t,this._values=this._getValues(t),e)},_getValues:function(e){var i=this._valueGetter;return t.map(e,function(t){return i(t)})},focusNext:function(){var t=this.focus();t=t?t.next():0,this.focus(t)},focusPrev:function(){var t=this.focus();t=t?t.prev():this.element[0].children.length-1,this.focus(t)},focusFirst:function(){this.focus(this.element[0].children[0])},focusLast:function(){this.focus(this.element[0].children[this.element[0].children.length-1])},focus:function(i){var n,o=this,r=o._optionID;return i===e?o._current:(i=o._get(i),i=i[i.length-1],i=t(this.element[0].children[i]),o._current&&(o._current.removeClass(v).removeAttr("aria-selected").removeAttr(g),o.trigger("deactivate")),n=!!i[0],n&&(i.addClass(v),o.scroll(i),i.attr("id",r)),o._current=n?i:null,o.trigger("activate"),e)},focusIndex:function(){return this.focus()?this.focus().index():e},skipUpdate:function(t){this._skipUpdate=t},select:function(i){var n,o,r=this,s=r.options.selectable,a="multiple"!==s&&s!==!1,l=r._selectedIndices,c=[],h=[];if(i===e)return l.slice();if(i=r._get(i),1===i.length&&-1===i[0]&&(i=[]),o=r.isFiltered(),!o||a||!r._deselectFiltered(i)){if(a&&!o&&-1!==t.inArray(i[i.length-1],l))return r._dataItems.length&&r._view.length&&(r._dataItems=[r._view[l[0]].item]),e;n=r._deselect(i),h=n.removed,i=n.indices,i.length&&(a&&(i=[i[i.length-1]]),c=r._select(i)),(c.length||h.length)&&(r._valueComparer=null,r.trigger(m,{added:c,removed:h}))}},removeAt:function(t){return this._selectedIndices.splice(t,1),this._values.splice(t,1),this._valueComparer=null,{position:t,dataItem:this._dataItems.splice(t,1)[0]}},setValue:function(e){e=t.isArray(e)||e instanceof p?e.slice(0):[e],this._values=e,this._valueComparer=null},value:function(i){var n,o=this,r=o._valueDeferred;return i===e?o._values.slice():(o.setValue(i),r&&"resolved"!==r.state()||(o._valueDeferred=r=t.Deferred()),o.bound()&&(n=o._valueIndices(o._values),"multiple"===o.options.selectable&&o.select(-1),o.select(n),r.resolve()),o._skipUpdate=!1,r)},items:function(){return this.element.children(".k-item")},_click:function(e){e.isDefaultPrevented()||this.trigger("click",{item:t(e.currentTarget)})||this.select(e.currentTarget)},_valueExpr:function(t,e){var n,o,r=this,s=0,a=[];if(!r._valueComparer||r._valueType!==t){for(r._valueType=t;e.length>s;s++)a.push(i(e[s],t));n="for (var idx = 0; idx < "+a.length+"; idx++) { if (current === values[idx]) { return idx; }} return -1;",o=Function("current","values",n),r._valueComparer=function(t){return o(t,a)}}return r._valueComparer},_dataItemPosition:function(t,e){var i=this._valueGetter(t),n=this._valueExpr(typeof i,e);return n(i)},_getter:function(){this._valueGetter=a.getter(this.options.dataValueField)},_deselect:function(e){var i,n,o,r=this,s=r.element[0].children,a=r.options.selectable,l=r._selectedIndices,c=r._dataItems,h=r._values,u=[],d=0,f=0;if(e=e.slice(),a!==!0&&e.length){if("multiple"===a)for(;e.length>d;d++)if(n=e[d],t(s[n]).hasClass("k-state-selected"))for(i=0;l.length>i;i++)if(o=l[i],o===n){t(s[o]).removeClass("k-state-selected"),u.push({position:i+f,dataItem:c.splice(i,1)[0]}),l.splice(i,1),e.splice(d,1),h.splice(i,1),f+=1,d-=1,i-=1;break}}else{for(;l.length>d;d++)t(s[l[d]]).removeClass("k-state-selected"),u.push({position:d,dataItem:c[d]});r._values=[],r._dataItems=[],r._selectedIndices=[]}return{indices:e,removed:u}},_deselectFiltered:function(e){for(var i,n,o,r=this.element[0].children,s=[],a=0;e.length>a;a++)n=e[a],i=this._view[n].item,o=this._dataItemPosition(i,this._values),o>-1&&(s.push(this.removeAt(o)),t(r[n]).removeClass("k-state-selected"));return s.length?(this.trigger(m,{added:[],removed:s}),!0):!1},_select:function(e){var i,n,o=this,r=o.element[0].children,s=o._view,a=[],l=0;for(-1!==e[e.length-1]&&o.focus(e);e.length>l;l++)n=e[l],i=s[n],-1!==n&&i&&(i=i.item,o._selectedIndices.push(n),o._dataItems.push(i),o._values.push(o._valueGetter(i)),t(r[n]).addClass("k-state-selected").attr("aria-selected",!0),a.push({dataItem:i}));return a},_get:function(i){return"number"==typeof i?i=[i]:M(i)||(i=t(i).data("offset-index"),i===e&&(i=-1),i=[i]),i},_template:function(){var t=this,e=t.options,i=e.template;return i?(i=a.template(i),i=function(t){return''+i(t)+" "}):i=a.template('${'+a.expr(e.dataTextField,"data")+"} ",{useWithBlock:!1}),i},_templates:function(){var t,e,i={template:this.options.template,groupTemplate:this.options.groupTemplate,fixedGroupTemplate:this.options.fixedGroupTemplate};for(e in i)t=i[e],t&&"function"!=typeof t&&(i[e]=a.template(t));this.templates=i},_normalizeIndices:function(t){for(var i=[],n=0;t.length>n;n++)t[n]!==e&&i.push(t[n]);return i},_valueIndices:function(t,e){var i,n=this._view,o=0;if(e=e?e.slice():[],!t.length)return[];for(;n.length>o;o++)i=this._dataItemPosition(n[o].item,t),-1!==i&&(e[i]=o);return this._normalizeIndices(e)},_firstVisibleItem:function(){for(var e=this.element[0],i=this.content[0],n=i.scrollTop,o=t(e.children[0]).height(),r=Math.floor(n/o)||0,s=e.children[r]||e.lastChild,a=n>s.offsetTop;s;)if(a){if(s.offsetTop+o>n||!s.nextSibling)break;s=s.nextSibling}else{if(n>=s.offsetTop||!s.previousSibling)break;s=s.previousSibling}return this._view[t(s).data("offset-index")]},_fixedHeader:function(){this.isGrouped()&&this.templates.fixedGroupTemplate?(this.header.show(),this.content.scroll(this._onScroll)):(this.header.hide(),this.content.off("scroll",this._onScroll))},_renderHeader:function(){var t,e=this.templates.fixedGroupTemplate;e&&(t=this._firstVisibleItem(),t&&this.header.html(e(t.group)))},_renderItem:function(t){var e='',e+=this.templates.template(i),n&&t.newGroup&&(e+=''+this.templates.groupTemplate(t.group)+"
"),e+" "},_render:function(){var t,e,i,n,o="",r=0,s=0,a=[],l=this.dataSource.view(),c=this.value(),h=this.isGrouped();if(h)for(r=0;l.length>r;r++)for(e=l[r],i=!0,n=0;e.items.length>n;n++)t={selected:this._selected(e.items[n],c),item:e.items[n],group:e.value,newGroup:i,index:s},a[s]=t,s+=1,o+=this._renderItem(t),i=!1;else for(r=0;l.length>r;r++)t={selected:this._selected(l[r],c),item:l[r],index:r},a[r]=t,o+=this._renderItem(t);this._view=a,this.element[0].innerHTML=o,h&&a.length&&this._renderHeader()},_selected:function(t,e){var i=!this.isFiltered()||"multiple"===this.options.selectable;return i&&-1!==this._dataItemPosition(t,e)},setDSFilter:function(t){this._lastDSFilter=P({},t)},isFiltered:function(){return this._lastDSFilter||this.setDSFilter(this.dataSource.filter()),!a.data.Query.compareFilters(this.dataSource.filter(),this._lastDSFilter)},refresh:function(t){var e,i=this,o=t&&t.action,r=i.options.skipUpdateOnBind,s="itemchange"===o;i.trigger("dataBinding"),i._fixedHeader(),i._render(),i.bound(!0),s||"remove"===o?(e=n(i._dataItems,t.items),e.changed.length&&(s?i.trigger("selectedItemChange",{items:e.changed}):i.value(i._getValues(e.unchanged)))):i.isFiltered()||i._skipUpdate?(i.focus(0),i._skipUpdate&&(i._skipUpdate=!1,i._selectedIndices=i._valueIndices(i._values,i._selectedIndices))):r||o&&"add"!==o||i.value(i._values),i._valueDeferred&&i._valueDeferred.resolve(),i.trigger("dataBound")},bound:function(t){return t===e?this._bound:(this._bound=t,e)},isGrouped:function(){return(this.dataSource.group()||[]).length}}),l.plugin(s)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.dropdownlist.min",["kendo.list.min","kendo.mobile.scroller.min"],t)}(function(){return function(t,e){function i(t,e,i){for(var n,o=0,r=e.length-1;r>o;++o)n=e[o],n in t||(t[n]={}),t=t[n];t[e[r]]=i}function n(t,e){return t>=e&&(t-=e),t}function o(t,e){for(var i=0;t.length>i;i++)if(t.charAt(i)!==e)return!1;return!0}var r=window.kendo,s=r.ui,a=s.Select,l=r.support,c=r._activeElement,h=r.data.ObservableObject,u=r.keys,d=".kendoDropDownList",f="disabled",p="readonly",g="change",m="k-state-focused",v="k-state-default",w="k-state-disabled",_="aria-disabled",y="aria-readonly",x="mouseenter"+d+" mouseleave"+d,b="tabindex",k="filter",C="accept",S="The `optionLabel` option is not valid due to missing fields. Define a custom optionLabel as shown here http://docs.telerik.com/kendo-ui/api/javascript/ui/dropdownlist#configuration-optionLabel",T=t.proxy,A=a.extend({init:function(i,n){var o,s,l,c=this,h=n&&n.index;c.ns=d,n=t.isArray(n)?{dataSource:n}:n,a.fn.init.call(c,i,n),n=c.options,i=c.element.on("focus"+d,T(c._focusHandler,c)),c._focusInputHandler=t.proxy(c._focusInput,c),c.optionLabel=t(),c._optionLabel(),c._inputTemplate(),c._reset(),c._prev="",c._word="",c._wrapper(),c._tabindex(),c.wrapper.data(b,c.wrapper.attr(b)),c._span(),c._popup(),c._mobile(),c._dataSource(),c._ignoreCase(),c._filterHeader(),c._aria(),c._enable(),c._oldIndex=c.selectedIndex=-1,h!==e&&(n.index=h),c._initialIndex=n.index,c._initList(),c._cascade(),n.autoBind?c.dataSource.fetch():-1===c.selectedIndex&&(s=n.text||"",s||(o=n.optionLabel,o&&0===n.index?s=o:c._isSelect&&(s=i.children(":selected").text())),c._textAccessor(s)),l=t(c.element).parents("fieldset").is(":disabled"),l&&c.enable(!1),c.listView.bind("click",function(t){t.preventDefault()}),r.notify(c)},options:{name:"DropDownList",enabled:!0,autoBind:!0,index:0,text:null,value:null,delay:500,height:200,dataTextField:"",dataValueField:"",optionLabel:"",cascadeFrom:"",cascadeFromField:"",ignoreCase:!0,animation:{},filter:"none",minLength:1,virtual:!1,template:null,valueTemplate:null,optionLabelTemplate:null,groupTemplate:"#:data#",fixedGroupTemplate:"#:data#"},events:["open","close",g,"select","filtering","dataBinding","dataBound","cascade"],setOptions:function(t){a.fn.setOptions.call(this,t),this.listView.setOptions(this._listOptions(t)),this._optionLabel(),this._inputTemplate(),this._accessors(),this._filterHeader(),this._enable(),this._aria(),!this.value()&&this.hasOptionLabel()&&this.select(0)},destroy:function(){var t=this;a.fn.destroy.call(t),t.wrapper.off(d),t.element.off(d),t._inputWrapper.off(d),t._arrow.off(),t._arrow=null,t.optionLabel.off()},open:function(){var t=this;t.popup.visible()||(t.listView.bound()&&t._state!==C?t._allowOpening()&&(t.popup.one("activate",t._focusInputHandler),t.popup.open(),t._focusItem()):(t._open=!0,t._state="rebind",t.filterInput&&(t.filterInput.val(""),t._prev=""),t._filterSource()))},_focusInput:function(){this._focusElement(this.filterInput)},_allowOpening:function(){return this.hasOptionLabel()||this.filterInput||this.dataSource.view().length},toggle:function(t){this._toggle(t,!0)},current:function(t){var i;return t===e?(i=this.listView.focus(),!i&&0===this.selectedIndex&&this.hasOptionLabel()?this.optionLabel:i):(this._focus(t),e)},dataItem:function(i){var n=this,o=null;if(null===i)return i;if(i===e)o=n.listView.selectedDataItems()[0];else{if("number"!=typeof i){if(n.options.virtual)return n.dataSource.getByUid(t(i).data("uid"));i=i.hasClass("k-list-optionlabel")?-1:t(n.items()).index(i)}else n.hasOptionLabel()&&(i-=1);o=n.dataSource.flatView()[i]}return o||(o=n._optionLabelDataItem()),o},refresh:function(){this.listView.refresh()},text:function(t){var i,n,o=this,r=o.options.ignoreCase;return t=null===t?"":t,t===e?o._textAccessor():("string"==typeof t&&(n=r?t.toLowerCase():t,o._select(function(t){return t=o._text(t),r&&(t=(t+"").toLowerCase()),t===n}),i=o.dataItem(),i&&(t=i)),o._textAccessor(t),e)},value:function(t){var i=this,n=i.listView,o=i.dataSource;return t===e?(t=i._accessor()||i.listView.value()[0],t===e||null===t?"":t):(t&&(i._initialIndex=null),i._request&&i.options.cascadeFrom&&i.listView.bound()?(i._valueSetter&&o.unbind(g,i._valueSetter),i._valueSetter=T(function(){i.value(t)},i),o.one(g,i._valueSetter),e):(n.bound()&&n.isFiltered()?(n.bound(!1),i._filterSource()):i._fetchData(),n.value(t).done(function(){-1===i.selectedIndex&&i.text()&&(i.text(""),i._accessor("",-1)),i._old=i._accessor(),i._oldIndex=i.selectedIndex}),e))},hasOptionLabel:function(){return this.optionLabel&&!!this.optionLabel[0]},_optionLabel:function(){var i=this,n=i.options,o=n.optionLabel,s=n.optionLabelTemplate;return o?(s||(s="#:",s+="string"==typeof o?"data":r.expr(n.dataTextField,"data"),s+="#"),"function"!=typeof s&&(s=r.template(s)),i.optionLabelTemplate=s,i.hasOptionLabel()||(i.optionLabel=t('
').prependTo(i.list)),i.optionLabel.html(s(o)).off().click(T(i._click,i)).on(x,i._toggleHover),i.angular("compile",function(){return{elements:i.optionLabel}}),e):(i.optionLabel.off().remove(),i.optionLabel=t(),e)},_optionLabelText:function(){var t=this.options.optionLabel;return"string"==typeof t?t:this._text(t)},_optionLabelDataItem:function(){var e=this,i=e.options.optionLabel;return e.hasOptionLabel()?t.isPlainObject(i)?new h(i):e._assignInstance(e._optionLabelText(),""):null},_listBound:function(){var t,e,i=this,n=i._initialIndex,o=i.options.optionLabel,r=i._state===k,s=i.dataSource.flatView(),a=s.length;i._angularItems("compile"),i._presetValue=!1,i._resizePopup(!0),i.popup.position(),i._isSelect&&(e=i.value(),a?o&&(o=i._option("",i._optionLabelText())):e&&(o=i._option(e,i.text())),i._options(s,o,e)),i._makeUnselectable(),r||(i._open&&i.toggle(i._allowOpening()),i._open=!1,i._fetch||(a?(!i.listView.value().length&&n>-1&&null!==n&&i.select(n),i._initialIndex=null,
t=i.listView.selectedDataItems()[0],t&&i.text()!==i._text(t)&&i._selectValue(t)):i._textAccessor()!==i._optionLabelText()&&(i.listView.value(""),i._selectValue(null),i._oldIndex=i.selectedIndex))),i._hideBusy(),i.trigger("dataBound")},_listChange:function(){this._selectValue(this.listView.selectedDataItems()[0]),(this._presetValue||this._old&&-1===this._oldIndex)&&(this._oldIndex=this.selectedIndex)},_focusHandler:function(){this.wrapper.focus()},_focusinHandler:function(){this._inputWrapper.addClass(m),this._prevent=!1},_focusoutHandler:function(){var t=this,e=t._state===k,i=window.self!==window.top,n=t._focus();t._prevent||(clearTimeout(t._typingTimeout),e&&n&&!t.trigger("select",{item:n})&&t._select(n,!t.dataSource.view().length),l.mobileOS.ios&&i?t._change():t._blur(),t._inputWrapper.removeClass(m),t._prevent=!0,t._open=!1,t.element.blur())},_wrapperMousedown:function(){this._prevent=!!this.filterInput},_wrapperClick:function(t){t.preventDefault(),this.popup.unbind("activate",this._focusInputHandler),this._focused=this.wrapper,this._toggle()},_editable:function(t){var e=this,i=e.element,n=t.disable,o=t.readonly,r=e.wrapper.add(e.filterInput).off(d),s=e._inputWrapper.off(x);o||n?n?(r.removeAttr(b),s.addClass(w).removeClass(v)):(s.addClass(v).removeClass(w),r.on("focusin"+d,T(e._focusinHandler,e)).on("focusout"+d,T(e._focusoutHandler,e))):(i.removeAttr(f).removeAttr(p),s.addClass(v).removeClass(w).on(x,e._toggleHover),r.attr(b,r.data(b)).attr(_,!1).attr(y,!1).on("keydown"+d,T(e._keydown,e)).on("focusin"+d,T(e._focusinHandler,e)).on("focusout"+d,T(e._focusoutHandler,e)).on("mousedown"+d,T(e._wrapperMousedown,e)),e.wrapper.on("click"+d,T(e._wrapperClick,e)),e.filterInput||r.on("keypress"+d,T(e._keypress,e))),i.attr(f,n).attr(p,o),r.attr(_,n).attr(y,o)},_option:function(t,e){return''+e+" "},_keydown:function(t){var i,n,o=this,r=t.keyCode,s=t.altKey,a=o.popup.visible();if(o.filterInput&&(i=o.filterInput[0]===c()),r===u.LEFT?(r=u.UP,n=!0):r===u.RIGHT&&(r=u.DOWN,n=!0),!n||!i){if(t.keyCode=r,(s&&r===u.UP||r===u.ESC)&&o._focusElement(o.wrapper),r===u.ENTER&&o._typingTimeout&&o.filterInput&&a)return t.preventDefault(),e;n=o._move(t),n||(a&&o.filterInput||(r===u.HOME?(n=!0,o._firstItem()):r===u.END&&(n=!0,o._lastItem()),n&&(o._select(o._focus()),t.preventDefault())),s||n||!o.filterInput||o._search())}},_matchText:function(t,i){var n=this.options.ignoreCase;return t===e||null===t?!1:(t+="",n&&(t=t.toLowerCase()),0===t.indexOf(i))},_shuffleData:function(t,e){var i=this._optionLabelDataItem();return i&&(t=[i].concat(t)),t.slice(e).concat(t.slice(0,e))},_selectNext:function(){var t,e,i,r=this,s=r.dataSource.flatView().toJSON(),a=s.length+(r.hasOptionLabel()?1:0),l=o(r._word,r._last),c=r.selectedIndex;for(-1===c?c=0:(c+=l?1:0,c=n(c,a)),s=r._shuffleData(s,c),i=0;a>i&&(e=r._text(s[i]),!l||!r._matchText(e,r._last))&&!r._matchText(e,r._word);i++);i!==a&&(t=r._focus(),r._select(n(c+i,a)),r.trigger("select",{item:r._focus()})&&r._select(t),r.popup.visible()||r._change())},_keypress:function(t){var e,i=this;0!==t.which&&t.keyCode!==r.keys.ENTER&&(e=String.fromCharCode(t.charCode||t.keyCode),i.options.ignoreCase&&(e=e.toLowerCase())," "===e&&t.preventDefault(),i._word+=e,i._last=e,i._search())},_popupOpen:function(){var t=this.popup;t.wrapper=r.wrap(t.element),t.element.closest(".km-root")[0]&&(t.wrapper.addClass("km-popup km-widget"),this.wrapper.addClass("km-widget"))},_popup:function(){a.fn._popup.call(this),this.popup.one("open",T(this._popupOpen,this))},_click:function(i){var n=i.item||t(i.currentTarget);return i.preventDefault(),this.trigger("select",{item:n})?(this.close(),e):(this._userTriggered=!0,this._select(n),this._focusElement(this.wrapper),this._blur(),e)},_focusElement:function(t){var e=c(),i=this.wrapper,n=this.filterInput,o=t===n?i:n,r=l.mobileOS&&(l.touch||l.MSPointers||l.pointers);n&&n[0]===t[0]&&r||n&&o[0]===e&&(this._prevent=!0,this._focused=t.focus())},_filter:function(t){var e,i;t&&(e=this,i=e.options.ignoreCase,i&&(t=t.toLowerCase()),e._select(function(i){return e._matchText(e._text(i),t)}))},_search:function(){var t=this,i=t.dataSource;if(clearTimeout(t._typingTimeout),"none"!==t.options.filter)t._typingTimeout=setTimeout(function(){var e=t.filterInput.val();t._prev!==e&&(t._prev=e,t.search(e)),t._typingTimeout=null},t.options.delay);else{if(t._typingTimeout=setTimeout(function(){t._word=""},t.options.delay),!t.listView.bound())return i.fetch().done(function(){t._selectNext()}),e;t._selectNext()}},_get:function(e){var i,n,o,r="function"==typeof e,s=r?t():t(e);if(this.hasOptionLabel()&&("number"==typeof e?e>-1&&(e-=1):s.hasClass("k-list-optionlabel")&&(e=-1)),r){for(i=this.dataSource.flatView(),o=0;i.length>o;o++)if(e(i[o])){e=o,n=!0;break}n||(e=-1)}return e},_firstItem:function(){this.hasOptionLabel()?this._focus(this.optionLabel):this.listView.focusFirst()},_lastItem:function(){this._resetOptionLabel(),this.listView.focusLast()},_nextItem:function(){this.optionLabel.hasClass("k-state-focused")?(this._resetOptionLabel(),this.listView.focusFirst()):this.listView.focusNext()},_prevItem:function(){this.optionLabel.hasClass("k-state-focused")||(this.listView.focusPrev(),this.listView.focus()||this._focus(this.optionLabel))},_focusItem:function(){var t=this.listView,i=t.focus(),n=t.select();n=n[n.length-1],n===e&&this.options.highlightFirst&&!i&&(n=0),n!==e?t.focus(n):this.options.optionLabel?(this._focus(this.optionLabel),this._select(this.optionLabel)):t.scrollToIndex(0)},_resetOptionLabel:function(t){this.optionLabel.removeClass("k-state-focused"+(t||"")).removeAttr("id")},_focus:function(t){var i=this.listView,n=this.optionLabel;return t===e?(t=i.focus(),!t&&n.hasClass("k-state-focused")&&(t=n),t):(this._resetOptionLabel(),t=this._get(t),i.focus(t),-1===t&&(n.addClass("k-state-focused").attr("id",i._optionID),this._focused.add(this.filterInput).removeAttr("aria-activedescendant").attr("aria-activedescendant",i._optionID)),e)},_select:function(t,e){var i=this;t=i._get(t),i.listView.select(t),e||i._state!==k||(i._state=C),-1===t&&i._selectValue(null)},_selectValue:function(t){var i=this,n=i.options.optionLabel,o=i.listView.select(),r="",s="";o=o[o.length-1],o===e&&(o=-1),this._resetOptionLabel(" k-state-selected"),t?(s=t,r=i._dataValue(t),n&&(o+=1)):n&&(i._focus(i.optionLabel.addClass("k-state-selected")),s=i._optionLabelText(),r="string"==typeof n?"":i._value(n),o=0),i.selectedIndex=o,null===r&&(r=""),i._textAccessor(s),i._accessor(r,o),i._triggerCascade()},_mobile:function(){var t=this,e=t.popup,i=l.mobileOS,n=e.element.parents(".km-root").eq(0);n.length&&i&&(e.options.animation.open.effects=i.android||i.meego?"fadeIn":i.ios||i.wp?"slideIn:up":e.options.animation.open.effects)},_filterHeader:function(){var e,i=this.options,n="none"!==i.filter;this.filterInput&&(this.filterInput.off(d).parent().remove(),this.filterInput=null),n&&(e='select ',this.filterInput=t(' ').attr({placeholder:this.element.attr("placeholder"),role:"listbox","aria-haspopup":!0,"aria-expanded":!1}),this.list.prepend(t(' ').append(this.filterInput.add(e))))},_span:function(){var e,i=this,n=i.wrapper,o="span.k-input";e=n.find(o),e[0]||(n.append(' select ').append(i.element),e=n.find(o)),i.span=e,i._inputWrapper=t(n[0].firstChild),i._arrow=n.find(".k-icon")},_wrapper:function(){var t,e=this,i=e.element,n=i[0];t=i.parent(),t.is("span.k-widget")||(t=i.wrap(" ").parent(),t[0].style.cssText=n.style.cssText,t[0].title=n.title),i.hide(),e._focused=e.wrapper=t.addClass("k-widget k-dropdown k-header").addClass(n.className).css("display","").attr({accesskey:i.attr("accesskey"),unselectable:"on",role:"listbox","aria-haspopup":!0,"aria-expanded":!1})},_clearSelection:function(t){this.select(t.value()?0:-1)},_inputTemplate:function(){var e=this,i=e.options.valueTemplate;if(i=i?r.template(i):t.proxy(r.template("#:this._text(data)#",{useWithBlock:!1}),e),e.valueTemplate=i,e.hasOptionLabel())try{e.valueTemplate(e._optionLabelDataItem())}catch(n){throw Error(S)}},_textAccessor:function(i){var n,o=null,r=this.valueTemplate,s=this.options,a=s.optionLabel,l=this.span;if(i===e)return l.text();t.isPlainObject(i)||i instanceof h?o=i:a&&this._optionLabelText()===i&&(o=a,r=this.optionLabelTemplate),o||(o=this._assignInstance(i,this._accessor())),n=function(){return{elements:l.get(),data:[{dataItem:o}]}},this.angular("cleanup",n);try{l.html(r(o))}catch(c){l.html("")}this.angular("compile",n)},_preselect:function(t,e){t||e||(e=this._optionLabelText()),this._accessor(t),this._textAccessor(e),this._old=this._accessor(),this._oldIndex=this.selectedIndex,this.listView.setValue(t),this._initialIndex=null,this._presetValue=!0},_assignInstance:function(t,e){var n=this.options.dataTextField,o={};return n?(i(o,n.split("."),t),i(o,this.options.dataValueField.split("."),e),o=new h(o)):o=t,o}});s.plugin(A)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("dataviz/diagram/dom.min",["kendo.data.min","kendo.draganddrop.min","kendo.toolbar.min","kendo.editable.min","kendo.window.min","kendo.dropdownlist.min","kendo.dataviz.core.min","kendo.dataviz.themes.min","dataviz/diagram/svg.min","dataviz/diagram/services.min","dataviz/diagram/layout.min"],t)}(function(){!function(t,e){function i(t){var e=t.originalEvent,i=0;return e.wheelDelta?(i=-e.wheelDelta/40,i=i>0?wt.ceil(i):wt.floor(i)):e.detail&&(i=e.detail),i}function n(t){return t.options.name.toLowerCase()===Mt.toLowerCase()}function o(t,e){var i,o,r,s,a=Lt,l=e.connectors;for(o=0;l.length>o;o++)r=l[o],n(r)||(s=t.distanceTo(r.position()),a>s&&(a=s,i=r));return i}function r(t,e){var i,n,o,r=[],s=t.drawingContainer().children,a=s.length;for(i=0;e.length>i;i++)for(n=e[i],o=0;a>o;o++)if(s[o]==n.drawingContainer()){r.push(o);break}return r}function s(t){var e={};return t=t||{},ft(t.text)&&null!==t.text&&(e.text=t.text),ft(t.x)&&null!==t.x&&(e.x=t.x),ft(t.y)&&null!==t.y&&(e.y=t.y),ft(t.width)&&null!==t.width&&(e.width=t.width),ft(t.height)&&null!==t.height&&(e.height=t.height),ft(t.type)&&null!==t.type&&(e.type=t.type),e}function a(t){var e={};return t=t||{},ft(t.text)&&null!==t.text&&(e.content=t.text),ft(t.type)&&null!==t.type&&(e.type=t.type),ft(t.from)&&null!==t.from&&(e.from=t.from),ft(t.fromConnector)&&null!==t.fromConnector&&(e.fromConnector=t.fromConnector),ft(t.fromX)&&null!==t.fromX&&(e.fromX=t.fromX),ft(t.fromY)&&null!==t.fromY&&(e.fromY=t.fromY),ft(t.to)&&null!==t.to&&(e.to=t.to),ft(t.toConnector)&&null!==t.toConnector&&(e.toConnector=t.toConnector),ft(t.toX)&&null!==t.toX&&(e.toX=t.toX),ft(t.toY)&&null!==t.toY&&(e.toY=t.toY),e}function l(e,i){var n,o=this.dataSource.reader.model;o&&(n=o.fn.fields.text?"text":o.idField,t(" ").appendTo(e).kendoDropDownList({dataValueField:o.idField,dataTextField:n,dataSource:this.dataSource.data().toJSON(),optionLabel:" ",valuePrimitive:!0}))}function c(t){this.dataItem=t,this.callbacks=[]}function h(){this.items={}}function u(t){var e=t;return t instanceof kendo.data.Model&&(e=t.toJSON(),e[t.idField]=t._defaultId),e}function d(t){var e,i,n=[],o=[];for(i=0;t.length>i;i++)e=t[i],e instanceof y?o.push(e):n.push(e);return{shapes:o,connections:n}}function f(t,e){return t.reader.model?new t.reader.model(e):new kendo.data.ObservableObject(e)}function p(t,e){ft(e[t])&&e.set(t,null)}function g(t,e,i){var n,o;for(o=0;i.length>o;o++)n=i[o],e&&!ft(e[n])&&(e[n]=t[n])}function m(t){var e=t.drawingContainer().clippedBBox(null);(0!==e.origin.x||0!==e.origin.y)&&t.position(-e.origin.x,-e.origin.y)}var v,w,_,y,x,b,k,C,S,T,A,P,D=kendo.dataviz,M=kendo.drawing,E=kendo.geometry,B=D.diagram,I=kendo.ui.Widget,z=kendo.Class,L=t.proxy,R=kendo.deepExtend,O=t.extend,F=kendo.data.HierarchicalDataSource,V=B.Canvas,N=B.Group,H=B.Rectangle,U=B.Circle,j=B.CompositeTransform,G=B.Rect,W=B.Path,q=B.DeleteShapeUnit,$=B.DeleteConnectionUnit,Y=B.TextBlock,X=B.Image,Q=B.Point,K=B.Intersect,Z=B.ConnectionEditAdorner,J=B.UndoRedoService,tt=B.ToolService,et=B.Selector,it=B.ResizingAdorner,nt=B.ConnectorsAdorner,ot=B.Cursors,rt=B.Utils,st=kendo.Observable,at=B.ToBackUnit,lt=B.ToFrontUnit,ct=B.PolylineRouter,ht=B.CascadingRouter,ut=rt.isUndefined,dt=rt.isDefined,ft=kendo.util.defined,pt=t.isArray,gt=kendo.isFunction,mt=rt.isString,vt=t.isPlainObject,wt=Math,_t=".kendoDiagram",yt="cascading",xt="itemBoundsChange",bt="change",kt="click",Ct="drag",St="dragEnd",Tt="dragStart",At="mouseEnter",Pt="mouseLeave",Dt="error",Mt="Auto",Et="Top",Bt="Right",It="Left",zt="Bottom",Lt=9007199254740992,Rt="select",Ot="itemRotate",Ft="pan",Vt="zoomStart",Nt="zoomEnd",Ht="none",Ut=600,jt=600,Gt="rectangle",Wt=100,qt=100,$t=20,Yt=20,Xt=0,Qt="Yellow",Kt=Number.MAX_VALUE,Zt=-Number.MAX_VALUE,Jt="absolute",te="transformed",ee="rotated",ie="transparent",ne="width",oe="height",re="x",se="y",ae="DOMMouseScroll"+_t+" mousewheel"+_t,le=.05,ce=5,he=' #=text# ',ue=5;B.DefaultConnectors=[{name:Et},{name:zt},{name:It},{name:Bt},{name:Mt,position:function(t){return t.getPosition("center")}}],v={cancel:{text:"Cancel",imageClass:"k-cancel",className:"k-diagram-cancel",iconClass:"k-icon"},update:{text:"Update",imageClass:"k-update",className:"k-diagram-update",iconClass:"k-icon"}},B.shapeDefaults=function(t){var e={type:Gt,path:"",autoSize:!0,visual:null,x:Xt,y:Xt,minWidth:$t,minHeight:Yt,width:Wt,height:qt,hover:{},editable:{connect:!0,tools:[]},connectors:B.DefaultConnectors,rotation:{angle:0}};return rt.simpleExtend(e,t),e},w=st.extend({init:function(t){var e=this;e.dataItem=(t||{}).dataItem,st.fn.init.call(e),e.options=R({id:B.randomId()},e.options,t),e.isSelected=!1,e.visual=new N({id:e.options.id,autoSize:e.options.autoSize}),e.id=e.options.id,e._template()},options:{hover:{},cursor:ot.grip,content:{align:"center middle"},selectable:!0,serializable:!0,enable:!0},_getCursor:function(t){return this.adorner?this.adorner._getCursor(t):this.options.cursor},visible:function(t){return ut(t)?this.visual.visible():(this.visual.visible(t),e)},bounds:function(){},refresh:function(){this.visual.redraw()},position:function(t){this.options.x=t.x,this.options.y=t.y,this.visual.position(t)},toString:function(){return this.options.id},serialize:function(){var t=R({},{options:this.options});return this.dataItem&&(t.dataItem=""+this.dataItem),t},_content:function(t){var i,n,o;return t!==e&&(i=this.options,B.Utils.isString(t)?i.content.text=t:R(i.content,t),n=i.content,o=this._contentVisual,o?this._updateContentVisual(n):this._createContentVisual(n)),this.options.content.text},_createContentVisual:function(t){t.text&&(this._contentVisual=new Y(t),this._contentVisual._includeInBBox=!1,this.visual.append(this._contentVisual))},_updateContentVisual:function(t){this._contentVisual.redraw(t)},_hitTest:function(t){var e=this.bounds();return this.visible()&&e.contains(t)&&this.options.enable},_template:function(){var t,e,i=this;i.options.content.template&&(t=i.dataItem||{},e=kendo.template(i.options.content.template,{paramName:"dataItem"}),i.options.content.text=e(t))},_canSelect:function(){return this.options.selectable!==!1},toJSON:function(){return{id:this.options.id}}}),_=z.extend({init:function(t,e){this.options=R({},this.options,e),this.connections=[],this.shape=t},options:{width:7,height:7,fill:{color:Qt},hover:{}},position:function(){return this.options.position?this.options.position(this.shape):this.shape.getPosition(this.options.name)},toJSON:function(){return{shapeId:""+this.shape,connector:this.options.name}}}),_.parse=function(t,e){var i,n,o=e.split(":"),r=o[0],s=o[1]||Mt;for(i=0;t.shapes.length>i;i++)if(n=t.shapes[i],n.options.id==r)return n.getConnector(s.trim())},y=w.extend({init:function(t,e){var i=this;w.fn.init.call(i,t),this.diagram=e,this.updateOptionsFromModel(),t=i.options,i.connectors=[],i.type=t.type,i.createShapeVisual(),i.updateBounds(),i.content(i.content()),i._createConnectors()},options:B.shapeDefaults(),_setOptionsFromModel:function(t){var e=s(t||this.dataItem);this.options=R({},this.options,e),this.redrawVisual(),this.options.content&&(this._template(),this.content(this.options.content))},updateOptionsFromModel:function(t,e){var i,n;this.diagram&&this.diagram._isEditable&&(i=s(t||this.dataItem),t&&e?D.inArray(e,["x","y","width","height"])?(n=this.bounds(),n[e]=t[e],this.bounds(n)):(this.options.visual?this.redrawVisual():i.type&&(this.options=R({},this.options,i),this.redrawVisual()),this.options.content&&(this._template(),this.content(this.options.content))):this.options=R({},this.options,i))},redrawVisual:function(){this.visual.clear(),this._contentVisual=null,this.options.dataItem=this.dataItem,this.createShapeVisual(),this.updateBounds()},updateModel:function(t){var e,i,n=this.diagram;n&&n._isEditable&&(e=this._bounds,i=this.dataItem,i&&(n._suspendModelRefresh(),ft(i.x)&&e.x!==i.x&&i.set("x",e.x),ft(i.y)&&e.y!==i.y&&i.set("y",e.y),ft(i.width)&&e.width!==i.width&&i.set("width",e.width),ft(i.height)&&e.height!==i.height&&i.set("height",e.height),this.dataItem=i,n._resumeModelRefresh(),t&&n._syncShapeChanges()))},updateBounds:function(){var t=this.visual._measure(!0),e=this.options;this.bounds(new G(e.x,e.y,t.width,t.height)),this._rotate(),this._alignContent()},content:function(t){var e=this._content(t);return this._alignContent(),e},_alignContent:function(){var t,e,i,n,o,r=this.options.content||{},s=this._contentVisual;s&&r.align&&(t=this.visual._measure(),e=new B.RectAlign(t),i=s.drawingElement.bbox(null),n=new G(0,0,i.width(),i.height()),o=e.align(n,r.align),s.position(o.topLeft()))},_createConnectors:function(){var t,e,i=this.options,n=i.connectors.length,o=i.connectorDefaults;for(e=0;n>e;e++)t=new _(this,R({},o,i.connectors[e])),this.connectors.push(t)},bounds:function(t){var e,i;if(t)if(mt(t))switch(t){case te:e=this._transformedBounds();break;case Jt:e=this._transformedBounds(),i=this.diagram._pan,e.x+=i.x,e.y+=i.y;break;case ee:e=this._rotatedBounds();break;default:e=this._bounds}else this._setBounds(t),this._triggerBoundsChange(),this.diagram&&this.diagram._layouting||this.refreshConnections();else e=this._bounds;return e},_setBounds:function(t){var e=this.options,i=t.topLeft(),n=e.x=i.x,o=e.y=i.y,r=e.width=wt.max(t.width,e.minWidth),s=e.height=wt.max(t.height,e.minHeight);this._bounds=new G(n,o,r,s),this.visual.redraw({x:n,y:o,width:r,height:s})},position:function(t){return t?(this.bounds(new G(t.x,t.y,this._bounds.width,this._bounds.height)),e):this._bounds.topLeft()},clone:function(){var t=this.serialize();return t.options.id=B.randomId(),this.diagram&&this.diagram._isEditable&&ft(this.dataItem)&&(t.options.dataItem=u(this.dataItem)),new y(t.options)},select:function(t){var i,n,o=this.diagram;return ut(t)&&(t=!0),this._canSelect()&&this.isSelected!=t?(i=[],n=[],this.isSelected=t,this.isSelected?(o._selectedItems.push(this),i.push(this)):(rt.remove(o._selectedItems,this),n.push(this)),o._internalSelection||o._selectionChanged(i,n),!0):e},rotate:function(t,i,n){var o,r,s,a,l=this.visual.rotate();return t!==e&&(n!==!1&&this.diagram&&this.diagram.undoRedoService&&t!==l.angle&&this.diagram.undoRedoService.add(new B.RotateUnit(this.diagram._resizingAdorner,[this],[l.angle]),!1),o=this.bounds(),r=new Q(o.width/2,o.height/2),i&&(s=t-l.angle,a=o.center().rotate(i,360-s).minus(r),this._rotationOffset=this._rotationOffset.plus(a.minus(o.topLeft())),this.position(a)),this.visual.rotate(t,r),this.options.rotation.angle=t,this.diagram&&this.diagram._connectorsAdorner&&this.diagram._connectorsAdorner.refresh(),this.refreshConnections(),this.diagram&&this.diagram.trigger(Ot,{item:this})),l},connections:function(t){var e,i,n,o,r,s,a,l=[];for(e=0;this.connectors.length>e;e++)for(r=this.connectors[e],o=r.connections,i=0,o;o.length>i;i++)n=o[i],"out"==t?(s=n.source(),s.shape&&s.shape==this&&l.push(n)):"in"==t?(a=n.target(),a.shape&&a.shape==this&&l.push(n)):l.push(n);return l},refreshConnections:function(){t.each(this.connections(),function(){this.refresh()})},getConnector:function(t){var e,i;if(!mt(t))return t instanceof Q?o(t,this):this.connectors.length?this.connectors[0]:null;for(t=t.toLocaleLowerCase(),e=0;this.connectors.length>e;e++)if(i=this.connectors[e],i.options.name.toLocaleLowerCase()==t)return i},getPosition:function(t){var e=this.bounds(),i=t.charAt(0).toLowerCase()+t.slice(1);return gt(e[i])?this._transformPoint(e[i]()):e.center()},redraw:function(t){var e,i;t&&(e=this.options,this.shapeVisual.redraw(this._visualOptions(t)),this._diffNumericOptions(t,[ne,oe,re,se])&&(this.bounds(new G(e.x,e.y,e.width,e.height)),i=!0),t.connectors&&(e.connectors=t.connectors,this._updateConnectors()),e=R(e,t),(t.rotation||i)&&this._rotate(),e.content&&this.content(e.content))},_updateConnectors:function(){var t,e,i,n,o=this.connections();for(this.connectors=[],this._createConnectors(),n=0;o.length>n;n++)t=o[n],e=t.source(),i=t.target(),e.shape&&e.shape===this?t.source(this.getConnector(e.options.name)||null):i.shape&&i.shape===this&&t.target(this.getConnector(i.options.name)||null),t.updateModel()},_diffNumericOptions:B.diffNumericOptions,_visualOptions:function(t){return{data:t.path,source:t.source,hover:t.hover,fill:t.fill,stroke:t.stroke}},_triggerBoundsChange:function(){this.diagram&&this.diagram.trigger(xt,{item:this,bounds:this._bounds.clone()})},_transformPoint:function(t){var e=this.rotate(),i=this.bounds(),n=i.topLeft();return e.angle&&t.rotate(e.center().plus(n),360-e.angle),t},_transformedBounds:function(){var t=this.bounds(),e=t.topLeft(),i=t.bottomRight();return G.fromPoints(this.diagram.modelToView(e),this.diagram.modelToView(i))},_rotatedBounds:function(){var t=this.bounds().rotatedBounds(this.rotate().angle),e=t.topLeft(),i=t.bottomRight();return G.fromPoints(e,i)},_rotate:function(){var t=this.options.rotation;t&&t.angle&&this.rotate(t.angle),this._rotationOffset=new Q},_hover:function(t){var e=this.options,i=e.hover,n=e.stroke,o=e.fill;t&&dt(i.stroke)&&(n=R({},n,i.stroke)),t&&dt(i.fill)&&(o=i.fill),this.shapeVisual.redraw({stroke:n,fill:o}),e.editable&&e.editable.connect&&this.diagram._showConnectors(this,t)},_hitTest:function(t){if(this.visible()){var e,i=this.bounds(),n=this.rotate().angle;if(t.isEmpty&&!t.isEmpty())return K.rects(t,i,n?n:0);if(e=t.clone().rotate(i.center(),n),i.contains(e))return this}},toJSON:function(){return{shapeId:this.options.id}},createShapeVisual:function(){var t,e=this.options,i=this._visualOptions(e),n=e.visual,o=(e.type+"").toLocaleLowerCase();i.width=e.width,i.height=e.height,gt(n)?t=n.call(this,e):i.data?(t=new W(i),m(t)):t="rectangle"==o?new H(i):"circle"==o?new U(i):"text"==o?new Y(i):"image"==o?new X(i):new W(i),this.shapeVisual=t,this.visual.append(this.shapeVisual)}}),x=w.extend({init:function(t,e,i){var n=this;w.fn.init.call(n,i),this.updateOptionsFromModel(),this._initRouter(),n.path=new B.Polyline(n.options),n.path.fill(ie),n.visual.append(n.path),n._sourcePoint=n._targetPoint=new Q,n._setSource(t),n._setTarget(e),n.content(n.options.content),n.definers=[],ft(i)&&i.points&&n.points(i.points)},options:{hover:{stroke:{}},startCap:Ht,endCap:Ht,points:[],selectable:!0,fromConnector:Mt,toConenctor:Mt},_setOptionsFromModel:function(t){this.updateOptionsFromModel(t||this.dataItem)},updateOptionsFromModel:function(t){var e,i,n,o;this.diagram&&this.diagram._isEditable&&(e=this.diagram._dataMap,i=a(t||this.dataItem),t?(ft(i.from)?(n=e[i.from],n&&ft(i.fromConnector)&&(n=n.getConnector(i.fromConnector)),this.source(n)):ft(i.fromX)&&ft(i.fromY)&&this.source(new Q(i.fromX,i.fromY)),ft(i.to)?(o=e[i.to],o&&ft(i.toConnector)&&(o=o.getConnector(i.toConnector)),this.target(o)):ft(i.toX)&&ft(i.toY)&&this.target(new Q(i.toX,i.toY)),ft(i.type)&&this.type()!==i.type&&(this.points([]),this.type(i.type)),this.dataItem=t,this._template(),this.redraw(this.options)):this.options=R({},i,this.options))},updateModel:function(t){if(this.diagram&&this.diagram._isEditable&&this.diagram.connectionsDataSource){var e=this.diagram.connectionsDataSource.getByUid(this.dataItem.uid);e&&(this.diagram._suspendModelRefresh(),ft(this.options.fromX)&&null!==this.options.fromX?(p("from",e),p("fromConnector",e),e.set("fromX",this.options.fromX),e.set("fromY",this.options.fromY)):(e.set("from",this.options.from),ft(e.fromConnector)&&e.set("fromConnector",this.sourceConnector?this.sourceConnector.options.name:null),p("fromX",e),p("fromY",e)),ft(this.options.toX)&&null!==this.options.toX?(p("to",e),p("toConnector",e),e.set("toX",this.options.toX),e.set("toY",this.options.toY)):(e.set("to",this.options.to),ft(e.toConnector)&&e.set("toConnector",this.targetConnector?this.targetConnector.options.name:null),p("toX",e),p("toY",e)),ft(this.options.type)&&ft(e.type)&&e.set("type",this.options.type),this.dataItem=e,this.diagram._resumeModelRefresh(),t&&this.diagram._syncConnectionChanges())}},sourcePoint:function(){return this._resolvedSourceConnector?this._resolvedSourceConnector.position():this._sourcePoint},_setSource:function(t){var i,n=t instanceof y,o=this.options.fromConnector||Mt;(!n||t.getConnector(o))&&(t!==e&&(this.from=t),this._removeFromSourceConnector(),null===t?this.sourceConnector&&(this._sourcePoint=(this._resolvedSourceConnector||this.sourceConnector).position(),this._clearSourceConnector(),this._setFromOptions(null,this._sourcePoint)):t instanceof _?(i=t.shape.dataItem,i&&this._setFromOptions(i.id),this.sourceConnector=t,this.sourceConnector.connections.push(this)):t instanceof Q?(this._setFromOptions(null,t),this._sourcePoint=t,this.sourceConnector&&this._clearSourceConnector()):n&&(i=t.dataItem,i&&this._setFromOptions(i.id),this.sourceConnector=t.getConnector(o),this.sourceConnector.connections.push(this)))},source:function(t,e){return dt(t)&&(e&&this.diagram&&this.diagram.undoRedoService.addCompositeItem(new B.ConnectionEditUnit(this,t)),this._setSource(t),this.refresh()),this.sourceConnector?this.sourceConnector:this._sourcePoint},_setFromOptions:function(t,e){this.options.from=t,e?(this.options.fromX=e.x,this.options.fromY=e.y):(this.options.fromX=null,this.options.fromY=null)},sourceDefiner:function(t){if(!t)return this._sourceDefiner||(this._sourceDefiner=new B.PathDefiner(this.sourcePoint(),null,null)),this._sourceDefiner;if(!(t instanceof B.PathDefiner))throw"The sourceDefiner needs to be a PathDefiner.";t.left=null,this._sourceDefiner=t,this.source(t.point)},targetPoint:function(){return this._resolvedTargetConnector?this._resolvedTargetConnector.position():this._targetPoint},_setTarget:function(t){var i,n=t instanceof y,o=this.options.toConnector||Mt;(!n||t.getConnector(o))&&(t!==e&&(this.to=t),this._removeFromTargetConnector(),null===t?this.targetConnector&&(this._targetPoint=(this._resolvedTargetConnector||this.targetConnector).position(),this._clearTargetConnector(),this._setToOptions(null,this._targetPoint)):t instanceof _?(i=t.shape.dataItem,i&&this._setToOptions(i.id),this.targetConnector=t,this.targetConnector.connections.push(this)):t instanceof Q?(this._setToOptions(null,t),this._targetPoint=t,this.targetConnector&&this._clearTargetConnector()):n&&(i=t.dataItem,i&&this._setToOptions(i.id),this.targetConnector=t.getConnector(o),this.targetConnector.connections.push(this)))},target:function(t,i){return dt(t)&&(i&&this.diagram&&this.diagram.undoRedoService.addCompositeItem(new B.ConnectionEditUnit(this,e,t)),this._setTarget(t),this.refresh()),this.targetConnector?this.targetConnector:this._targetPoint},_setToOptions:function(t,e){this.options.to=t,e?(this.options.toX=e.x,this.options.toY=e.y):(this.options.toX=null,this.options.toY=null)},targetDefiner:function(t){if(!t)return this._targetDefiner||(this._targetDefiner=new B.PathDefiner(this.targetPoint(),null,null)),this._targetDefiner;if(!(t instanceof B.PathDefiner))throw"The sourceDefiner needs to be a PathDefiner.";t.right=null,this._targetDefiner=t,this.target(t.point)},_updateConnectors:function(){this._updateConnector(this.source(),"source"),this._updateConnector(this.target(),"target")},_updateConnector:function(t,e){var i,n,o,r,s=this,a=s.diagram;t instanceof _&&!a.getShapeById(t.shape.id)?(i=t.shape.dataItem,n=t.options.name,o=function(){var o=a._dataMap[i.id];t=o.getConnector(n),s[e](t,!1),s.updateModel()},a._dataMap[i.id]?o():(r=a._inactiveShapeItems.getByUid(i.uid),r&&a._deferredConnectionUpdates.push(r.onActivate(o)))):s[e](t,!1)},content:function(t){var e=this._content(t);return ft(t)&&this._alignContent(),e},_createContentVisual:function(t){var e;return gt(t.visual)?e=t.visual.call(this,t):t.text&&(e=new Y(t)),e&&(this._contentVisual=e,e._includeInBBox=!1,this.visual.append(e)),e},_updateContentVisual:function(t){gt(t.visual)?(this.visual.remove(this._contentVisual),this._createContentVisual(t)):this._contentVisual.redraw(t)},_alignContent:function(){var t,e,i,n,o,r,s,a,l,c,h,u,d,f,p,g;if(this._contentVisual){for(t=ue,e=this.allPoints(),i=wt.floor(e.length/2),n=i-1;n>0&&e[n].equals(e[i]);)n--,i++;o=e[i],r=e[n],s=this._contentVisual._measure(),a=s.width,l=s.height,c=e.length%2===0,h=r.distanceTo(o),c&&e.length>2&&h>0&&(r.y===o.y&&a>h||r.x===o.x&&l>h)&&(c=!1,t=0),c?(d=kendo.util.deg(wt.atan2(o.y-r.y,o.x-r.x)),u=new Q((o.x-r.x)/2+r.x,(o.y-r.y)/2+r.y),90===wt.abs(d)?(u.x+=t,u.y-=l/2):d%180===0?(u.x-=a/2,u.y-=l+t):-90>d||d>0&&90>d?u.y-=l:(0>d||d>90)&&(u.x-=a,u.y-=l)):(f=wt.floor(e.length/2),u=e[f].clone(),r=e[f-1],o=e[f+1],p=u.x>=r.x&&u.x>=o.x?t:-s.width-t,g=u.y>=r.y&&u.y>=o.y?t:-s.height-t,u.x+=p,u.y+=g),this._contentVisual.position(u)}},select:function(t){var i,n,o=this.diagram;return this._canSelect()&&this.isSelected!==t?(this.isSelected=t,i=[],n=[],this.isSelected?(this.adorner=new Z(this,this.options.selection),o._adorn(this.adorner,!0),o._selectedItems.push(this),i.push(this)):this.adorner&&(o._adorn(this.adorner,!1),rt.remove(o._selectedItems,this),this.adorner=e,n.push(this)),this.adorner&&this.adorner.refresh(),o._internalSelection||o._selectionChanged(i,n),!0):e},bounds:function(t){return!t||mt(t)?this._bounds:(this._bounds=t,e)},type:function(t){var i=this.options;return t?(t!==i.type&&(i.type=t,this._initRouter(),this.refresh()),e):i.type},_initRouter:function(){var t=(this.options.type||"").toLowerCase();this._router=t==yt?new ht(this):new ct(this)},points:function(t){var e,i,n,o;if(!t){if(n=[],dt(this.definers))for(o=0;this.definers.length>o;o++)n.push(this.definers[o].point);return n}for(this.definers=[],e=0;t.length>e;e++)if(i=t[e],i instanceof B.Point)this.definers.push(new B.PathDefiner(i));else{if(!i.hasOwnProperty("x")||!i.hasOwnProperty("y"))throw"A Connection point needs to be a Point or an object with x and y properties.";this.definers.push(new B.PathDefiner(new Q(i.x,i.y)))}},allPoints:function(){var t,e=[this.sourcePoint()];if(this.definers)for(t=0;this.definers.length>t;t++)e.push(this.definers[t].point);return e.push(this.targetPoint()),e},refresh:function(){this._resolveConnectors(),this._refreshPath(),this._alignContent(),this.adorner&&this.adorner.refresh()},_resolveConnectors:function(){var t,e,i,r,s=this,a=s.source(),l=s.target();a instanceof Q?t=a:a instanceof _&&(n(a)?i=a.shape:(s._resolvedSourceConnector=a,t=a.position())),l instanceof Q?e=l:l instanceof _&&(n(l)?r=l.shape:(s._resolvedTargetConnector=l,e=l.position())),t?r&&(s._resolvedTargetConnector=o(t,r)):i&&(e?s._resolvedSourceConnector=o(e,i):r&&this._resolveAutoConnectors(i,r))},_resolveAutoConnectors:function(t,e){var i,o,r,s,a,l,c,h,u,d,f,p,g=Lt,m=Lt,v=t.connectors;for(d=0;v.length>d;d++)if(h=v[d],!n(h))for(s=h.position(),i=e.connectors,f=0;i.length>f;f++)u=i[f],n(u)||(a=u.position(),p=wt.round(s.distanceTo(a)),g>p&&this.diagram&&this._testRoutePoints(s,a,h,u)&&(g=p,o=h,r=u),m>p&&(l=h,c=u,m=p));o&&(l=o,c=r),this._resolvedSourceConnector=l,
this._resolvedTargetConnector=c},_testRoutePoints:function(t,e,i,n){var o,r,s,a,l,c=this._router,h=!0;if(c instanceof ht)for(o=c.routePoints(t,e,i,n),o.unshift(t),o.push(e),l=1;o.length>l;l++)if(r=o[l-1],s=o[l],a=new G(wt.min(r.x,s.x),wt.min(r.y,s.y),wt.abs(r.x-s.x),wt.abs(r.y-s.y)),a.width>0&&(a.x++,a.width-=2),a.height>0&&(a.y++,a.height-=2),!a.isEmpty()&&this.diagram._shapesQuadTree.hitTestRect(a)){h=!1;break}return h},redraw:function(t){if(t){this.options=R({},this.options,t);var e=this.options.points;ft(e)&&e.length>0&&(this.points(e),this._refreshPath()),(t&&t.content||t.text)&&this.content(t.content),this.path.redraw({fill:t.fill,stroke:t.stroke,startCap:t.startCap,endCap:t.endCap})}},clone:function(){var t=this.serialize();return this.diagram&&this.diagram._isEditable&&ft(this.dataItem)&&(t.options.dataItem=u(this.dataItem)),new x(this.from,this.to,t.options)},serialize:function(){var t=this.from.toJSON?this.from.toJSON:""+this.from,e=this.to.toJSON?this.to.toJSON:""+this.to,i=R({},{options:this.options,from:t,to:e});return ft(this.dataItem)&&(i.dataItem=""+this.dataItem),i.options.points=this.points(),i},_hitTest:function(t){if(this.visible()){var e=new Q(t.x,t.y),i=this.sourcePoint(),n=this.targetPoint();if(t.isEmpty&&!t.isEmpty()&&t.contains(i)&&t.contains(n))return this;if(this._router.hitTest(e))return this}},_hover:function(t){var e=(this.options.stroke||{}).color;t&&dt(this.options.hover.stroke.color)&&(e=this.options.hover.stroke.color),this.path.redraw({stroke:{color:e}})},_refreshPath:function(){ft(this.path)&&(this._drawPath(),this.bounds(this._router.getBounds()))},_drawPath:function(){var t,e,i;this._router&&this._router.route(),t=this.sourcePoint(),e=this.targetPoint(),i=this.points(),this.path.redraw({points:[t].concat(i,[e])})},_clearSourceConnector:function(){this.sourceConnector=e,this._resolvedSourceConnector=e},_clearTargetConnector:function(){this.targetConnector=e,this._resolvedTargetConnector=e},_removeFromSourceConnector:function(){this.sourceConnector&&rt.remove(this.sourceConnector.connections,this)},_removeFromTargetConnector:function(){this.targetConnector&&rt.remove(this.targetConnector.connections,this)},toJSON:function(){var t,e,i,n=this;return n.from&&n.from.toJSON?t=n.from.toJSON():(i=n._sourcePoint,t={x:i.x,y:i.y}),n.to&&n.to.toJSON?e=n.to.toJSON():(i=n._targetPoint,e={x:i.x,y:i.y}),{from:t,to:e}}}),b=I.extend({init:function(t,e){var i=this;kendo.destroy(t),I.fn.init.call(i,t,e),i._initTheme(),i._initElements(),i._extendLayoutOptions(i.options),i._initDefaults(e),i._initCanvas(),i.mainLayer=new N({id:"main-layer"}),i.canvas.append(i.mainLayer),i._shapesQuadTree=new P(i),i._pan=new Q,i._adorners=[],i.adornerLayer=new N({id:"adorner-layer"}),i.canvas.append(i.adornerLayer),i._createHandlers(),i._initialize(),i._fetchFreshData(),i._createGlobalToolBar(),i._resizingAdorner=new it(i,{editable:i.options.editable}),i._connectorsAdorner=new nt(i),i._adorn(i._resizingAdorner,!0),i._adorn(i._connectorsAdorner,!0),i.selector=new et(i),i._clipboard=[],i.pauseMouseHandlers=!1,i._createOptionElements(),i.zoom(i.options.zoom),i.canvas.draw()},options:{name:"Diagram",theme:"default",layout:"",zoomRate:.1,zoom:1,zoomMin:0,zoomMax:2,dataSource:{},draggable:!0,template:"",autoBind:!0,editable:{rotate:{},resize:{},text:!0,tools:[],drag:{snap:{size:10,angle:10}},remove:!0},pannable:{key:"ctrl"},selectable:{key:"none"},tooltip:{enabled:!0,format:"{0}"},copy:{enabled:!0,offsetX:20,offsetY:20},shapeDefaults:B.shapeDefaults({undoable:!0}),connectionDefaults:{editable:{tools:[]},type:yt},shapes:[],connections:[]},events:[Nt,Vt,Ft,Rt,Ot,xt,bt,kt,At,Pt,"toolBarClick","save","cancel","edit","remove","add","dataBound",Tt,Ct,St],items:function(){return t()},_createGlobalToolBar:function(){var t,e=this.options.editable;e&&(t=e.tools,!this._isEditable||t===!1||t&&0!==t.length||(t=["createShape","undo","redo","rotateClockwise","rotateAnticlockwise"]),t&&t.length&&(this.toolBar=new k(this,{tools:t||{},click:L(this._toolBarClick,this),modal:!1}),this.toolBar.element.css({textAlign:"left"}),this.element.prepend(this.toolBar.element),this._resize()))},createShape:function(){var t,e,i,n,o,r;(this.editor&&this.editor.end()||!this.editor)&&(t=this.dataSource,e=t.view()||[],i=e.length,n=f(t,{}),o=this._createShape(n,{}),this.trigger("add",{shape:o})||(t.insert(i,n),r=this._inactiveShapeItems.getByUid(n.uid),r.element=o,this.edit(o)))},_createShape:function(t,e){e=R({},this.options.shapeDefaults,e),e.dataItem=t;var i=new y(e,this);return i},createConnection:function(){var t,e,i,n,o;(this.editor&&this.editor.end()||!this.editor)&&(t=this.connectionsDataSource,e=t.view()||[],i=e.length,n=f(t,{}),o=this._createConnection(n),this.trigger("add",{connection:o})||(this._connectionsDataMap[n.uid]=o,t.insert(i,n),this.addConnection(o,!1),this.edit(o)))},_createConnection:function(t,e,i){var n,o=R({},this.options.connectionDefaults);return o.dataItem=t,n=new x(e||new Q,i||new Q,o)},editModel:function(t,e){var i,n,o,r;if(this.cancelEdit(),o=this.options.editable,"shape"==e)i=o.shapeEditors,n=o.shapeTemplate;else{if("connection"!=e)return;r=L(l,this),i=R({},{from:r,to:r},o.connectionEditors),n=o.connectionTemplate}this.editor=new S(this.element,{update:L(this._update,this),cancel:L(this._cancel,this),model:t,type:e,target:this,editors:i,template:n}),this.trigger("edit",this._editArgs())},edit:function(t){if(t.dataItem){var e=t instanceof y?"shape":"connection";this.editModel(t.dataItem,e)}},cancelEdit:function(){this.editor&&(this._getEditDataSource().cancelChanges(this.editor.model),this._destroyEditor())},saveEdit:function(){this.editor&&this.editor.end()&&!this.trigger("save",this._editArgs())&&this._getEditDataSource().sync()},_update:function(){this.editor&&this.editor.end()&&!this.trigger("save",this._editArgs())&&(this._getEditDataSource().sync(),this._destroyEditor())},_cancel:function(){var t,e;this.editor&&!this.trigger("cancel",this._editArgs())&&(t=this.editor.model,this._getEditDataSource().cancelChanges(t),e=this._connectionsDataMap[t.uid]||this._dataMap[t.id],e&&e._setOptionsFromModel(t),this._destroyEditor())},_getEditDataSource:function(){return"shape"===this.editor.options.type?this.dataSource:this.connectionsDataSource},_editArgs:function(){var t={container:this.editor.wrapper};return t[this.editor.options.type]=this.editor.model,t},_destroyEditor:function(){this.editor&&(this.editor.close(),this.editor=null)},_initElements:function(){this.wrapper=this.element.empty().css("position","relative").attr("tabindex",0).addClass("k-widget k-diagram"),this.scrollable=t("
").appendTo(this.element)},_initDefaults:function(t){var e=this.options,i=e.editable,n=e.shapeDefaults,o=e.connectionDefaults,r=(t||{}).shapeDefaults;i===!1?(n.editable=!1,o.editable=!1):(g(i,n.editable,["drag","remove","connect"]),g(i,o.editable,["drag","remove"])),r&&r.connectors&&(e.shapeDefaults.connectors=r.connectors)},_initCanvas:function(){var e=t("
").appendTo(this.scrollable)[0],i=this.viewport();this.canvas=new V(e,{width:i.width||Ut,height:i.height||jt})},_createHandlers:function(){var t=this,e=t.element;e.on(ae,L(t._wheel,t)),kendo.support.touch||kendo.support.mobileOS?(t._userEvents=new kendo.UserEvents(e,{multiTouch:!0,tap:L(t._tap,t)}),t._userEvents.bind(["gesturestart","gesturechange","gestureend"],{gesturestart:L(t._gestureStart,t),gesturechange:L(t._gestureChange,t),gestureend:L(t._gestureEnd,t)}),t.toolService=new tt(t),t.options.pannable!==!1&&t.scroller.enable()):(t.toolService=new tt(t),this.scroller.wrapper.on("mousemove"+_t,L(t._mouseMove,t)).on("mouseup"+_t,L(t._mouseUp,t)).on("mousedown"+_t,L(t._mouseDown,t)).on("mouseover"+_t,L(t._mouseover,t)).on("mouseout"+_t,L(t._mouseout,t)),e.on("keydown"+_t,L(t._keydown,t))),this._syncHandler=L(t._syncChanges,t),t._resizeHandler=L(t.resize,t,!1),kendo.onResize(t._resizeHandler),this.bind(Vt,L(t._destroyToolBar,t)),this.bind(Ft,L(t._destroyToolBar,t))},_tap:function(t){var e,i=this.toolService,n=this._caculateMobilePosition(t);i._updateHoveredItem(n),i.hoveredItem&&(e=i.hoveredItem,this.options.selectable!==!1&&(this._destroyToolBar(),e.isSelected?e.select(!1):this.select(e,{addToSelection:!0}),this._createToolBar()),this.trigger("click",{item:e,point:n}))},_caculateMobilePosition:function(t){return this.documentToModel(Q(t.x.location,t.y.location))},_gestureStart:function(t){var e,i;this._destroyToolBar(),this.scroller.disable(),e=this.documentToModel(new Q(t.center.x,t.center.y)),i={point:e,zoom:this.zoom()},this.trigger(Vt,i)||(this._gesture=t,this._initialCenter=e)},_gestureChange:function(t){var e,i,n=this._gesture,o=this._initialCenter,r=this.documentToView(new Q(t.center.x,t.center.y)),s=t.distance/n.distance,a=this._zoom,l=!1;wt.abs(s-1)>=le&&(this._zoom=a=this._getValidZoom(a*s),this.options.zoom=a,this._gesture=t,l=!0),e=o.times(a),i=r.minus(e),(l||this._pan.distanceTo(i)>=ce)&&(this._panTransform(i),this._updateAdorners()),t.preventDefault()},_gestureEnd:function(){this.options.pannable!==!1&&this.scroller.enable(),this.trigger(Nt,{point:this._initialCenter,zoom:this.zoom()})},_resize:function(){var t=this.viewport();this.canvas&&this.canvas.size(t),this.scrollable&&this.toolBar&&this.scrollable.height(t.height)},_mouseover:function(t){var e=t.target._kendoNode;e&&e.srcElement._hover&&e.srcElement._hover(!0,e.srcElement)},_mouseout:function(t){var e=t.target._kendoNode;e&&e.srcElement._hover&&e.srcElement._hover(!1,e.srcElement)},_initTheme:function(){var t=this,e=D.ui.themes||{},i=((t.options||{}).theme||"").toLowerCase(),n=(e[i]||{}).diagram;t.options=R({},n,t.options),t.options.editable===!0&&R(t.options,{editable:(n||{}).editable})},_createOptionElements:function(){var t=this.options,e=t.shapes.length;e&&this._createShapes(),t.connections.length&&this._createConnections(),e&&t.layout&&this.layout(t.layout)},_createShapes:function(){var t,e,i=this,n=i.options,o=n.shapes;for(e=0;o.length>e;e++)t=o[e],i.addShape(t)},_createConnections:function(){var t,e,i,n,o=this,r=o.options,s=r.connectionDefaults,a=r.connections;for(n=0;a.length>n;n++)t=a[n],e=o._findConnectionTarget(t.from),i=o._findConnectionTarget(t.to),o.connect(e,i,R({},s,t))},_findConnectionTarget:function(t){var e,i=this,n=mt(t)?t:t.shapeId||t.id;return n?(e=i.getShapeById(n),t.connector&&(e=e.getConnector(t.connector))):e=new Q(t.x||0,t.y||0),e},destroy:function(){var t=this;I.fn.destroy.call(t),this._userEvents&&this._userEvents.destroy(),kendo.unbindResize(t._resizeHandler),t.clear(),t.element.off(_t),t.scroller.wrapper.off(_t),t.canvas.destroy(!0),t.canvas=e,t._destroyEditor(),t.destroyScroller(),t._destroyGlobalToolBar(),t._destroyToolBar()},destroyScroller:function(){var t=this.scroller;t&&(t.destroy(),t.element.remove(),this.scroller=null)},save:function(){var t,e,i,n={shapes:[],connections:[]};for(t=0;this.shapes.length>t;t++)i=this.shapes[t],i.options.serializable&&n.shapes.push(i.options);for(t=0;this.connections.length>t;t++)e=this.connections[t],n.connections.push(R({},e.options,e.toJSON()));return n},focus:function(){if(!this.element.is(kendo._activeElement())){var t,e=this.element,i=e[0],n=[],o=[],r=document.documentElement;do i=i.parentNode,i.scrollHeight>i.clientHeight&&(n.push(i),o.push(i.scrollTop));while(i!=r);for(e.focus(),t=0;n.length>t;t++)n[t].scrollTop=o[t]}},load:function(t){this.clear(),this.setOptions(t),this._createShapes(),this._createConnections()},setOptions:function(t){R(this.options,t)},clear:function(){var t=this;t.select(!1),t.mainLayer.clear(),t._shapesQuadTree.clear(),t._initialize()},connect:function(t,e,i){var n,o;return this.connectionsDataSource&&this._isEditable?(o=this.connectionsDataSource.add({}),n=this._connectionsDataMap[o.uid],n.source(t),n.target(e),n.redraw(i),n.updateModel()):(n=new x(t,e,R({},this.options.connectionDefaults,i)),this.addConnection(n)),n},connected:function(t,e){var i,n;for(i=0;this.connections.length>i;i++)if(n=this.connections[i],n.from==t&&n.to==e)return!0;return!1},addConnection:function(t,e){return e!==!1&&this.undoRedoService.add(new B.AddConnectionUnit(t,this),!1),t.diagram=this,t._setOptionsFromModel(),t.refresh(),this.mainLayer.append(t.visual),this.connections.push(t),this.trigger(bt,{added:[t],removed:[]}),t},_addConnection:function(t,e){var i,n=this.connectionsDataSource;if(n&&this._isEditable){if(i=f(n,u(t.dataItem)),t.dataItem=i,t.updateModel(),!this.trigger("add",{connection:t}))return this._connectionsDataMap[i.uid]=t,n.add(i),this.addConnection(t,e),t._updateConnectors(),t}else if(!this.trigger("add",{connection:t}))return this.addConnection(t,e),t._updateConnectors(),t},addShape:function(t,e){var i,n=this.options.shapeDefaults;if(t instanceof y)i=t;else{if(t instanceof kendo.Class)return;n=R({},n,t||{}),i=new y(n,this)}return e!==!1&&this.undoRedoService.add(new B.AddShapeUnit(i,this),!1),this.shapes.push(i),i.diagram!==this&&(this._shapesQuadTree.insert(i),i.diagram=this),this.mainLayer.append(i.visual),this.trigger(bt,{added:[i],removed:[]}),i},_addShape:function(t,e){var i,n,o=this,r=o.dataSource;if(r&&this._isEditable){if(i=f(r,u(t.dataItem)),t.dataItem=i,t.updateModel(),!this.trigger("add",{shape:t}))return this.dataSource.add(i),n=this._inactiveShapeItems.getByUid(i.uid),n.element=t,n.undoable=e,t}else if(!this.trigger("add",{shape:t}))return this.addShape(t,e)},remove:function(t,e){var i,n,o,r;for(t=pt(t)?t.slice(0):[t],i=d(t),n=i.shapes,o=i.connections,ft(e)||(e=!0),e&&this.undoRedoService.begin(),this._suspendModelRefresh(),r=n.length-1;r>=0;r--)this._removeItem(n[r],e,o);for(r=o.length-1;r>=0;r--)this._removeItem(o[r],e);this._resumeModelRefresh(),e&&this.undoRedoService.commit(!1),this.trigger(bt,{added:[],removed:t})},_removeShapeDataItem:function(t){this._isEditable&&(this.dataSource.remove(t.dataItem),delete this._dataMap[t.dataItem.id])},_removeConnectionDataItem:function(t){this._isEditable&&(this.connectionsDataSource.remove(t.dataItem),delete this._connectionsDataMap[t.dataItem.uid])},_triggerRemove:function(t){var e,i,n,o,r=[];for(o=0;t.length>o;o++)e=t[o],n=e.options.editable,i=e instanceof y?{shape:e}:{connection:e},n&&n.remove!==!1&&!this.trigger("remove",i)&&r.push(e);return r},undo:function(){this.undoRedoService.undo()},redo:function(){this.undoRedoService.redo()},select:function(t,e){if(!dt(t))return this._selectedItems;e=R({addToSelection:!1},e);var i,n,o=e.addToSelection,r=[],s=[];for(o||this.deselect(),this._internalSelection=!0,t instanceof Array?r=t:t instanceof w&&(r=[t]),i=0;r.length>i;i++)n=r[i],n.select(!0)&&s.push(n);this._selectionChanged(s,[]),this._internalSelection=!1},selectAll:function(){this.select(this.shapes.concat(this.connections))},selectArea:function(t){var e,i,n,o;if(this._internalSelection=!0,o=[],t instanceof G)for(i=this.shapes.concat(this.connections),e=0;i.length>e;e++)n=i[e],t&&!n._hitTest(t)||!n.options.enable||n.select(!0)&&o.push(n);this._selectionChanged(o,[]),this._internalSelection=!1},deselect:function(t){this._internalSelection=!0;var e,i,n=[],o=[];for(t instanceof Array?o=t:t instanceof w?o.push(t):dt(t)||(o=this._selectedItems.slice(0)),i=0;o.length>i;i++)e=o[i],e.select(!1)&&n.push(e);this._selectionChanged([],n),this._internalSelection=!1},toFront:function(t,e){var i,n,o;t||(t=this._selectedItems.slice()),i=this._getDiagramItems(t),!ft(e)||e?(n=r(this.mainLayer,i.visuals),o=new lt(this,t,n),this.undoRedoService.add(o)):(this.mainLayer.toFront(i.visuals),this._fixOrdering(i,!0))},toBack:function(t,e){var i,n,o;t||(t=this._selectedItems.slice()),i=this._getDiagramItems(t),!ft(e)||e?(n=r(this.mainLayer,i.visuals),o=new at(this,t,n),this.undoRedoService.add(o)):(this.mainLayer.toBack(i.visuals),this._fixOrdering(i,!1))},bringIntoView:function(t,e){var i,n,o,r,s=this.viewport(),a=new B.RectAlign(s);0!==s.width&&0!==s.height&&(e=R({animate:!1,align:"center middle"},e),"none"==e.align&&(e.align="center middle"),t instanceof w?n=t.bounds(te):pt(t)?n=this.boundingBox(t):t instanceof G&&(n=t.clone()),o=n.clone(),n.zoom(this._zoom),(n.width>s.width||n.height>s.height)&&(this._zoom=this._getValidZoom(wt.min(s.width/o.width,s.height/o.height)),n=o.clone().zoom(this._zoom)),this._zoomMainLayer(),i=n.clone(),a.align(n,e.align),r=n.topLeft().minus(i.topLeft()),this.pan(r.times(-1),e.animate))},alignShapes:function(t){var e,i,n,o,r,s,a;if(ut(t)&&(t="Left"),e=this.select(),0!==e.length){switch(t.toLowerCase()){case"left":case"top":i=Kt;break;case"right":case"bottom":i=Zt}for(o=0;e.length>o;o++)if(n=e[o],n instanceof y)switch(t.toLowerCase()){case"left":i=wt.min(i,n.options.x);break;case"top":i=wt.min(i,n.options.y);break;case"right":i=wt.max(i,n.options.x);break;case"bottom":i=wt.max(i,n.options.y)}for(r=[],s=[],o=0;e.length>o;o++)if(n=e[o],n instanceof y)switch(s.push(n),r.push(n.bounds()),t.toLowerCase()){case"left":case"right":n.position(new Q(i,n.options.y));break;case"top":case"bottom":n.position(new Q(n.options.x,i))}a=new B.TransformUnit(s,r),this.undoRedoService.add(a,!1)}},zoom:function(t,e){var i,n,o,r;return t&&(i=e?e.point:new B.Point(0,0),t=this._zoom=this._getValidZoom(t),ut(i)||(i=new B.Point(wt.round(i.x),wt.round(i.y)),n=i.times(t),o=this.modelToView(i),r=o.minus(n),this._storePan(new B.Point(wt.round(r.x),wt.round(r.y)))),e&&(e.zoom=t),this._panTransform(),this._updateAdorners()),this._zoom},_getPan:function(t){var e=this.canvas;return e.translate||(t=t.plus(this._pan)),t},pan:function(t,e){var i,n;t instanceof Q&&(i=this,n=i.scroller,t=i._getPan(t),t=t.times(-1),e?n.animatedScrollTo(t.x,t.y,function(){i._updateAdorners()}):(n.scrollTo(t.x,t.y),i._updateAdorners()))},viewport:function(){var t=this.element,e=t.width(),i=t.height();return this.toolBar&&(i-=this.toolBar.element.outerHeight()),new G(0,0,e,i)},copy:function(){var t,e;if(this.options.copy.enabled)for(this._clipboard=[],this._copyOffset=1,t=0;this._selectedItems.length>t;t++)e=this._selectedItems[t],this._clipboard.push(e)},cut:function(){var t,e;if(this.options.copy.enabled){for(this._clipboard=[],this._copyOffset=0,t=0;this._selectedItems.length>t;t++)e=this._selectedItems[t],this._clipboard.push(e);this.remove(this._clipboard,!0)}},paste:function(){var t,e,i,n,o,r,s,a;if(this._clipboard.length>0){for(n={},o=d(this._clipboard),r=o.connections,s=o.shapes,a={x:this._copyOffset*this.options.copy.offsetX,y:this._copyOffset*this.options.copy.offsetY},this.deselect(),i=0;s.length>i;i++)t=s[i],e=t.clone(),n[t.id]=e,e.position(new Q(t.options.x+a.x,t.options.y+a.y)),e.diagram=this,e=this._addShape(e),e&&e.select();for(i=0;r.length>i;i++)t=r[i],e=this._addConnection(t.clone()),e&&(this._updateCopiedConnection(e,t,"source",n,a),this._updateCopiedConnection(e,t,"target",n,a),e.select(!0),e.updateModel());this._syncChanges(),this._copyOffset+=1}},_updateCopiedConnection:function(t,e,i,n,o){var r,s,a,l=e[i](),c=this;l instanceof _&&n[l.shape.id]?(a=n[l.shape.id],c.getShapeById(a.id)?t[i](a.getConnector(l.options.name)):(s=c._inactiveShapeItems.getByUid(a.dataItem.uid),s&&(r=function(e){a=c._dataMap[e.id],t[i](a.getConnector(l.options.name)),t.updateModel()},c._deferredConnectionUpdates.push(s.onActivate(r))))):t[i](new Q(e[i+"Point"]().x+o.x,e[i+"Point"]().y+o.y))},boundingBox:function(t,e){var i,n,o,r=G.empty(),s=dt(t)?this._getDiagramItems(t):{shapes:this.shapes};if(s.shapes.length>0)for(n=s.shapes[0],r=n.bounds(ee),o=1;s.shapes.length>o;o++)n=s.shapes[o],i=n.bounds(ee),e===!0&&(i.x-=n._rotationOffset.x,i.y-=n._rotationOffset.y),r=r.union(i);return r},_containerOffset:function(){var t=this.element.offset();return this.toolBar&&(t.top+=this.toolBar.element.outerHeight()),t},documentToView:function(t){var e=this._containerOffset();return new Q(t.x-e.left,t.y-e.top)},viewToDocument:function(t){var e=this._containerOffset();return new Q(t.x+e.left,t.y+e.top)},viewToModel:function(t){return this._transformWithMatrix(t,this._matrixInvert)},modelToView:function(t){return this._transformWithMatrix(t,this._matrix)},modelToLayer:function(t){return this._transformWithMatrix(t,this._layerMatrix)},layerToModel:function(t){return this._transformWithMatrix(t,this._layerMatrixInvert)},documentToModel:function(t){var e=this.documentToView(t);return this.canvas.translate||(e.x=e.x+this.scroller.scrollLeft,e.y=e.y+this.scroller.scrollTop),this.viewToModel(e)},modelToDocument:function(t){return this.viewToDocument(this.modelToView(t))},_transformWithMatrix:function(t,e){var i,n,o=t;return t instanceof Q?e&&(o=e.apply(t)):(i=this._transformWithMatrix(t.topLeft(),e),n=this._transformWithMatrix(t.bottomRight(),e),o=G.fromPoints(i,n)),o},setDataSource:function(t){this.options.dataSource=t,this._dataSource(),this.options.autoBind&&this.dataSource.fetch()},setConnectionsDataSource:function(t){this.options.connectionsDataSource=t,this._connectionDataSource(),this.options.autoBind&&this.connectionsDataSource.fetch()},layout:function(t){var e,i,n,o,r;switch(this._layouting=!0,ut(t)&&(t=this.options.layout),e=ut(t)||ut(t.type)?"Tree":t.type,e.toLowerCase()){case"tree":i=new B.TreeLayout(this);break;case"layered":i=new B.LayeredLayout(this);break;case"forcedirected":case"force":case"spring":case"springembedder":i=new B.SpringLayout(this);break;default:throw"Layout algorithm '"+e+"' is not supported."}n=new B.LayoutState(this),o=i.layout(t),o&&(r=new B.LayoutUndoUnit(n,o,t?t.animate:null),this.undoRedoService.add(r)),this._layouting=!1,this._redrawConnections()},getShapeById:function(t){var e;return(e=rt.first(this.shapes,function(e){return e.visual.id===t}))?e:e=rt.first(this.connections,function(e){return e.visual.id===t})},_extendLayoutOptions:function(t){t.layout&&(t.layout=R(B.LayoutBase.fn.defaultOptions||{},t.layout))},_selectionChanged:function(t,e){(t.length||e.length)&&this.trigger(Rt,{selected:t,deselected:e})},_getValidZoom:function(t){return wt.min(wt.max(t,this.options.zoomMin),this.options.zoomMax)},_panTransform:function(t){var e=this,i=t||e._pan;e.canvas.translate?(e.scroller.scrollTo(i.x,i.y),e._zoomMainLayer()):(e._storePan(i),e._transformMainLayer())},_finishPan:function(){this.trigger(Ft,{total:this._pan,delta:Number.NaN})},_storePan:function(t){this._pan=t,this._storeViewMatrix()},_zoomMainLayer:function(){var t=this._zoom,e=new j(0,0,t,t);e.render(this.mainLayer),this._storeLayerMatrix(e),this._storeViewMatrix()},_transformMainLayer:function(){var t=this._pan,e=this._zoom,i=new j(t.x,t.y,e,e);i.render(this.mainLayer),this._storeLayerMatrix(i),this._storeViewMatrix()},_storeLayerMatrix:function(t){this._layerMatrix=t.toMatrix(),this._layerMatrixInvert=t.invert().toMatrix()},_storeViewMatrix:function(){var t=this._pan,e=this._zoom,i=new j(t.x,t.y,e,e);this._matrix=i.toMatrix(),this._matrixInvert=i.invert().toMatrix()},_toIndex:function(t,e){var i=this._getDiagramItems(t);this.mainLayer.toIndex(i.visuals,e),this._fixOrdering(i,!1)},_fixOrdering:function(t,e){var i,n,o=e?this.shapes.length-1:0,r=e?this.connections.length-1:0;for(i=0;t.shapes.length>i;i++)n=t.shapes[i],rt.remove(this.shapes,n),rt.insert(this.shapes,n,o);for(i=0;t.cons.length>i;i++)n=t.cons[i],rt.remove(this.connections,n),rt.insert(this.connections,n,r)},_getDiagramItems:function(t){var e,i,n={},o=t;for(n.visuals=[],n.shapes=[],n.cons=[],t?pt(t)||(o=[t]):o=this._selectedItems.slice(),e=0;o.length>e;e++)i=o[e],i instanceof y?(n.shapes.push(i),n.visuals.push(i.visual)):i instanceof x&&(n.cons.push(i),n.visuals.push(i.visual));return n},_removeItem:function(t,e,i){t.select(!1),t instanceof y?(this._removeShapeDataItem(t),this._removeShape(t,e,i)):t instanceof x&&(this._removeConnectionDataItem(t),this._removeConnection(t,e)),this.mainLayer.remove(t.visual)},_removeShape:function(t,e,i){var n,o,r,s,a=[],l=[];for(this.toolService._removeHover(),e&&this.undoRedoService.addCompositeItem(new q(t)),rt.remove(this.shapes,t),this._shapesQuadTree.remove(t),n=0;t.connectors.length>n;n++)for(r=t.connectors[n],s=0;r.connections.length>s;s++)o=r.connections[s],i&&D.inArray(o,i)||(o.sourceConnector==r?a.push(o):o.targetConnector==r&&l.push(o));for(n=0;a.length>n;n++)a[n].source(null,e),a[n].updateModel();for(n=0;l.length>n;n++)l[n].target(null,e),l[n].updateModel()},_removeConnection:function(t,e){t.sourceConnector&&rt.remove(t.sourceConnector.connections,t),t.targetConnector&&rt.remove(t.targetConnector.connections,t),e&&this.undoRedoService.addCompositeItem(new $(t)),rt.remove(this.connections,t)},_removeDataItems:function(t,e){var i,n,o,r;for(t=pt(t)?t:[t];t.length;)if(i=t.shift(),o=this._dataMap[i.uid],o&&(this._removeShapeConnections(o),this._removeItem(o,!1),delete this._dataMap[i.uid],e&&i.hasChildren&&i.loaded()))for(n=i.children.data(),r=0;n.length>r;r++)t.push(n[r])},_removeShapeConnections:function(t){var e,i=t.connections();if(i)for(e=0;i.length>e;e++)this._removeItem(i[e],!1)},_addDataItem:function(t,e){var i,n;if(ft(t))return(i=this._dataMap[t.id])?i:(n=R({},this.options.shapeDefaults),n.dataItem=t,i=new y(n,this),this.addShape(i,e!==!1),this._dataMap[t.id]=i,i)},_addDataItemByUid:function(t){var e,i;if(ft(t))return(e=this._dataMap[t.uid])?e:(i=R({},this.options.shapeDefaults),i.dataItem=t,e=new y(i,this),this.addShape(e),this._dataMap[t.uid]=e,e)},_addDataItems:function(t,e){var i,n,o,r,s;for(n=0;t.length>n;n++)i=t[n],o=this._addDataItemByUid(i),r=this._addDataItemByUid(e),r&&!this.connected(r,o)&&(s=this.connect(r,o))},_refreshSource:function(t){var e,i,n=this,o=t.node,r=t.action,s=t.items,a=n.options;if(!t.field){if("remove"==r)this._removeDataItems(t.items,!0);else for(r&&"itemloaded"!==r||this._bindingRoots||(this._bindingRoots=!0,i=!0),r||o||n.clear(),this._addDataItems(s,o),e=0;s.length>e;e++)s[e].load();a.layout&&(i||"remove"==r||"add"==r)&&n.layout(a.layout),i&&(this.trigger("dataBound"),this._bindingRoots=!1)}},_mouseDown:function(t){var e=this._calculatePosition(t);1==t.which&&this.toolService.start(e,this._meta(t))&&(this._destroyToolBar(),t.preventDefault())},_addItem:function(t){t instanceof y?this.addShape(t):t instanceof x&&this.addConnection(t)},_mouseUp:function(t){var e=this._calculatePosition(t);1==t.which&&this.toolService.end(e,this._meta(t))&&(this._createToolBar(),t.preventDefault())},_createToolBar:function(){var t,e,i,n,o,r,s,a,l,c=this.toolService.diagram;this.singleToolBar||1!==c.select().length||(t=c.select()[0],t&&t.options.editable!==!1&&(e=t.options.editable,i=e.tools,this._isEditable&&0===i.length&&(t instanceof y?i=["edit","rotateClockwise","rotateAnticlockwise"]:t instanceof x&&(i=["edit"]),e&&e.remove!==!1&&i.push("delete")),i&&i.length&&(n=20,this.singleToolBar=new k(c,{tools:i,click:L(this._toolBarClick,this),modal:!0}),r=this.singleToolBar._popup.element.outerWidth(),s=this.singleToolBar._popup.element.outerHeight(),t instanceof y?(a=this.modelToView(t.bounds(ee)),o=Q(a.x,a.y).minus(Q((r-a.width)/2,s+n))):t instanceof x&&(l=this.modelToView(t.bounds()),o=Q(l.x,l.y).minus(Q((r-l.width-20)/2,s+n))),o?(this.canvas.translate||(o=o.minus(Q(this.scroller.scrollLeft,this.scroller.scrollTop))),o=this.viewToDocument(o),o=Q(wt.max(o.x,0),wt.max(o.y,0)),this.singleToolBar.showAt(o)):this._destroyToolBar())))},_toolBarClick:function(t){this.trigger("toolBarClick",t),this._destroyToolBar()},_mouseMove:function(t){if(!this.pauseMouseHandlers){var e=this._calculatePosition(t);0!==t.which&&1!=t.which||!this.toolService.move(e,this._meta(t))||t.preventDefault()}},_keydown:function(t){this.toolService.keyDown(t.keyCode,this._meta(t))&&t.preventDefault()},_wheel:function(t){var e=i(t),n=this._calculatePosition(t),o=R(this._meta(t),{delta:e});this.toolService.wheel(n,o)&&t.preventDefault()},_meta:function(t){return{ctrlKey:t.ctrlKey,metaKey:t.metaKey,altKey:t.altKey,shiftKey:t.shiftKey}},_calculatePosition:function(t){var i=t.pageX===e?t.originalEvent:t,n=new Q(i.pageX,i.pageY),o=this.documentToModel(n);return o},_normalizePointZoom:function(t){return t.times(1/this.zoom())},_initialize:function(){this.shapes=[],this._selectedItems=[],this.connections=[],this._dataMap={},this._connectionsDataMap={},this._inactiveShapeItems=new h,this._deferredConnectionUpdates=[],this.undoRedoService=new J({undone:this._syncHandler,redone:this._syncHandler}),this.id=B.randomId()},_fetchFreshData:function(){var t=this;t._dataSource(),t._isEditable&&t._connectionDataSource(),t.options.autoBind&&(t._isEditable?(this._loadingShapes=!0,this._loadingConnections=!0,t.dataSource.fetch(),t.connectionsDataSource.fetch()):t.dataSource.fetch())},_dataSource:function(){var t,e;ft(this.options.connectionsDataSource)?(this._isEditable=!0,t=this.options.dataSource||{},e=pt(t)?{data:t}:t,this.dataSource&&this._shapesRefreshHandler?this.dataSource.unbind("change",this._shapesRefreshHandler).unbind("requestStart",this._shapesRequestStartHandler).unbind("error",this._shapesErrorHandler):(this._shapesRefreshHandler=L(this._refreshShapes,this),this._shapesRequestStartHandler=L(this._shapesRequestStart,this),this._shapesErrorHandler=L(this._error,this)),this.dataSource=kendo.data.DataSource.create(e).bind("change",this._shapesRefreshHandler).bind("requestStart",this._shapesRequestStartHandler).bind("error",this._shapesErrorHandler)):(this._treeDataSource(),this._isEditable=!1)},_connectionDataSource:function(){var t,e=this.options.connectionsDataSource;e&&(t=pt(e)?{data:e}:e,this.connectionsDataSource&&this._connectionsRefreshHandler?this.connectionsDataSource.unbind("change",this._connectionsRefreshHandler).unbind("requestStart",this._connectionsRequestStartHandler).unbind("error",this._connectionsErrorHandler):(this._connectionsRefreshHandler=L(this._refreshConnections,this),this._connectionsRequestStartHandler=L(this._connectionsRequestStart,this),this._connectionsErrorHandler=L(this._connectionsError,this)),this.connectionsDataSource=kendo.data.DataSource.create(t).bind("change",this._connectionsRefreshHandler).bind("requestStart",this._connectionsRequestStartHandler).bind("error",this._connectionsErrorHandler))},_shapesRequestStart:function(t){"read"==t.type&&(this._loadingShapes=!0)},_connectionsRequestStart:function(t){"read"==t.type&&(this._loadingConnections=!0)},_error:function(){this._loadingShapes=!1},_connectionsError:function(){this._loadingConnections=!1},_refreshShapes:function(t){"remove"===t.action?this._shouldRefresh()&&this._removeShapes(t.items):"itemchange"===t.action?this._shouldRefresh()&&this._updateShapes(t.items,t.field):"add"===t.action?this._inactiveShapeItems.add(t.items):"sync"===t.action?this._syncShapes(t.items):this.refresh()},_shouldRefresh:function(){return!this._suspended},_suspendModelRefresh:function(){this._suspended=(this._suspended||0)+1},_resumeModelRefresh:function(){this._suspended=wt.max((this._suspended||0)-1,0)},refresh:function(){this._loadingShapes=!1,this._loadingConnections||this._rebindShapesAndConnections()},_rebindShapesAndConnections:function(){this.clear(),this._addShapes(this.dataSource.view()),this.connectionsDataSource&&this._addConnections(this.connectionsDataSource.view(),!1),this.options.layout?this.layout(this.options.layout):this._redrawConnections(),this.trigger("dataBound")},refreshConnections:function(){this._loadingConnections=!1,this._loadingShapes||this._rebindShapesAndConnections()},_redrawConnections:function(){var t,e=this.connections;for(t=0;e.length>t;t++)e[t].refresh()},_removeShapes:function(t){var e,i,n=this._dataMap;for(i=0;t.length>i;i++)e=t[i],n[e.id]&&(this.remove(n[e.id],!1),n[e.id]=null)},_syncShapes:function(){var t=this,e=t._inactiveShapeItems;e.forEach(function(i){var n=i.dataItem,o=i.element;n.isNew()||(o?(o._setOptionsFromModel(),t.addShape(o,i.undoable),t._dataMap[n.id]=o):t._addDataItem(n),i.activate(),e.remove(n))})},_updateShapes:function(t,e){var i,n,o;for(i=0;t.length>i;i++)n=t[i],o=this._dataMap[n.id],o&&o.updateOptionsFromModel(n,e)},_addShapes:function(t){for(var e=0;t.length>e;e++)this._addDataItem(t[e],!1)},_refreshConnections:function(t){"remove"===t.action?this._shouldRefresh()&&this._removeConnections(t.items):"add"===t.action?this._addConnections(t.items):"sync"===t.action||("itemchange"===t.action?this._shouldRefresh()&&this._updateConnections(t.items):this.refreshConnections());
},_removeConnections:function(t){for(var e=0;t.length>e;e++)this.remove(this._connectionsDataMap[t[e].uid],!1),this._connectionsDataMap[t[e].uid]=null},_updateConnections:function(t){var e,i,n;for(e=0;t.length>e;e++)i=t[e],n=this._connectionsDataMap[i.uid],n.updateOptionsFromModel(i)},_addConnections:function(t,e){var i,n,o=t.length;for(i=0;o>i;i++)n=t[i],this._addConnectionDataItem(n,e)},_addConnectionDataItem:function(t,e){var i,n,o,r;this._connectionsDataMap[t.uid]||(i=this._validateConnector(t.from),ft(i)&&null!==i||(i=new Q(t.fromX,t.fromY)),n=this._validateConnector(t.to),ft(n)&&null!==n||(n=new Q(t.toX,t.toY)),ft(i)&&ft(n)&&(o=R({},this.options.connectionDefaults),o.dataItem=t,r=new x(i,n,o),this._connectionsDataMap[t.uid]=r,this.addConnection(r,e)))},_validateConnector:function(t){var e;return ft(t)&&null!==t&&(e=this._dataMap[t]),e},_treeDataSource:function(){var t=this,e=t.options,i=e.dataSource;i=pt(i)?{data:i}:i,i.fields||(i.fields=[{field:"text"},{field:"url"},{field:"spriteCssClass"},{field:"imageUrl"}]),t.dataSource&&t._refreshHandler&&t._unbindDataSource(),t._refreshHandler=L(t._refreshSource,t),t._errorHandler=L(t._error,t),t.dataSource=F.create(i).bind(bt,t._refreshHandler).bind(Dt,t._errorHandler)},_unbindDataSource:function(){var t=this;t.dataSource.unbind(bt,t._refreshHandler).unbind(Dt,t._errorHandler)},_adorn:function(t,i){i!==e&&t&&(i?(this._adorners.push(t),this.adornerLayer.append(t.visual)):(rt.remove(this._adorners,t),this.adornerLayer.remove(t.visual)))},_showConnectors:function(t,e){e?this._connectorsAdorner.show(t):this._connectorsAdorner.destroy()},_updateAdorners:function(){var t,e,i=this._adorners;for(t=0;i.length>t;t++)e=i[t],e.refreshBounds&&e.refreshBounds(),e.refresh()},_refresh:function(){for(var t=0;this.connections.length>t;t++)this.connections[t].refresh()},_destroyToolBar:function(){this.singleToolBar&&(this.singleToolBar.hide(),this.singleToolBar.destroy(),this.singleToolBar=null)},_destroyGlobalToolBar:function(){this.toolBar&&(this.toolBar.hide(),this.toolBar.destroy(),this.toolBar=null)},exportDOMVisual:function(){var t=this.canvas._viewBox,e=E.transform().translate(-t.x,-t.y),i=new E.Rect([0,0],[t.width,t.height]),n=M.Path.fromRect(i),o=new M.Group({transform:e}),r=new M.Group({clip:n}),s=this.canvas.drawingElement.children[0];return r.append(o),o.children.push(s),r},exportVisual:function(){var t=E.transform().scale(1/this._zoom),e=new M.Group({transform:t}),i=this.mainLayer.drawingElement;return e.children.push(i),e},_syncChanges:function(){this._syncShapeChanges(),this._syncConnectionChanges()},_syncShapeChanges:function(){this.dataSource&&this._isEditable&&this.dataSource.sync()},_syncConnectionChanges:function(){var e=this;e.connectionsDataSource&&e._isEditable&&(t.when.apply(t,e._deferredConnectionUpdates).then(function(){e.connectionsDataSource.sync()}),e.deferredConnectionUpdates=[])}}),D.ExportMixin.extend(b.fn,!0),kendo.PDFMixin&&kendo.PDFMixin.extend(b.fn),k=kendo.Observable.extend({init:function(t,e){kendo.Observable.fn.init.call(this),this.diagram=t,this.options=R({},this.options,e),this._tools=[],this.createToolBar(),this.createTools(),this.appendTools(),this.options.modal&&this.createPopup(),this.bind(this.events,e)},events:["click"],createPopup:function(){this.container=t("
").append(this.element),this._popup=this.container.kendoPopup({}).getKendoPopup()},appendTools:function(){var t,e;for(t=0;this._tools.length>t;t++)e=this._tools[t],(e.buttons&&e.buttons.length||!ft(e.buttons))&&this._toolBar.add(e)},createToolBar:function(){this.element=t("
"),this._toolBar=this.element.kendoToolBar({click:L(this.click,this),resizable:!1}).getKendoToolBar(),this.element.css("border","none")},createTools:function(){for(var t=0;this.options.tools.length>t;t++)this.createTool(this.options.tools[t])},createTool:function(t){var e=(vt(t)?t.name:t)+"Tool";this[e]?this[e](t):this._tools.push(t)},showAt:function(t){this._popup&&this._popup.open(t.x,t.y)},hide:function(){this._popup&&this._popup.close()},newGroup:function(){return{type:"buttonGroup",buttons:[]}},editTool:function(){this._tools.push({spriteCssClass:"k-icon k-i-pencil",showText:"overflow",type:"button",text:"Edit",attributes:this._setAttributes({action:"edit"})})},deleteTool:function(){this._tools.push({spriteCssClass:"k-icon k-i-close",showText:"overflow",type:"button",text:"Delete",attributes:this._setAttributes({action:"delete"})})},rotateAnticlockwiseTool:function(t){this._appendGroup("rotate"),this._rotateGroup.buttons.push({spriteCssClass:"k-icon k-i-rotateccw",showText:"overflow",text:"RotateAnticlockwise",group:"rotate",attributes:this._setAttributes({action:"rotateAnticlockwise",step:t.step})})},rotateClockwiseTool:function(t){this._appendGroup("rotate"),this._rotateGroup.buttons.push({spriteCssClass:"k-icon k-i-rotatecw",attributes:this._setAttributes({action:"rotateClockwise",step:t.step}),showText:"overflow",text:"RotateClockwise",group:"rotate"})},createShapeTool:function(){this._appendGroup("create"),this._createGroup.buttons.push({spriteCssClass:"k-icon k-i-shape",showText:"overflow",text:"CreateShape",group:"create",attributes:this._setAttributes({action:"createShape"})})},createConnectionTool:function(){this._appendGroup("create"),this._createGroup.buttons.push({spriteCssClass:"k-icon k-i-connector",showText:"overflow",text:"CreateConnection",group:"create",attributes:this._setAttributes({action:"createConnection"})})},undoTool:function(){this._appendGroup("history"),this._historyGroup.buttons.push({spriteCssClass:"k-icon k-i-undo",showText:"overflow",text:"Undo",group:"history",attributes:this._setAttributes({action:"undo"})})},redoTool:function(){this._appendGroup("history"),this._historyGroup.buttons.push({spriteCssClass:"k-icon k-i-redo",showText:"overflow",text:"Redo",group:"history",attributes:this._setAttributes({action:"redo"})})},_appendGroup:function(t){var e="_"+t+"Group";this[e]||(this[e]=this.newGroup(),this._tools.push(this[e]))},_setAttributes:function(t){var e={};return t.action&&(e[kendo.attr("action")]=t.action),t.step&&(e[kendo.attr("step")]=t.step),e},_getAttributes:function(t){var e,i={},n=t.attr(kendo.attr("action"));return n&&(i.action=n),e=t.attr(kendo.attr("step")),e&&(i.step=e),i},click:function(e){var i=this._getAttributes(t(e.target)),n=i.action;n&&this[n](i),this.trigger("click",this.eventData(n))},eventData:function(t){var e=this.selectedElements(),i=[],n=[];return e instanceof y?i.push(e):n.push(e),{shapes:i,connections:n,action:t}},"delete":function(){var t=this.diagram,e=t._triggerRemove(this.selectedElements());e.length&&(this.diagram.remove(e,!0),this.diagram._syncChanges())},edit:function(){this.diagram.edit(this.selectedElements()[0])},rotateClockwise:function(t){var e=parseFloat(t.step||90);this._rotate(e)},rotateAnticlockwise:function(t){var e=parseFloat(t.step||90);this._rotate(-e)},_rotate:function(t){var e=this.diagram._resizingAdorner;e.angle(e.angle()+t),e.rotate()},selectedElements:function(){return this.diagram.select()},createShape:function(){this.diagram.createShape()},createConnection:function(){this.diagram.createConnection()},undo:function(){this.diagram.undo()},redo:function(){this.diagram.redo()},destroy:function(){this.diagram=null,this.element=null,this.options=null,this._toolBar&&this._toolBar.destroy(),this._popup&&this._popup.destroy()}}),C=kendo.Observable.extend({init:function(t,e){kendo.Observable.fn.init.call(this),this.options=O(!0,{},this.options,e),this.element=t,this.model=this.options.model,this.fields=this._getFields(),this._initContainer(),this.createEditable()},options:{editors:{}},_initContainer:function(){this.wrapper=this.element},createEditable:function(){var t=this.options;this.editable=new kendo.ui.Editable(this.wrapper,{fields:this.fields,target:t.target,clearContainer:!1,model:this.model})},_isEditable:function(t){return this.model.editable&&this.model.editable(t)},_getFields:function(){var t,e,i,n=[],o=this.model.fields;for(t in o)e={},this._isEditable(t)&&(i=this.options.editors[t],i&&(e.editor=i),e.field=t,n.push(e));return n},end:function(){return this.editable.end()},destroy:function(){this.editable.destroy(),this.editable.element.find("["+kendo.attr("container-for")+"]").empty(),this.model=this.wrapper=this.element=this.columns=this.editable=null}}),S=C.extend({init:function(t,e){C.fn.init.call(this,t,e),this.bind(this.events,this.options),this.open()},events:["update","cancel"],options:{window:{modal:!0,resizable:!1,draggable:!0,title:"Edit",visible:!1}},_initContainer:function(){var e,i=this;this.wrapper=t('').attr(kendo.attr("uid"),this.model.uid),e="",this.options.template?(e+=this._renderTemplate(),this.fields=[]):e+=this._renderFields(),e+=this._renderButtons(),this.wrapper.append(t('
').append(e)),this.window=new kendo.ui.Window(this.wrapper.appendTo(this.element),this.options.window),this.window.bind("close",function(t){t.userTriggered&&(t.sender.element.focus(),i._cancelClick(t))}),this._attachButtonEvents()},_renderTemplate:function(){var t=this.options.template;return"string"==typeof t&&(t=window.unescape(t)),t=kendo.template(t)(this.model)},_renderFields:function(){var t,e,i="";for(t=0;this.fields.length>t;t++)e=this.fields[t],i+=''+(e.field||"")+"
",this._isEditable(e.field)&&(i+="
');return i},_renderButtons:function(){var t='';return t+=this._createButton("update"),t+=this._createButton("cancel"),t+="
"},_createButton:function(t){return kendo.template(he)(v[t])},_attachButtonEvents:function(){this._cancelClickHandler=L(this._cancelClick,this),this.window.element.on(kt+_t,"a.k-diagram-cancel",this._cancelClickHandler),this._updateClickHandler=L(this._updateClick,this),this.window.element.on(kt+_t,"a.k-diagram-update",this._updateClickHandler)},_updateClick:function(t){t.preventDefault(),this.trigger("update")},_cancelClick:function(t){t.preventDefault(),this.trigger("cancel")},open:function(){this.window.center().open()},close:function(){this.window.bind("deactivate",L(this.destroy,this)).close()},destroy:function(){this.window.close().destroy(),this.window.element.off(kt+_t,"a.k-diagram-cancel",this._cancelClickHandler),this.window.element.off(kt+_t,"a.k-diagram-update",this._updateClickHandler),this._cancelClickHandler=null,this._editUpdateClickHandler=null,this.window=null,C.fn.destroy.call(this)}}),c.fn=c.prototype={onActivate:function(e){var i=t.Deferred();return this.callbacks.push({callback:e,deferred:i}),i},activate:function(){var t,e,i=this.callbacks;for(e=0;i.length>e;e++)t=this.callbacks[e],t.callback(this.dataItem),t.deferred.resolve();this.callbacks=[]}},h.fn=h.prototype={add:function(t){for(var e=0;t.length>e;e++)this.items[t[e].uid]=new c(t[e])},forEach:function(t){for(var e in this.items)t(this.items[e])},getByUid:function(t){return this.items[t]},remove:function(t){delete this.items[t.uid]}},T=z.extend({init:function(){this.shapes=[]},_add:function(t,e){this.shapes.push({bounds:e,shape:t}),t._quadNode=this},insert:function(t,e){this._add(t,e)},remove:function(t){var e,i=this.shapes,n=i.length;for(e=0;n>e;e++)if(i[e].shape===t){i.splice(e,1);break}},hitTestRect:function(t){var e,i=this.shapes,n=i.length;for(e=0;n>e;e++)if(this._testRect(i[e].shape,t))return!0},_testRect:function(t,e){var i,n=t.rotate().angle,o=t.bounds();return i=n?K.rects(e,o,-n):o.overlaps(e)}}),A=T.extend({init:function(t){T.fn.init.call(this),this.children=[],this.rect=t},inBounds:function(t){var e=this.rect,i=e.bottomRight(),n=t.bottomRight(),o=t.x>=e.x&&t.y>=e.y&&i.x>=n.x&&i.y>=n.y;return o},overlapsBounds:function(t){return this.rect.overlaps(t)},insert:function(t,e){var i,n=!1,o=this.children,r=o.length;if(this.inBounds(e)){if(!r&&4>this.shapes.length)this._add(t,e);else{for(r||this._initChildren(),i=0;o.length>i;i++)if(o[i].insert(t,e)){n=!0;break}n||this._add(t,e)}n=!0}return n},_initChildren:function(){var t,e,i=this.rect,n=this.children,o=this.shapes,r=i.center(),s=i.width/2,a=i.height/2;for(n.push(new A(new G(i.x,i.y,s,a)),new A(new G(r.x,i.y,s,a)),new A(new G(i.x,r.y,s,a)),new A(new G(r.x,r.y,s,a))),e=o.length-1;e>=0;e--)for(t=0;n.length>t;t++)if(n[t].insert(o[e].shape,o[e].bounds)){o.splice(e,1);break}},hitTestRect:function(t){var e,i=this.children,n=i.length,o=!1;if(this.overlapsBounds(t))if(T.fn.hitTestRect.call(this,t))o=!0;else for(e=0;n>e;e++)if(i[e].hitTestRect(t)){o=!0;break}return o}}),P=z.extend({ROOT_SIZE:1e3,init:function(t){var e=L(this._boundsChange,this);t.bind(xt,e),t.bind(Ot,e),this.initRoots()},initRoots:function(){this.rootMap={},this.root=new T},clear:function(){this.initRoots()},_boundsChange:function(t){t.item._quadNode&&t.item._quadNode.remove(t.item),this.insert(t.item)},insert:function(t){var e=t.bounds(ee),i=this.ROOT_SIZE,n=this.getSectors(e),o=n[0][0],r=n[1][0];this.inRoot(n)?this.root.insert(t,e):(this.rootMap[o]||(this.rootMap[o]={}),this.rootMap[o][r]||(this.rootMap[o][r]=new A(new G(o*i,r*i,i,i))),this.rootMap[o][r].insert(t,e))},remove:function(t){t._quadNode&&t._quadNode.remove(t)},inRoot:function(t){return t[0].length>1||t[1].length>1},getSectors:function(t){var e,i,n=this.ROOT_SIZE,o=t.bottomRight(),r=wt.floor(o.x/n),s=wt.floor(o.y/n),a=[[],[]];for(e=wt.floor(t.x/n);r>=e;e++)a[0].push(e);for(i=wt.floor(t.y/n);s>=i;i++)a[1].push(i);return a},hitTestRect:function(t){var e,i,n,o,r,s=this.getSectors(t);if(this.root.hitTestRect(t))return!0;for(e=0;s[0].length>e;e++)for(n=s[0][e],i=0;s[1].length>i;i++)if(o=s[1][i],r=(this.rootMap[n]||{})[o],r&&r.hitTestRect(t))return!0;return!1}}),D.ui.plugin(b),R(B,{Shape:y,Connection:x,Connector:_,DiagramToolBar:k,QuadNode:A,QuadRoot:T,ShapesQuadTree:P,PopupEditor:S})}(window.kendo.jQuery)},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.dataviz.diagram.min",["kendo.data.min","kendo.draganddrop.min","kendo.userevents.min","kendo.mobile.scroller.min","kendo.drawing.min","dataviz/diagram/utils.min","dataviz/diagram/math.min","dataviz/diagram/svg.min","dataviz/diagram/services.min","dataviz/diagram/layout.min","dataviz/diagram/dom.min"],t)}(function(){},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.dataviz.treemap.min",["kendo.data.min","kendo.userevents.min","kendo.dataviz.themes.min"],t)}(function(){return function(t,e){function i(t,e){if(null===e)return e;var i=b(t,!0);return i(e)}function n(t){return typeof t!==E}function o(t,e,i){var n,o,l=a(t),c=a(e),h=u(t)-u(e)<0,d=[];for(d.push(t),n=0;i>n;n++)o={r:r(l.r,c.r,n,i,h),g:r(l.g,c.g,n,i,h),b:r(l.b,c.b,n,i,h)},d.push(s(o));return d.push(e),d}function r(t,e,i,n,o){var r,s=f.min(f.abs(t),f.abs(e)),a=f.max(f.abs(t),f.abs(e)),l=(a-s)/(n+1),c=l*(i+1);return r=o?s+c:a-c}function s(t){return"#"+l(t.r)+l(t.g)+l(t.b)}function a(t){t=t.replace("#","");var e=c(t);return{r:h(e.r),g:h(e.g),b:h(e.b)}}function l(t){var e=f.round(t).toString(16).toUpperCase();return 1===e.length&&(e="0"+e),e}function c(t){var e=t.length,i={};return 3===e?(i.r=t[0],i.g=t[1],i.b=t[2]):(i.r=t.substring(0,2),i.g=t.substring(2,4),i.b=t.substring(4,6)),i}function h(t){return parseInt(t.toString(16),16)}function u(t){var e=0;return t&&(t=a(t),e=f.sqrt(.241*t.r*t.r+.691*t.g*t.g+.068*t.b*t.b)),e}function d(t){var e=f.pow(10,4);return f.round(t*e)/e}var f=Math,p=t.proxy,g=t.isArray,m=window.kendo,v=m.Class,w=m.ui.Widget,_=m.template,y=m.deepExtend,x=m.data.HierarchicalDataSource,b=m.getter,k=m.dataviz,C=".kendoTreeMap",S="change",T="dataBound",A="itemCreated",P=Number.MAX_VALUE,D="mouseover"+C,M="mouseleave"+C,E="undefined",B=w.extend({init:function(e,i){m.destroy(e),t(e).empty(),w.fn.init.call(this,e,i),this.wrapper=this.element,this._initTheme(this.options),this.element.addClass("k-widget k-treemap"),this._setLayout(),this._originalOptions=y({},this.options),this._initDataSource(),this._attachEvents(),m.notify(this,k.ui)},options:{name:"TreeMap",theme:"default",autoBind:!0,textField:"text",valueField:"value",colorField:"color"},events:[T,A],_initTheme:function(t){var e=this,i=k.ui.themes||{},n=((t||{}).theme||"").toLowerCase(),o=(i[n]||{}).treeMap;e.options=y({},o,t)},_attachEvents:function(){this.element.on(D,p(this._mouseover,this)).on(M,p(this._mouseleave,this)),this._resizeHandler=p(this.resize,this,!1),m.onResize(this._resizeHandler)},_setLayout:function(){"horizontal"===this.options.type?(this._layout=new L(!1),this._view=new R(this,this.options)):"vertical"===this.options.type?(this._layout=new L(!0),this._view=new R(this,this.options)):(this._layout=new I,this._view=new z(this,this.options))},_initDataSource:function(){var t=this,e=t.options,i=e.dataSource;t._dataChangeHandler=p(t._onDataChange,t),t.dataSource=x.create(i).bind(S,t._dataChangeHandler),i&&t.options.autoBind&&t.dataSource.fetch()},setDataSource:function(t){var e=this;e.dataSource.unbind(S,e._dataChangeHandler),e.dataSource=t.bind(S,e._dataChangeHandler),t&&e.options.autoBind&&e.dataSource.fetch()},_onDataChange:function(t){var e,i,n,o,r=t.node,s=t.items,a=this.options;if(r){if(s.length){for(n=this._getByUid(r.uid),n.children=[],s=new m.data.Query(s)._sortForGrouping(a.valueField,"desc"),i=0;s.length>i;i++)e=s[i],n.children.push(this._wrapItem(e));o=this._view.htmlSize(n),this._layout.compute(n.children,n.coord,o),this._setColors(n.children),this._view.render(n)}}else this._cleanItems(),this.element.empty(),e=this._wrapItem(s[0]),this._layout.createRoot(e,this.element.outerWidth(),this.element.outerHeight(),"vertical"===this.options.type),this._view.createRoot(e),this._root=e,this._colorIdx=0;for(i=0;s.length>i;i++)s[i].load();r&&this.trigger(T,{node:r})},_cleanItems:function(){var t=this;t.angular("cleanup",function(){return{elements:t.element.find(".k-leaf div,.k-treemap-title,.k-treemap-title-vertical")}})},_setColors:function(t){var e,i,r,s,a=this.options.colors,l=this._colorIdx,c=a[l%a.length];for(g(c)&&(e=o(c[0],c[1],t.length)),r=!1,s=0;t.length>s;s++)i=t[s],n(i.color)||(i.color=e?e[s]:c),i.dataItem.hasChildren||(r=!0);r&&this._colorIdx++},_contentSize:function(t){this.view.renderHeight(t)},_wrapItem:function(t){var e={};return n(this.options.valueField)&&(e.value=i(this.options.valueField,t)),n(this.options.colorField)&&(e.color=i(this.options.colorField,t)),n(this.options.textField)&&(e.text=i(this.options.textField,t)),e.level=t.level(),e.dataItem=t,e},_getByUid:function(t){for(var e,i=[this._root];i.length;){if(e=i.pop(),e.dataItem.uid===t)return e;e.children&&(i=i.concat(e.children))}},dataItem:function(e){var i=t(e).attr(m.attr("uid")),n=this.dataSource;return n&&n.getByUid(i)},findByUid:function(t){return this.element.find(".k-treemap-tile["+m.attr("uid")+"='"+t+"']")},_mouseover:function(e){var i=t(e.target);i.hasClass("k-leaf")&&(this._removeActiveState(),i.removeClass("k-state-hover").addClass("k-state-hover"))},_removeActiveState:function(){this.element.find(".k-state-hover").removeClass("k-state-hover")},_mouseleave:function(){this._removeActiveState()},destroy:function(){w.fn.destroy.call(this),this.element.off(C),this.dataSource&&this.dataSource.unbind(S,this._dataChangeHandler),this._root=null,m.unbindResize(this._resizeHandler),m.destroy(this.element)},items:function(){return t()},getSize:function(){return m.dimensions(this.element)},_resize:function(){var t,e,i=this._root;i&&(t=this.element,e=t.children(),i.coord.width=t.outerWidth(),i.coord.height=t.outerHeight(),e.css({width:i.coord.width,height:i.coord.height}),this._resizeItems(i,e))},_resizeItems:function(t,e){var i,n,o,r;if(t.children&&t.children.length)for(i=e.children(".k-treemap-wrap").children(),this._layout.compute(t.children,t.coord,{text:this._view.titleSize(t,e)}),r=0;t.children.length>r;r++)n=t.children[r],o=i.filter("["+m.attr("uid")+"='"+n.dataItem.uid+"']"),this._view.setItemSize(n,o),this._resizeItems(n,o)},setOptions:function(t){var i=t.dataSource;t.dataSource=e,this._originalOptions=y(this._originalOptions,t),this.options=y({},this._originalOptions),this._setLayout(),this._initTheme(this.options),w.fn._setEvents.call(this,t),i&&this.setDataSource(x.create(i)),this.options.autoBind&&this.dataSource.fetch()}}),I=v.extend({createRoot:function(t,e,i){t.coord={width:e,height:i,top:0,left:0}},leaf:function(t){return!t.children},layoutChildren:function(t,e){var i,n,o,r,s=e.width*e.height,a=0,l=[];for(i=0;t.length>i;i++)l[i]=parseFloat(t[i].value),a+=l[i];for(i=0;l.length>i;i++)t[i].area=s*l[i]/a;n=this.layoutHorizontal()?e.height:e.width,o=[t[0]],r=t.slice(1),this.squarify(r,o,n,e)},squarify:function(t,e,i,n){this.computeDim(t,e,i,n)},computeDim:function(t,i,n,o){var r,s,a;return t.length+i.length==1?(r=1==t.length?t:i,this.layoutLast(r,n,o),e):(t.length>=2&&0===i.length&&(i=[t[0]],t=t.slice(1)),0===t.length?(i.length>0&&this.layoutRow(i,n,o),e):(s=t[0],this.worstAspectRatio(i,n)>=this.worstAspectRatio([s].concat(i),n)?this.computeDim(t.slice(1),i.concat([s]),n,o):(a=this.layoutRow(i,n,o),this.computeDim(t,[],a.dim,a)),e))},layoutLast:function(t,e,i){t[0].coord=i},layoutRow:function(t,e,i){return this.layoutHorizontal()?this.layoutV(t,e,i):this.layoutH(t,e,i)},orientation:"h",layoutVertical:function(){return"v"===this.orientation},layoutHorizontal:function(){return"h"===this.orientation},layoutChange:function(){this.orientation=this.layoutVertical()?"h":"v"},worstAspectRatio:function(t,e){var i,n,o,r,s;if(!t||0===t.length)return P;for(i=0,n=0,o=P,r=0;t.length>r;r++)s=t[r].area,i+=s,o=s>o?o:s,n=n>s?n:s;return f.max(e*e*n/(i*i),i*i/(e*e*o))},compute:function(t,e,i){if(e.width>=e.height&&this.layoutHorizontal()||this.layoutChange(),t&&t.length>0){var n={width:e.width,height:e.height-i.text,top:0,left:0};this.layoutChildren(t,n)}},layoutV:function(t,e,i){var n,o,r,s=this._totalArea(t),a=0;for(e=d(s/e),n=0;t.length>n;n++)o=d(t[n].area/e),t[n].coord={height:o,width:e,top:i.top+a,left:i.left},a+=o;return r={height:i.height,width:i.width-e,top:i.top,left:i.left+e},r.dim=f.min(r.width,r.height),r.dim!=r.height&&this.layoutChange(),r},layoutH:function(t,e,i){var n,o,r=this._totalArea(t),s=d(r/e),a=i.top,l=0;for(n=0;t.length>n;n++)t[n].coord={height:s,width:d(t[n].area/s),top:a,left:i.left+l},l+=t[n].coord.width;return o={height:i.height-s,width:i.width,top:i.top+s,left:i.left},o.dim=f.min(o.width,o.height),o.dim!=o.width&&this.layoutChange(),o},_totalArea:function(t){var e,i=0;for(e=0;t.length>e;e++)i+=t[e].area;return i}}),z=v.extend({init:function(e,i){this.options=y({},this.options,i),this.treeMap=e,this.element=t(e.element),this.offset=0},titleSize:function(t,e){var i=e.children(".k-treemap-title");return i.height()},htmlSize:function(t){var e,i,n=this._getByUid(t.dataItem.uid),o={text:0};return t.children&&(this._clean(n),e=this._getText(t),e&&(i=this._createTitle(t),n.append(i),this._compile(i,t.dataItem),o.text=i.height()),n.append(this._createWrap()),this.offset=(n.outerWidth()-n.innerWidth())/2),o},_compile:function(t,e){this.treeMap.angular("compile",function(){return{elements:t,data:[{dataItem:e}]}})},_getByUid:function(t){return this.element.find(".k-treemap-tile["+m.attr("uid")+"='"+t+"']")},render:function(t){var e,i,n,o,r=this._getByUid(t.dataItem.uid),s=t.children;if(s)for(e=r.find(".k-treemap-wrap"),i=0;s.length>i;i++)n=s[i],o=this._createLeaf(n),e.append(o),this._compile(o.children(),n.dataItem),this.treeMap.trigger(A,{element:o})},createRoot:function(t){var e=this._createLeaf(t);this.element.append(e),this._compile(e.children(),t.dataItem),this.treeMap.trigger(A,{element:e})},_clean:function(t){this.treeMap.angular("cleanup",function(){return{elements:t.children(":not(.k-treemap-wrap)")}}),t.css("background-color",""),t.removeClass("k-leaf"),t.removeClass("k-inverse"),t.empty()},_createLeaf:function(e){return this._createTile(e).css("background-color",e.color).addClass("k-leaf").toggleClass("k-inverse",this._tileColorBrightness(e)>180).append(t("
").html(this._getText(e)))},_createTile:function(e){var i=t("
");return this.setItemSize(e,i),n(e.dataItem)&&n(e.dataItem.uid)&&i.attr(m.attr("uid"),e.dataItem.uid),i},_itemCoordinates:function(t){var e={width:t.coord.width,height:t.coord.height,left:t.coord.left,top:t.coord.top};return e.width+=e.left&&this.offset?2*this.offset:this.offset,e.height+=e.top?2*this.offset:this.offset,e},setItemSize:function(t,e){var i=this._itemCoordinates(t);e.css({width:i.width,height:i.height,left:i.left,top:i.top})},_getText:function(t){var e=t.text;return this.options.template&&(e=this._renderTemplate(t)),e},_renderTemplate:function(t){var e=_(this.options.template);return e({dataItem:t.dataItem,text:t.text})},_createTitle:function(e){return t("
").append(t("
").html(this._getText(e)))},_createWrap:function(){return t("
")},_tileColorBrightness:function(t){return u(t.color)}}),L=v.extend({createRoot:function(t,e,i,n){t.coord={width:e,height:i,top:0,left:0},t.vertical=n},init:function(t){this.vertical=t,this.quotient=t?1:0},compute:function(t,e,i){var n,o,r;t.length>0&&(n=e.width,o=e.height,this.vertical?o-=i.text:n-=i.text,r={width:n,height:o,top:0,left:0},this.layoutChildren(t,r))},layoutChildren:function(t,e){var i,n,o=e.width*e.height,r=0,s=[];for(i=0;t.length>i;i++)n=t[i],s[i]=parseFloat(t[i].value),r+=s[i],n.vertical=this.vertical;for(i=0;s.length>i;i++)t[i].area=o*s[i]/r;this.sliceAndDice(t,e)},sliceAndDice:function(t,e){var i=this._totalArea(t);t[0].level%2===this.quotient?this.layoutHorizontal(t,e,i):this.layoutVertical(t,e,i)},layoutHorizontal:function(t,e,i){var n,o,r,s=0;for(n=0;t.length>n;n++)o=t[n],r=o.area/(i/e.width),o.coord={height:e.height,width:r,top:e.top,left:e.left+s},s+=r},layoutVertical:function(t,e,i){var n,o,r,s=0;for(n=0;t.length>n;n++)o=t[n],r=o.area/(i/e.height),o.coord={height:r,width:e.width,top:e.top+s,left:e.left},s+=r},_totalArea:function(t){var e,i=0;for(e=0;t.length>e;e++)i+=t[e].area;return i}}),R=z.extend({htmlSize:function(t){var e,i,n=this._getByUid(t.dataItem.uid),o={text:0,offset:0};return t.children&&(this._clean(n),e=this._getText(t),e&&(i=this._createTitle(t),n.append(i),this._compile(i,t.dataItem),o.text=t.vertical?i.height():i.width()),n.append(this._createWrap()),this.offset=(n.outerWidth()-n.innerWidth())/2),o},titleSize:function(t,e){var i;return i=t.vertical?e.children(".k-treemap-title").height():e.children(".k-treemap-title-vertical").width()},_createTitle:function(e){var i;return i=t(e.vertical?"
":"
"),i.append(t("
").html(this._getText(e)))}});k.ui.plugin(B)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.angular.min",["kendo.core.min"],t)}(function(){return function(t,e,i){"use strict";function n(t){var e=C;try{return C=function(t){return t()},t()}finally{C=e}}function o(e,n,o,c,h,m){function v(){var i,m,v,w,_,k,C;return o.kRebind&&(i=t(t(n)[0].cloneNode(!0))),S=r(e,n,o,c,b).options,n.is("select")&&!function(e){if(e.length>0){var i=t(e[0]);!/\S/.test(i.text())&&/^\?/.test(i.val())&&i.remove()}}(n[0].options),m=b.call(n,A=S).data(c),l(m,e,o,c,h),e.$emit("kendoWidgetCreated",m),v=f(e,m),o.kRebind&&g(m,e,n,i,o.kRebind,v,o),o.kNgDisabled&&(w=o.kNgDisabled,_=e.$eval(w),_&&m.enable(!_),s(m,e,n,w)),o.kNgReadonly&&(k=o.kNgReadonly,C=e.$eval(k),C&&m.readonly(C),a(m,e,n,k)),o.kNgModel&&d(m,e,o.kNgModel),y&&u(m,e,n,y,x),m&&p(m,n),m}var w,_,y,x,b,k,S,T,P,D,M,E,B,I;if(!(n instanceof jQuery))throw Error("The Kendo UI directives require jQuery to be available before AngularJS. Please include jquery before angular in the document.");if(w=o.kNgDelay,_=e.$eval(w),m=m||[],y=m[0],x=m[1],b=t(n)[c],!b)return window.console.error("Could not find: "+c),null;if(k=r(e,n,o,c,b),S=k.options,k.unresolved.length){for(T=[],P=0,D=k.unresolved.length;D>P;P++)M=k.unresolved[P],E=t.Deferred(function(t){var n=e.$watch(M.path,function(e){e!==i&&(n(),t.resolve())})}).promise(),T.push(E);return t.when.apply(null,T).then(v),i}return w&&!_?(B=e.$root||e,I=function(){var t=e.$watch(w,function(e){e!==i&&(t(),n.removeAttr(o.$attr.kNgDelay),w=null,C(v))})},/^\$(digest|apply)$/.test(B.$$phase)?I():e.$apply(I),i):v()}function r(n,o,r,s,a){function l(t,o){var r=e.copy(n.$eval(o));r===i?p.push({option:t,path:o}):c[t]=r}var c,h,u,d,f=s.replace(/^kendo/,""),p=[],g=r.kOptions||r.options,m=n.$eval(g);return g&&m===i&&p.push({option:"options",path:g}),c=e.extend({},r.defaultOptions,m),h=a.widget.prototype.options,u=a.widget.prototype.events,t.each(r,function(t,e){var i,n,o,r;"source"!==t&&"kDataSource"!==t&&"kScopeField"!==t&&"scopeField"!==t&&(i="data"+t.charAt(0).toUpperCase()+t.slice(1),0===t.indexOf("on")&&(n=t.replace(/^on./,function(t){return t.charAt(2).toLowerCase()}),u.indexOf(n)>-1&&(c[n]=e)),h.hasOwnProperty(i)?l(i,e):h.hasOwnProperty(t)&&!M[t]?l(t,e):D[t]||(o=t.match(/^k(On)?([A-Z].*)/),o&&(r=o[2].charAt(0).toLowerCase()+o[2].slice(1),o[1]&&"kOnLabel"!=t?c[r]=e:("kOnLabel"==t&&(r="onLabel"),l(r,e)))))}),d=r.kDataSource||r.source,d&&(c.dataSource=P(n,o,f,d)),c.$angular=[n],{options:c,unresolved:p}}function s(t,e,n,o){return kendo.ui.PanelBar&&t instanceof kendo.ui.PanelBar||kendo.ui.Menu&&t instanceof kendo.ui.Menu?(T.warn("k-ng-disabled specified on a widget that does not have the enable() method: "+t.options.name),i):(e.$watch(o,function(e,i){e!=i&&t.enable(!e)}),i)}function a(t,e,n,o){return"function"!=typeof t.readonly?(T.warn("k-ng-readonly specified on a widget that does not have the readonly() method: "+t.options.name),i):(e.$watch(o,function(e,i){e!=i&&t.readonly(e)}),i)}function l(t,e,i,n,o){if(i[o]){var r=k(i[o]).assign;if(!r)throw Error(o+" attribute used but expression in it is not assignable: "+i[n]);r(e,t)}}function c(t){return/checkbox|radio/i.test(t.attr("type"))?t.prop("checked"):t.val()}function h(t){return E.test(t[0].tagName)}function u(t,e,n,o,r){var s,a,l,u;t.value&&(s=h(n)?function(){return c(n)}:function(){return t.value()},o.$render=function(){var n=o.$viewValue;n===i&&(n=o.$modelValue),n===i&&(n=null),setTimeout(function(){if(t){var i=e[t.element.attr("k-ng-model")];i&&(n=i),t.options.autoBind!==!1||t.listView.bound()?t.value(n):n&&t.value(n)}},0)},a=!1,h(n)&&n.on("change",function(){a=!0}),l=function(t){return function(){var i;a||(t&&r&&(i=r.$pristine),o.$setViewValue(s()),t&&(o.$setPristine(),i&&r.$setPristine()),w(e))}},t.first("change",l(!1)),kendo.ui.AutoComplete&&t instanceof kendo.ui.AutoComplete||t.first("dataBound",l(!0)),u=s(),isNaN(o.$viewValue)||u==o.$viewValue||(o.$isEmpty(o.$viewValue)?null!=u&&""!==u&&u!=o.$viewValue&&o.$setViewValue(u):t.value(o.$viewValue)),o.$setPristine())}function d(e,n,o){var r,s,a,l,c,h,u,d,f;return"function"!=typeof e.value?(T.warn("k-ng-model specified on a widget that does not have the value() method: "+e.options.name),i):(r=t(e.element).parents("form"),s=n[r.attr("name")],a=k(o),l=a.assign,c=!1,h=kendo.ui.MultiSelect&&e instanceof kendo.ui.MultiSelect,u=function(t){return h?t.length:0},d=u(a(n)),e.$angular_setLogicValue(a(n)),f=function(t,n){t===i&&(t=null),c||t==n&&u(t)==d||(d=u(t),e.$angular_setLogicValue(t))},h?n.$watchCollection(o,f):n.$watch(o,f),e.first("change",function(){c=!0,s&&s.$pristine&&s.$setDirty(),w(n,function(){l(n,e.$angular_getLogicValue()),d=u(a(n))}),c=!1}),i)}function f(t,e){var i=t.$on("$destroy",function(){i(),e&&(e.element&&(e=v(e.element),e&&e.destroy()),e=null)});return i}function p(e,i){function n(){s.disconnect()}function o(){s.observe(t(i)[0],{attributes:!0})}var r,s;window.MutationObserver&&e.wrapper&&(r=[].slice.call(t(i)[0].classList),s=new MutationObserver(function(i){n(),e&&(i.forEach(function(i){var n,o=t(e.wrapper)[0];switch(i.attributeName){case"class":n=[].slice.call(i.target.classList),n.forEach(function(t){r.indexOf(t)<0&&(o.classList.add(t),kendo.ui.ComboBox&&e instanceof kendo.ui.ComboBox&&e.input[0].classList.add(t));
}),r.forEach(function(t){n.indexOf(t)<0&&(o.classList.remove(t),kendo.ui.ComboBox&&e instanceof kendo.ui.ComboBox&&e.input[0].classList.remove(t))}),r=n;break;case"disabled":"function"!=typeof e.enable||e.element.attr("readonly")||e.enable(!t(i.target).attr("disabled"));break;case"readonly":"function"!=typeof e.readonly||e.element.attr("disabled")||e.readonly(!!t(i.target).attr("readonly"))}}),o())}),o(),e.first("destroy",n))}function g(e,i,n,o,r,s,a){var l=i.$watch(r,function(r,c){var h,u,d,f,p;e._muteRebind||r===c||(l(),h=R[e.options.name],h&&h.forEach(function(e){var n=i.$eval(a["k"+e]);n&&o.append(t(n).attr(kendo.toHyphens("k"+e),""))}),u=t(e.wrapper)[0],d=t(e.element)[0],f="Upload"===e.options.name,f&&(n=t(d)),p=n.injector().get("$compile"),e._destroy(),s&&s(),e=null,d&&(u&&u.parentNode.replaceChild(d,u),t(n).replaceWith(o)),p(o)(i))},!0);w(i)}function m(t,i){function n(t,e){x.directive(t,["directiveFactory",function(i){return i.create(e,t)}])}var o,r,s,a,l=i?"Mobile":"";l+=t.fn.options.name,o=l,r="kendo"+l.charAt(0)+l.substr(1).toLowerCase(),l="kendo"+l,s=l.replace(/([A-Z])/g,"-$1"),-1==I.indexOf(l.replace("kendo",""))&&(a=l===r?[l]:[l,r],e.forEach(a,function(t){x.directive(t,function(){return{restrict:"E",replace:!0,template:function(t,e){var i=B[o]||"div",n=e.kScopeField||e.scopeField;return"<"+i+" "+s+(n?'="'+n+'"':"")+">"+t.html()+""+i+">"}}})})),z.indexOf(l.replace("kendo",""))>-1||(n(l,l),r!=l&&n(r,l))}function v(e){return e=t(e),kendo.widgetInstance(e,kendo.ui)||kendo.widgetInstance(e,kendo.mobile.ui)||kendo.widgetInstance(e,kendo.dataviz.ui)}function w(t,e){var i=t.$root||t,n=/^\$(digest|apply)$/.test(i.$$phase);e?n?e():i.$apply(e):n||i.$digest()}function _(e,i){e.$destroy(),i&&t(i).removeData("$scope").removeData("$$kendoScope").removeData("$isolateScope").removeData("$isolateScopeNoTemplate").removeClass("ng-scope")}function y(i,n,o){var r,s,a;if(t.isArray(i))return e.forEach(i,function(t){y(t,n,o)});if("string"==typeof i){for(r=i.split("."),s=kendo;s&&r.length>0;)s=s[r.shift()];if(!s)return L.push([i,n,o]),!1;i=s.prototype}return a=i[n],i[n]=function(){var t=this,e=arguments;return o.apply({self:t,next:function(){return a.apply(t,arguments.length>0?arguments:e)}},e)},!0}var x,b,k,C,S,T,A,P,D,M,E,B,I,z,L,R;e&&e.injector&&(x=e.module("kendo.directives",[]),b=e.injector(["ng"]),k=b.get("$parse"),C=b.get("$timeout"),T=b.get("$log"),P=function(){var t={TreeList:"TreeListDataSource",TreeView:"HierarchicalDataSource",Scheduler:"SchedulerDataSource",PanelBar:"$PLAIN",Menu:"$PLAIN",ContextMenu:"$PLAIN"},e=function(t,e){return"$PLAIN"==e?t:kendo.data[e].create(t)};return function(i,n,o,r){var s=t[o]||"DataSource",a=i.$eval(r),l=e(a,s);return i.$watch(r,function(t){var i,o=v(n);o&&"function"==typeof o.setDataSource&&t!==a&&(i=e(t,s),o.setDataSource(i),a=t)}),l}}(),D={kDataSource:!0,kOptions:!0,kRebind:!0,kNgModel:!0,kNgDelay:!0},M={name:!0,title:!0,style:!0},E=/^(input|select|textarea)$/i,x.factory("directiveFactory",["$compile",function(e){var i,n,r=!1;return S=e,n=function(e,n){return{restrict:"AC",require:["?ngModel","^?form"],scope:!1,controller:["$scope","$attrs","$element",function(t,e){var i=this;i.template=function(t,i){e[t]=kendo.stringify(i)},t.$on("$destroy",function(){i.template=null,i=null})}],link:function(s,a,l,c){var h,u=t(a),d=e.replace(/([A-Z])/g,"-$1");u.attr(d,u.attr("data-"+d)),u[0].removeAttribute("data-"+d),h=o(s,a,l,e,n,c),h&&(i&&clearTimeout(i),i=setTimeout(function(){s.$emit("kendoRendered"),r||(r=!0,t("form").each(function(){var e=t(this).controller("form");e&&e.$setPristine()}))}))}}},{create:n}}]),B={Editor:"textarea",NumericTextBox:"input",DatePicker:"input",DateTimePicker:"input",TimePicker:"input",AutoComplete:"input",ColorPicker:"input",MaskedTextBox:"input",MultiSelect:"input",Upload:"input",Validator:"form",Button:"button",MobileButton:"a",MobileBackButton:"a",MobileDetailButton:"a",ListView:"ul",MobileListView:"ul",TreeView:"ul",Menu:"ul",ContextMenu:"ul",ActionSheet:"ul"},I=["MobileView","MobileDrawer","MobileLayout","MobileSplitView","MobilePane","MobileModalView"],z=["MobileApplication","MobileView","MobileModalView","MobileLayout","MobileActionSheet","MobileDrawer","MobileSplitView","MobilePane","MobileScrollView","MobilePopOver"],e.forEach(["MobileNavBar","MobileButton","MobileBackButton","MobileDetailButton","MobileTabStrip","MobileScrollView","MobileScroller"],function(t){z.push(t),t="kendo"+t,x.directive(t,function(){return{restrict:"A",link:function(e,i,n){o(e,i,n,t,t)}}})}),L=[],kendo.onWidgetRegistered(function(e){L=t.grep(L,function(t){return!y.apply(null,t)}),m(e.widget,"Mobile"==e.prefix)}),y(["ui.Widget","mobile.ui.Widget"],"angular",function(o,r){var s,a=this.self;return"init"==o?(!r&&A&&(r=A),A=null,r&&r.$angular&&(a.$angular_scope=r.$angular[0],a.$angular_init(a.element,r)),i):(s=a.$angular_scope,s&&n(function(){var n,l,c=r(),h=c.elements,u=c.data;if(h.length>0)switch(o){case"cleanup":e.forEach(h,function(e){var i=t(e).data("$$kendoScope");i&&i!==s&&i.$$kendoScope&&_(i,e)});break;case"compile":n=a.element.injector(),l=n?n.get("$compile"):S,e.forEach(h,function(e,n){var o,r;c.scopeFrom?o=c.scopeFrom:(r=u&&u[n],r!==i?(o=t.extend(s.$new(),r),o.$$kendoScope=!0):o=s),t(e).data("$$kendoScope",o),l(e)(o)}),w(s)}}),i)}),y("ui.Widget","$angular_getLogicValue",function(){return this.self.value()}),y("ui.Widget","$angular_setLogicValue",function(t){this.self.value(t)}),y("ui.Select","$angular_getLogicValue",function(){var t=this.self.dataItem(),e=this.self.options.dataValueField;return t?this.self.options.valuePrimitive?e?t[e]:t:t.toJSON():null}),y("ui.Select","$angular_setLogicValue",function(t){var e=this.self,n=e.options,o=n.dataValueField,r=n.text||"";t===i&&(t=""),o&&!n.valuePrimitive&&t&&(r=t[n.dataTextField]||"",t=t[o||n.dataTextField]),e.options.autoBind!==!1||e.listView.bound()?e.value(t):!r&&t&&n.valuePrimitive?e.value(t):e._preselect(t,r)}),y("ui.MultiSelect","$angular_getLogicValue",function(){var e=this.self.dataItems().slice(0),i=this.self.options.dataValueField;return i&&this.self.options.valuePrimitive&&(e=t.map(e,function(t){return t[i]})),e}),y("ui.MultiSelect","$angular_setLogicValue",function(e){var i,n,o,r;null==e&&(e=[]),i=this.self,n=i.options,o=n.dataValueField,r=e,o&&!n.valuePrimitive&&(e=t.map(e,function(t){return t[o]})),n.autoBind!==!1||n.valuePrimitive||i.listView.bound()?i.value(e):i._preselect(r,e)}),y("ui.AutoComplete","$angular_getLogicValue",function(){var t,e,i,n,o,r=this.self.options,s=this.self.value().split(r.separator),a=r.valuePrimitive,l=this.self.dataSource.data(),c=[];for(t=0,e=l.length;e>t;t++)for(i=l[t],n=r.dataTextField?i[r.dataTextField]:i,o=0;s.length>o;o++)if(n===s[o]){c.push(a?n:i.toJSON());break}return c}),y("ui.AutoComplete","$angular_setLogicValue",function(e){null==e&&(e=[]);var n=this.self,o=n.options.dataTextField;o&&!n.options.valuePrimitive&&(e=e.length!==i?t.map(e,function(t){return t[o]}):e[o]),n.value(e)}),y("ui.Widget","$angular_init",function(e,i){var n,o,r,s,a=this.self;if(i&&!t.isArray(i))for(n=a.$angular_scope,o=a.events.length;--o>=0;)r=a.events[o],s=i[r],s&&"string"==typeof s&&(i[r]=a.$angular_makeEventHandler(r,n,s))}),y("ui.Widget","$angular_makeEventHandler",function(t,e,i){return i=k(i),function(t){w(e,function(){i(e,{kendoEvent:t})})}}),y(["ui.Grid","ui.ListView","ui.TreeView"],"$angular_makeEventHandler",function(t,i,n){return"change"!=t?this.next():(n=k(n),function(t){var o,r,s,a,l,c,h,u,d,f=t.sender,p=f.options,g={kendoEvent:t};for(e.isString(p.selectable)&&(o=-1!==p.selectable.indexOf("cell"),r=-1!==p.selectable.indexOf("multiple")),s=g.selected=this.select(),a=g.data=[],l=g.columns=[],h=0;s.length>h;h++)u=o?s[h].parentNode:s[h],d=f.dataItem(u),o?(e.element.inArray(d,a)<0&&a.push(d),c=e.element(s[h]).index(),e.element.inArray(c,l)<0&&l.push(c)):a.push(d);r||(g.dataItem=g.data=a[0],g.angularDataItem=kendo.proxyModelSetters(g.dataItem),g.selected=s[0]),w(i,function(){n(i,g)})})}),y("ui.Grid","$angular_init",function(n,o){if(this.next(),o.columns){var r=t.extend({},kendo.Template,o.templateSettings);e.forEach(o.columns,function(t){!t.field||t.template||t.format||t.values||t.encoded!==i&&!t.encoded||(t.template="#: "+kendo.expr(t.field,r.paramName)+"# ")})}}),y("mobile.ui.ButtonGroup","value",function(t){var e=this.self;return null!=t&&(e.select(e.element.children("li.km-button").eq(t)),e.trigger("change"),e.trigger("select",{index:e.selectedIndex})),e.selectedIndex}),y("mobile.ui.ButtonGroup","_select",function(){this.next(),this.self.trigger("change")}),x.directive("kendoMobileApplication",function(){return{terminal:!0,link:function(t,e,i){o(t,e,i,"kendoMobileApplication","kendoMobileApplication")}}}).directive("kendoMobileView",function(){return{scope:!0,link:{pre:function(t,e,i){i.defaultOptions=t.viewOptions,i._instance=o(t,e,i,"kendoMobileView","kendoMobileView")},post:function(t,e,i){i._instance._layout(),i._instance._scroller()}}}}).directive("kendoMobileDrawer",function(){return{scope:!0,link:{pre:function(t,e,i){i.defaultOptions=t.viewOptions,i._instance=o(t,e,i,"kendoMobileDrawer","kendoMobileDrawer")},post:function(t,e,i){i._instance._layout(),i._instance._scroller()}}}}).directive("kendoMobileModalView",function(){return{scope:!0,link:{pre:function(t,e,i){i.defaultOptions=t.viewOptions,i._instance=o(t,e,i,"kendoMobileModalView","kendoMobileModalView")},post:function(t,e,i){i._instance._layout(),i._instance._scroller()}}}}).directive("kendoMobileSplitView",function(){return{terminal:!0,link:{pre:function(t,e,i){i.defaultOptions=t.viewOptions,i._instance=o(t,e,i,"kendoMobileSplitView","kendoMobileSplitView")},post:function(t,e,i){i._instance._layout()}}}}).directive("kendoMobilePane",function(){return{terminal:!0,link:{pre:function(t,e,i){i.defaultOptions=t.viewOptions,o(t,e,i,"kendoMobilePane","kendoMobilePane")}}}}).directive("kendoMobileLayout",function(){return{link:{pre:function(t,e,i){o(t,e,i,"kendoMobileLayout","kendoMobileLayout")}}}}).directive("kendoMobileActionSheet",function(){return{restrict:"A",link:function(e,i,n){i.find("a[k-action]").each(function(){t(this).attr("data-"+kendo.ns+"action",t(this).attr("k-action"))}),o(e,i,n,"kendoMobileActionSheet","kendoMobileActionSheet")}}}).directive("kendoMobilePopOver",function(){return{terminal:!0,link:{pre:function(t,e,i){i.defaultOptions=t.viewOptions,o(t,e,i,"kendoMobilePopOver","kendoMobilePopOver")}}}}).directive("kendoViewTitle",function(){return{restrict:"E",replace:!0,template:function(t){return""+t.html()+" "}}}).directive("kendoMobileHeader",function(){return{restrict:"E",link:function(t,e){e.addClass("km-header").attr("data-role","header")}}}).directive("kendoMobileFooter",function(){return{restrict:"E",link:function(t,e){e.addClass("km-footer").attr("data-role","footer")}}}).directive("kendoMobileScrollViewPage",function(){return{restrict:"E",replace:!0,template:function(t){return""+t.html()+"
"}}}),e.forEach(["align","icon","rel","transition","actionsheetContext"],function(t){var e="k"+t.slice(0,1).toUpperCase()+t.slice(1);x.directive(e,function(){return{restrict:"A",priority:2,link:function(i,n,o){n.attr(kendo.attr(kendo.toHyphens(t)),i.$eval(o[e]))}}})}),R={TreeMap:["Template"],MobileListView:["HeaderTemplate","Template"],MobileScrollView:["EmptyTemplate","Template"],Grid:["AltRowTemplate","DetailTemplate","RowTemplate"],ListView:["EditTemplate","Template","AltTemplate"],Pager:["SelectTemplate","LinkTemplate"],PivotGrid:["ColumnHeaderTemplate","DataCellTemplate","RowHeaderTemplate"],Scheduler:["AllDayEventTemplate","DateHeaderTemplate","EventTemplate","MajorTimeHeaderTemplate","MinorTimeHeaderTemplate"],TreeView:["Template"],Validator:["ErrorTemplate"]},function(){var t={};e.forEach(R,function(i,n){e.forEach(i,function(e){t[e]||(t[e]=[]),t[e].push("?^^kendo"+n)})}),e.forEach(t,function(t,e){var i="k"+e,n=kendo.toHyphens(i);x.directive(i,function(){return{restrict:"A",require:t,terminal:!0,compile:function(e,o){if(""===o[i]){e.removeAttr(n);var r=e[0].outerHTML;return function(o,s,a,l){for(var c;!c&&l.length;)c=l.shift();c?(c.template(i,r),e.remove()):T.warn(n+" without a matching parent widget found. It can be one of the following: "+t.join(", "))}}}}})})}())}(window.kendo.jQuery,window.angular),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.webcomponents.min",["kendo.core.min"],t)}(function(){return function(t,e,i){function n(t,e){var n=t.getAttribute(e);return null===n?n=i:"null"===n?n=null:"true"===n?n=!0:"false"===n?n=!1:p.test(n)?n=parseFloat(n):d.test(n)&&!f.test(n)&&(n=Function("return ("+n+")")()),n}function o(t,e){var i={};return Object.keys(e).concat("dataSource").forEach(function(e){t.hasAttribute(kendo.toHyphens(e))&&(i[e]=n(t,kendo.toHyphens(e)))}),i}function r(t){var e={};return Object.keys(t).forEach(function(i){"_"!=i[0]&&(e[i]=t[i])}),e}function s(t,e){var i=document.createEvent("CustomEvent");i.initCustomEvent(t,!1,!0,r(e)),this.dispatchEvent(i),i.defaultPrevented&&e.preventDefault()}function a(t,e){var i,n=Object.keys(e);for(i=0;n.length>=i;i++)if("function"==typeof e[n[i]])t[n[i]]||(t[n[i]]=e[n[i]].bind(t.widget));else{if("options"===n[i])continue;t[n[i]]=t[n[i]]||e[n[i]]}}function l(e,i){var n=i.prototype.options,r=Object.create(HTMLElement.prototype);Object.defineProperty(r,"options",{get:function(){return this.widget.options},set:function(i){var n,o,r,s=this.widget;i=t.extend(!0,{},s.options,i),n=t(s.wrapper)[0],o=t(s.element)[0],s._destroy(),r=document.createElement(c[e]||"div"),n&&o&&(n.parentNode.replaceChild(o,n),t(o).replaceWith(r)),s.value&&(i.value=s.value()),s.init(r,i),this.bindEvents()}}),r.bindEvents=function(){i.prototype.events.forEach(function(t){this.widget.bind(t,s.bind(this,t)),this.hasAttribute(h+t)&&this.bind(t,function(e){window[this.getAttribute(h+t)].call(this,e)}.bind(this))}.bind(this))},r.attachedCallback=function(){var r,s=this,l=document.createElement(c[e]||"div");t(l).append(s.childNodes),t(l).attr("class",t(s).attr("class")),t(l).attr("style",t(s).attr("style")),s.appendChild(l),s.widget=new i(l,o(s,n)),r=s.widget;do a(s,r);while(r=Object.getPrototypeOf(r));this.bindEvents()},r.detachedCallback=function(){kendo.destroy(this.element)},kendo.webComponents.push("kendo-"+e),document.registerElement("kendo-"+e,{prototype:r})}var c,h,u,d,f,p;kendo.support.customElements&&!kendo.webComponents.length&&(!e||1!=e.version.major&&!e.injector)&&(c={editor:"textarea",numerictextbox:"input",datepicker:"input",datetimepicker:"input",timepicker:"input",autocomplete:"input",colorpicker:"input",maskedtextbox:"input",dropdownlist:"select",multiselect:"select",upload:"input",validator:"form",button:"button",mobilebutton:"a",mobilebackbutton:"a",mobiledetailbutton:"a",listview:"ul",mobilelistview:"ul",treeview:"ul",menu:"ul",contextmenu:"ul",actionsheet:"ul"},h="on-",u=[],kendo.onWidgetRegistered(function(t){var e=t.prefix+t.widget.prototype.options.name.toLowerCase();-1===u.indexOf(e)&&(u.push(e),l(e,t.widget))}),d=/^\s*(?:\{(?:.|\r\n|\n)*\}|\[(?:.|\r\n|\n)*\])\s*$/,f=/^\{(\d+)(:[^\}]+)?\}|^\[[A-Za-z_]*\]$/,p=/^(\+|-?)\d+(\.?)\d*$/)}(window.kendo.jQuery,window.angular),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.angular2.min",["kendo.core.min","kendo.webcomponents.min"],t)}(function(){!function(t,e){var i,n;e&&e.register&&(i=this&&this.__decorate||function(t,e,i,n){if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)return Reflect.decorate(t,e,i,n);switch(arguments.length){case 2:return t.reduceRight(function(t,e){return e&&e(t)||t},e);case 3:return t.reduceRight(function(t,n){return void(n&&n(e,i))},void 0);case 4:return t.reduceRight(function(t,n){return n&&n(e,i,t)||t},n)}},n=this&&this.__metadata||function(t,e){return"object"==typeof Reflect&&"function"==typeof Reflect.metadata?Reflect.metadata(t,e):void 0},e.register("kendo/angular2",["angular2/angular2"],function(e){var o,r;return{setters:[function(t){o=t}],execute:function(){r=function(){function e(t,e){var i=this;this.elementRef=e,this.onChange=function(t){},this.onTouched=function(){},this.element=e.nativeElement,this.element.addEventListener("change",function(){i.onChange(i.element.value())}),this.element.addEventListener("spin",function(){i.onChange(i.element.value())}),t.valueAccessor=this,this.cd=t,t.valueAccessor=this}return e.prototype.writeValue=function(t){this.element.value(t)},e.prototype.registerOnChange=function(t){this.onChange=t},e.prototype.registerOnTouched=function(t){this.onTouched=t},e=i([o.Directive({selector:t.webComponents.join(",")}),n("design:paramtypes",[o.NgControl,o.ElementRef])],e)}(),e("KendoValueAccessor",r)}}}))}(window.kendo,window.System)},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.dataviz.min",["kendo.core.min","kendo.fx.min","kendo.router.min","kendo.view.min","kendo.data.odata.min","kendo.data.xml.min","kendo.data.min","kendo.data.signalr.min","kendo.binder.min","kendo.userevents.min","kendo.draganddrop.min","kendo.mobile.scroller.min","kendo.popup.min","kendo.tooltip.min","kendo.drawing.min","kendo.dataviz.core.min","kendo.dataviz.themes.min","kendo.dataviz.chart.min","kendo.dataviz.chart.polar.min","kendo.dataviz.chart.funnel.min","kendo.dataviz.gauge.min","kendo.dataviz.barcode.min","kendo.dataviz.qrcode.min","kendo.dataviz.stock.min","kendo.dataviz.sparkline.min","kendo.dataviz.map.min","kendo.dataviz.diagram.min","kendo.dataviz.treemap.min","kendo.angular.min","kendo.webcomponents.min","kendo.angular2.min"],t)}(function(){"bundle all"},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.touch.min",["kendo.core.min","kendo.userevents.min"],t)}(function(){return function(t,e){var i=window.kendo,n=i.ui.Widget,o=t.proxy,r=Math.abs,s=20,a=n.extend({init:function(t,e){function r(t){return function(e){a._triggerTouch(t,e)}}function s(t){return function(e){a.trigger(t,{touches:e.touches,distance:e.distance,center:e.center,event:e.event})}}var a=this;n.fn.init.call(a,t,e),e=a.options,t=a.element,a.wrapper=t,a.events=new i.UserEvents(t,{filter:e.filter,surface:e.surface,minHold:e.minHold,multiTouch:e.multiTouch,allowSelection:!0,fastTap:e.fastTap,press:r("touchstart"),hold:r("hold"),tap:o(a,"_tap"),gesturestart:s("gesturestart"),gesturechange:s("gesturechange"),gestureend:s("gestureend")}),e.enableSwipe?(a.events.bind("start",o(a,"_swipestart")),a.events.bind("move",o(a,"_swipemove"))):(a.events.bind("start",o(a,"_dragstart")),a.events.bind("move",r("drag")),a.events.bind("end",r("dragend"))),i.notify(a)},events:["touchstart","dragstart","drag","dragend","tap","doubletap","hold","swipe","gesturestart","gesturechange","gestureend"],options:{name:"Touch",surface:null,global:!1,fastTap:!1,multiTouch:!1,enableSwipe:!1,minXDelta:30,maxYDelta:20,maxDuration:1e3,minHold:800,doubleTapTimeout:800},cancel:function(){this.events.cancel()},_triggerTouch:function(t,e){this.trigger(t,{touch:e.touch,event:e.event})&&e.preventDefault()},_tap:function(t){var e=this,n=e.lastTap,o=t.touch;n&&e.options.doubleTapTimeout>o.endTime-n.endTime&&i.touchDelta(o,n).distance=r(t.y.velocity)&&t.sender.capture()},_swipemove:function(t){var e=this,i=e.options,n=t.touch,o=t.event.timeStamp-n.startTime,s=n.x.initialDelta>0?"right":"left";r(n.x.initialDelta)>=i.minXDelta&&r(n.y.initialDelta)o&&(e.trigger("swipe",{direction:s,touch:t.touch}),n.cancel())}});i.ui.plugin(a)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.view.min",["kendo.core.min","kendo.fx.min","kendo.mobile.scroller.min","kendo.view.min"],t)}(function(){return function(t,e){function i(t){var e,i,n=t.find(b("popover")),o=a.roles;for(e=0,i=n.length;i>e;e++)r.initWidget(n[e],{},o)}function n(t){r.triggeredByInput(t)||t.preventDefault()}function o(e){e.each(function(){r.initWidget(t(this),{},a.roles)})}var r=window.kendo,s=r.mobile,a=s.ui,l=r.attr,c=a.Widget,h=r.ViewClone,u="init",d='
',f="beforeShow",p="show",g="afterShow",m="beforeHide",v="transitionEnd",w="transitionStart",_="hide",y="destroy",x=r.attrValue,b=r.roleSelector,k=r.directiveSelector,C=r.compileMobileDirective,S=c.extend({init:function(e,i){c.fn.init.call(this,e,i),this.params={},t.extend(this,i),this.transition=this.transition||this.defaultTransition,this._id(),this.options.$angular?this._overlay():(this._layout(),this._overlay(),this._scroller(),this._model())},events:[u,f,p,g,m,_,y,w,v],options:{name:"View",title:"",layout:null,getLayout:t.noop,reload:!1,transition:"",defaultTransition:"",useNativeScrolling:!1,stretch:!1,zoom:!1,model:null,modelScope:window,scroller:{},initWidgets:!0},enable:function(t){e===t&&(t=!0),t?this.overlay.hide():this.overlay.show()},destroy:function(){this.layout&&this.layout.detach(this),this.trigger(y),c.fn.destroy.call(this),this.scroller&&this.scroller.destroy(),this.options.$angular&&this.element.scope().$destroy(),r.destroy(this.element)},purge:function(){this.destroy(),this.element.remove()},triggerBeforeShow:function(){return this.trigger(f,{view:this})?!1:!0},triggerBeforeHide:function(){return this.trigger(m,{view:this})?!1:!0},showStart:function(){var t=this.element;t.css("display",""),this.inited?this._invokeNgController():(this.inited=!0,this.trigger(u,{view:this})),this.layout&&this.layout.attach(this),this._padIfNativeScrolling(),this.trigger(p,{view:this}),r.resize(t)},showEnd:function(){this.trigger(g,{view:this}),this._padIfNativeScrolling()},hideEnd:function(){var t=this;t.element.hide(),t.trigger(_,{view:t}),t.layout&&t.layout.trigger(_,{view:t,layout:t.layout})},beforeTransition:function(t){this.trigger(w,{type:t})},afterTransition:function(t){this.trigger(v,{type:t})},_padIfNativeScrolling:function(){if(s.appLevelNativeScrolling()){var t=r.support.mobileOS&&r.support.mobileOS.android,e=s.application.skin()||"",i=s.application.os.android||e.indexOf("android")>-1,n="flat"===e||e.indexOf("material")>-1,o=!t&&!i||n?"header":"footer",a=!t&&!i||n?"footer":"header";this.content.css({paddingTop:this[o].height(),paddingBottom:this[a].height()})}},contentElement:function(){var t=this;return t.options.stretch?t.content:t.scrollerContent},clone:function(){return new h(this)},_scroller:function(){var e=this;s.appLevelNativeScrolling()||(e.options.stretch?e.content.addClass("km-stretched-view"):(e.content.kendoMobileScroller(t.extend(e.options.scroller,{zoom:e.options.zoom,useNative:e.options.useNativeScrolling})),e.scroller=e.content.data("kendoMobileScroller"),e.scrollerContent=e.scroller.scrollElement),r.support.kineticScrollNeeded&&(t(e.element).on("touchmove",".km-header",n),e.options.useNativeScrolling||e.options.stretch||t(e.element).on("touchmove",".km-content",n)))},_model:function(){var t=this,e=t.element,n=t.options.model;"string"==typeof n&&(n=r.getter(n)(t.options.modelScope)),t.model=n,i(e),t.element.css("display",""),t.options.initWidgets&&(n?r.bind(e,n,a,r.ui,r.dataviz.ui):s.init(e.children())),t.element.css("display","none")},_id:function(){var t=this.element,e=t.attr("id")||"";this.id=x(t,"url")||"#"+e,"#"==this.id&&(this.id=r.guid(),t.attr("id",this.id))},_layout:function(){var t=b("content"),e=this.element;e.addClass("km-view"),this.header=e.children(b("header")).addClass("km-header"),this.footer=e.children(b("footer")).addClass("km-footer"),e.children(t)[0]||e.wrapInner("
'),this.content=e.children(b("content")).addClass("km-content"),this.element.prepend(this.header).append(this.footer),this.layout=this.options.getLayout(this.layout),this.layout&&this.layout.setup(this)},_overlay:function(){this.overlay=t(d).appendTo(this.element)},_invokeNgController:function(){var e,i,n;this.options.$angular&&(e=this.element.controller(),i=this.options.$angular[0],e&&(n=t.proxy(this,"_callController",e,i),/^\$(digest|apply)$/.test(i.$$phase)?n():i.$apply(n)))},_callController:function(t,e){this.element.injector().invoke(t.constructor,t,{$scope:e})}}),T=c.extend({init:function(t,e){c.fn.init.call(this,t,e),t=this.element,this.header=t.children(this._locate("header")).addClass("km-header"),this.footer=t.children(this._locate("footer")).addClass("km-footer"),this.elements=this.header.add(this.footer),i(t),this.options.$angular||r.mobile.init(this.element.children()),this.element.detach(),this.trigger(u,{layout:this})},_locate:function(t){return this.options.$angular?k(t):b(t)},options:{name:"Layout",id:null,platform:null},events:[u,p,_],setup:function(t){t.header[0]||(t.header=this.header),t.footer[0]||(t.footer=this.footer)},detach:function(t){var e=this;t.header===e.header&&e.header[0]&&t.element.prepend(e.header.detach()[0].cloneNode(!0)),t.footer===e.footer&&e.footer.length&&t.element.append(e.footer.detach()[0].cloneNode(!0))},attach:function(t){var e=this,i=e.currentView;i&&e.detach(i),t.header===e.header&&(e.header.detach(),t.element.children(b("header")).remove(),t.element.prepend(e.header)),t.footer===e.footer&&(e.footer.detach(),t.element.children(b("footer")).remove(),t.element.append(e.footer)),e.trigger(p,{layout:e,view:t}),e.currentView=t}}),A=r.Observable,P=/]*>(([\u000a\u000d\u2028\u2029]|.)*)<\/body>/i,D="loadStart",M="loadComplete",E="showStart",B="sameViewRequested",I="viewShow",z="viewTypeDetermined",L="after",R=A.extend({init:function(e){var i,n,s,a,l=this;if(A.fn.init.call(l),t.extend(l,e),l.sandbox=t("
"),s=l.container,i=l._hideViews(s),l.rootView=i.first(),!l.rootView[0]&&e.rootNeeded)throw n=s[0]==r.mobile.application.element[0]?'Your kendo mobile application element does not contain any direct child elements with data-role="view" attribute set. Make sure that you instantiate the mobile application using the correct container.':'Your pane element does not contain any direct child elements with data-role="view" attribute set.',Error(n);l.layouts={},l.viewContainer=new r.ViewContainer(l.container),l.viewContainer.bind("accepted",function(t){t.view.params=l.params}),l.viewContainer.bind("complete",function(t){l.trigger(I,{view:t.view})}),l.viewContainer.bind(L,function(){l.trigger(L)}),this.getLayoutProxy=t.proxy(this,"_getLayout"),l._setupLayouts(s),a=s.children(l._locate("modalview drawer")),l.$angular?(l.$angular[0].viewOptions={defaultTransition:l.transition,loader:l.loader,container:l.container,getLayout:l.getLayoutProxy},a.each(function(i,n){C(t(n),e.$angular[0])})):o(a),this.bind(this.events,e)},events:[E,L,I,D,M,B,z],destroy:function(){r.destroy(this.container);for(var t in this.layouts)this.layouts[t].destroy()},view:function(){return this.viewContainer.view},showView:function(t,e,i){if(t=t.replace(RegExp("^"+this.remoteViewURLPrefix),""),""===t&&this.remoteViewURLPrefix&&(t="/"),t.replace(/^#/,"")===this.url)return this.trigger(B),!1;this.trigger(E);var n=this,o=function(i){return n.viewContainer.show(i,e,t)},s=n._findViewElement(t),a=r.widgetInstance(s);return n.url=t.replace(/^#/,""),n.params=i,a&&a.reload&&(a.purge(),s=[]),this.trigger(z,{remote:0===s.length,url:t}),s[0]?(a||(a=n._createView(s)),o(a)):(this.serverNavigation?location.href=t:n._loadView(t,o),!0)},append:function(t,e){var i,n,r,s=this.sandbox,a=(e||"").split("?")[0],c=this.container;return P.test(t)&&(t=RegExp.$1),s[0].innerHTML=t,c.append(s.children("script, style")),i=this._hideViews(s),r=i.first(),r.length||(i=r=s.wrapInner("
").children()),a&&r.hide().attr(l("url"),a),this._setupLayouts(s),n=s.children(this._locate("modalview drawer")),c.append(s.children(this._locate("layout modalview drawer")).add(i)),o(n),this._createView(r)},_locate:function(t){return this.$angular?k(t):b(t)},_findViewElement:function(t){var e,i=t.split("?")[0];return i?(e=this.container.children("["+l("url")+"='"+i+"']"),e[0]||-1!==i.indexOf("/")||(e=this.container.children("#"===i.charAt(0)?i:"#"+i)),e):this.rootView},_createView:function(t){return this.$angular?C(t,this.$angular[0]):r.initWidget(t,{defaultTransition:this.transition,loader:this.loader,container:this.container,getLayout:this.getLayoutProxy,modelScope:this.modelScope,reload:x(t,"reload")},a.roles)},_getLayout:function(t){return""===t?null:t?this.layouts[t]:this.layouts[this.layout]},_loadView:function(e,i){this._xhr&&this._xhr.abort(),this.trigger(D),this._xhr=t.get(r.absoluteURL(e,this.remoteViewURLPrefix),"html").always(t.proxy(this,"_xhrComplete",i,e))},_xhrComplete:function(t,e,i){var n=!0;if("object"==typeof i&&0===i.status){if(!(i.responseText&&i.responseText.length>0))return;n=!0,i=i.responseText}this.trigger(M),n&&t(this.append(i,e))},_hideViews:function(t){return t.children(this._locate("view splitview")).hide()},_setupLayouts:function(e){var i,n=this;e.children(n._locate("layout")).each(function(){i=n.$angular?C(t(this),n.$angular[0]):r.initWidget(t(this),{},a.roles);var e=i.options.platform;e&&e!==s.application.os.name?i.destroy():n.layouts[i.options.id]=i})}});r.mobile.ViewEngine=R,a.plugin(S),a.plugin(T)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.loader.min",["kendo.core.min"],t)}(function(){return function(t,e){var i=window.kendo,n=i.mobile.ui,o=n.Widget,r=t.map(i.eventMap,function(t){return t}).join(" ").split(" "),s=o.extend({init:function(e,i){var n=this,r=t('
');o.fn.init.call(n,r,i),n.container=e,n.captureEvents=!1,n._attachCapture(),r.append(n.options.loading).hide().appendTo(e)},options:{name:"Loader",loading:"Loading... ",timeout:100},show:function(){var t=this;clearTimeout(t._loading),t.options.loading!==!1&&(t.captureEvents=!0,t._loading=setTimeout(function(){t.element.show()},t.options.timeout))},hide:function(){this.captureEvents=!1,clearTimeout(this._loading),this.element.hide()},changeMessage:function(t){this.options.loading=t,this.element.find(">h1").html(t)},transition:function(){this.captureEvents=!0,this.container.css("pointer-events","none")},transitionDone:function(){this.captureEvents=!1,this.container.css("pointer-events","")},_attachCapture:function(){function t(t){i.captureEvents&&t.preventDefault()}var e,i=this;for(i.captureEvents=!1,e=0;r.length>e;e++)i.container[0].addEventListener(r[e],t,!0)}});n.plugin(s)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.pane.min",["kendo.mobile.view.min","kendo.mobile.loader.min"],t)}(function(){return function(t,e){var i=window.kendo,n=i.mobile,o=i.roleSelector,r=n.ui,s=r.Widget,a=n.ViewEngine,l=r.View,c=n.ui.Loader,h="external",u="href",d="#!",f="navigate",p="viewShow",g="sameViewRequested",m=i.support.mobileOS,v=m.ios&&!m.appMode&&m.flatVersion>=700,w=/popover|actionsheet|modalview|drawer/,_="#:back",y=i.attrValue,x=s.extend({init:function(t,e){var n=this;s.fn.init.call(n,t,e),e=n.options,t=n.element,t.addClass("km-pane"),n.options.collapsible&&t.addClass("km-collapsible-pane"),this.history=[],this.historyCallback=function(t,e,i){var o=n.transition;return n.transition=null,v&&i&&(o="none"),n.viewEngine.showView(t,o,e)},this._historyNavigate=function(t){if(t===_){if(1===n.history.length)return;n.history.pop(),t=n.history[n.history.length-1]}else n.history.push(t);n.historyCallback(t,i.parseQueryStringParams(t))},this._historyReplace=function(t){var e=i.parseQueryStringParams(t);n.history[n.history.length-1]=t,n.historyCallback(t,e)},n.loader=new c(t,{loading:n.options.loading}),n.viewEngine=new a({container:t,transition:e.transition,modelScope:e.modelScope,rootNeeded:!e.initial,
serverNavigation:e.serverNavigation,remoteViewURLPrefix:e.root||"",layout:e.layout,$angular:e.$angular,loader:n.loader,showStart:function(){n.loader.transition(),n.closeActiveDialogs()},after:function(){n.loader.transitionDone()},viewShow:function(t){n.trigger(p,t)},loadStart:function(){n.loader.show()},loadComplete:function(){n.loader.hide()},sameViewRequested:function(){n.trigger(g)},viewTypeDetermined:function(t){t.remote&&n.options.serverNavigation||n.trigger(f,{url:t.url})}}),this._setPortraitWidth(),i.onResize(function(){n._setPortraitWidth()}),n._setupAppLinks()},closeActiveDialogs:function(){var e=this.element.find(o("actionsheet popover modalview")).filter(":visible");e.each(function(){i.widgetInstance(t(this),r).close()})},navigateToInitial:function(){var t=this.options.initial;return t&&this.navigate(t),t},options:{name:"Pane",portraitWidth:"",transition:"",layout:"",collapsible:!1,initial:null,modelScope:window,loading:"Loading... "},events:[f,p,g],append:function(t){return this.viewEngine.append(t)},destroy:function(){s.fn.destroy.call(this),this.viewEngine.destroy(),this.userEvents.destroy()},navigate:function(t,e){t instanceof l&&(t=t.id),this.transition=e,this._historyNavigate(t)},replace:function(t,e){t instanceof l&&(t=t.id),this.transition=e,this._historyReplace(t)},bindToRouter:function(t){var e=this,n=this.history,o=this.viewEngine;t.bind("init",function(e){var r,s=e.url,a=t.pushState?s:"/";o.rootView.attr(i.attr("url"),a),r=n.length,"/"===s&&r&&(t.navigate(n[r-1],!0),e.preventDefault())}),t.bind("routeMissing",function(t){e.historyCallback(t.url,t.params,t.backButtonPressed)||t.preventDefault()}),t.bind("same",function(){e.trigger(g)}),e._historyNavigate=function(e){t.navigate(e)},e._historyReplace=function(e){t.replace(e)}},hideLoading:function(){this.loader.hide()},showLoading:function(){this.loader.show()},changeLoadingMessage:function(t){this.loader.changeMessage(t)},view:function(){return this.viewEngine.view()},_setPortraitWidth:function(){var t,e=this.options.portraitWidth;e&&(t=i.mobile.application.element.is(".km-vertical")?e:"auto",this.element.css("width",t))},_setupAppLinks:function(){var e=this,n="tab",r="[data-"+i.ns+"navigate-on-press]",s=t.map(["button","backbutton","detailbutton","listview-link"],function(t){return o(t)+":not("+r+")"}).join(",");this.element.handler(this).on("down",o(n)+","+r,"_mouseup").on("click",o(n)+","+s+","+r,"_appLinkClick"),this.userEvents=new i.UserEvents(this.element,{fastTap:!0,filter:s,tap:function(t){t.event.currentTarget=t.touch.currentTarget,e._mouseup(t.event)}}),this.element.css("-ms-touch-action","")},_appLinkClick:function(e){var i=t(e.currentTarget).attr("href"),n=i&&"#"!==i[0]&&this.options.serverNavigation;n||y(t(e.currentTarget),"rel")==h||e.preventDefault()},_mouseup:function(o){if(!(o.which>1||o.isDefaultPrevented())){var s=this,a=t(o.currentTarget),l=y(a,"transition"),c=y(a,"rel")||"",f=y(a,"target"),p=a.attr(u),g=v&&0===a[0].offsetHeight,m=p&&"#"!==p[0]&&this.options.serverNavigation;g||m||c===h||e===p||p===d||(a.attr(u,d),setTimeout(function(){a.attr(u,p)}),c.match(w)?(i.widgetInstance(t(p),r).openFor(a),("actionsheet"===c||"drawer"===c)&&o.stopPropagation()):("_top"===f?s=n.application.pane:f&&(s=t("#"+f).data("kendoMobilePane")),s.navigate(p,l)),o.preventDefault())}}});x.wrap=function(t){t.is(o("view"))||(t=t.wrap("
').parent());var e=t.wrap('').parent(),n=new x(e);return n.navigate(""),n},r.plugin(x)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.popover.min",["kendo.popup.min","kendo.mobile.pane.min"],t)}(function(){return function(t,e){var i=window.kendo,n=i.mobile,o=n.ui,r="hide",s="open",a="close",l='',c='',h='',u="km-up km-down km-left km-right",d=o.Widget,f={down:{origin:"bottom center",position:"top center"},up:{origin:"top center",position:"bottom center"},left:{origin:"center left",position:"center right",collision:"fit flip"},right:{origin:"center right",position:"center left",collision:"fit flip"}},p={animation:{open:{effects:"fade:in",duration:0},close:{effects:"fade:out",duration:400}}},g={horizontal:{offset:"top",size:"height"},vertical:{offset:"left",size:"width"}},m={up:"down",down:"up",left:"right",right:"left"},v=d.extend({init:function(e,n){var o,s,a=this,u=e.closest(".km-modalview-wrapper"),m=e.closest(".km-root").children(".km-pane").first(),v=u[0]?u:m;n.viewport?m=n.viewport:m[0]||(m=window),n.container?v=n.container:v[0]||(v=document.body),o={viewport:m,copyAnchorStyles:!1,autosize:!0,open:function(){a.overlay.show()},activate:t.proxy(a._activate,a),deactivate:function(){a.overlay.hide(),a._apiCall||a.trigger(r),a._apiCall=!1}},d.fn.init.call(a,e,n),e=a.element,n=a.options,e.wrap(l).addClass("km-popup").show(),s=a.options.direction.match(/left|right/)?"horizontal":"vertical",a.dimensions=g[s],a.wrapper=e.parent().css({width:n.width,height:n.height}).addClass("km-popup-wrapper km-"+n.direction).hide(),a.arrow=t(c).prependTo(a.wrapper).hide(),a.overlay=t(h).appendTo(v).hide(),o.appendTo=a.overlay,n.className&&a.overlay.addClass(n.className),a.popup=new i.ui.Popup(a.wrapper,t.extend(!0,o,p,f[n.direction]))},options:{name:"Popup",width:240,height:"",direction:"down",container:null,viewport:null},events:[r],show:function(e){this.popup.options.anchor=t(e),this.popup.open()},hide:function(){this._apiCall=!0,this.popup.close()},destroy:function(){d.fn.destroy.call(this),this.popup.destroy(),this.overlay.remove()},target:function(){return this.popup.options.anchor},_activate:function(){var e=this,i=e.options.direction,n=e.dimensions,o=n.offset,r=e.popup,s=r.options.anchor,a=t(s).offset(),l=t(r.element).offset(),c=r.flipped?m[i]:i,h=2*e.arrow[n.size](),d=e.element[n.size]()-e.arrow[n.size](),f=t(s)[n.size](),p=a[o]-l[o]+f/2;h>p&&(p=h),p>d&&(p=d),e.wrapper.removeClass(u).addClass("km-"+c),e.arrow.css(o,p).show()}}),w=d.extend({init:function(e,n){var r,s=this;s.initialOpen=!1,d.fn.init.call(s,e,n),r=t.extend({className:"km-popover-root",hide:function(){s.trigger(a)}},this.options.popup),s.popup=new v(s.element,r),s.popup.overlay.on("move",function(t){t.target==s.popup.overlay[0]&&t.preventDefault()}),s.pane=new o.Pane(s.element,t.extend(this.options.pane,{$angular:this.options.$angular})),i.notify(s,o)},options:{name:"PopOver",popup:{},pane:{}},events:[s,a],open:function(t){this.popup.show(t),this.initialOpen?this.pane.view()._invokeNgController():(this.pane.navigateToInitial()||this.pane.navigate(""),this.popup.popup._position(),this.initialOpen=!0)},openFor:function(t){this.open(t),this.trigger(s,{target:this.popup.target()})},close:function(){this.popup.hide()},destroy:function(){d.fn.destroy.call(this),this.pane.destroy(),this.popup.destroy(),i.destroy(this.element)}});o.plugin(v),o.plugin(w)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.shim.min",["kendo.popup.min"],t)}(function(){return function(t,e){var i=window.kendo,n=i.mobile.ui,o=i.ui.Popup,r='
',s="hide",a=n.Widget,l=a.extend({init:function(e,n){var l=this,c=i.mobile.application,h=i.support.mobileOS,u=c?c.os.name:h?h.name:"ios",d="ios"===u||"wp"===u||(c?c.os.skin:!1),f="blackberry"===u,p=n.align||(d?"bottom center":f?"center right":"center center"),g=n.position||(d?"bottom center":f?"center right":"center center"),m=n.effect||(d?"slideIn:up":f?"slideIn:left":"fade:in"),v=t(r).handler(l).hide();a.fn.init.call(l,e,n),l.shim=v,e=l.element,n=l.options,n.className&&l.shim.addClass(n.className),n.modal||l.shim.on("down","_hide"),(c?c.element:t(document.body)).append(v),l.popup=new o(l.element,{anchor:v,modal:!0,appendTo:v,origin:p,position:g,animation:{open:{effects:m,duration:n.duration},close:{duration:n.duration}},close:function(t){var e=!1;l._apiCall||(e=l.trigger(s)),e&&t.preventDefault(),l._apiCall=!1},deactivate:function(){v.hide()},open:function(){v.show()}}),i.notify(l)},events:[s],options:{name:"Shim",modal:!1,align:e,position:e,effect:e,duration:200},show:function(){this.popup.open()},hide:function(){this._apiCall=!0,this.popup.close()},destroy:function(){a.fn.destroy.call(this),this.shim.kendoDestroy(),this.popup.destroy(),this.shim.remove()},_hide:function(e){e&&t.contains(this.shim.children().children(".k-popup")[0],e.target)||this.popup.close()}});n.plugin(l)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.modalview.min",["kendo.mobile.shim.min","kendo.mobile.view.min"],t)}(function(){return function(t,e){var i=window.kendo,n=i.mobile.ui,o=n.Shim,r=n.Widget,s="beforeOpen",a="open",l="close",c="init",h='
',u=n.View.extend({init:function(t,e){var i=this;r.fn.init.call(i,t,e),i._id(),i._wrap(),i._shim(),this.options.$angular||(i._layout(),i._scroller(),i._model()),i.element.css("display",""),i.trigger(c)},events:[c,s,a,l],options:{name:"ModalView",modal:!0,width:null,height:null},destroy:function(){r.fn.destroy.call(this),this.shim.destroy()},open:function(e){var i=this;i.target=t(e),i.shim.show(),i._invokeNgController(),i.trigger("show",{view:i})},openFor:function(t){this.trigger(s,{target:t})||(this.open(t),this.trigger(a,{target:t}))},close:function(){this.element.is(":visible")&&!this.trigger(l)&&this.shim.hide()},_wrap:function(){var t,e,i=this,n=i.element,o=i.options;t=n[0].style.width||"auto",e=n[0].style.height||"auto",n.addClass("km-modalview").wrap(h),i.wrapper=n.parent().css({width:o.width||t||300,height:o.height||e||300}).addClass("auto"==e?" km-auto-height":""),n.css({width:"",height:""})},_shim:function(){var t=this;t.shim=new o(t.wrapper,{modal:t.options.modal,position:"center center",align:"center center",effect:"fade:in",className:"km-modalview-root",hide:function(e){t.trigger(l)&&e.preventDefault()}})}});n.plugin(u)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.drawer.min",["kendo.mobile.view.min","kendo.userevents.min"],t)}(function(){return function(t,e){var i=window.kendo,n=i.mobile,o=i.support.mobileOS,r=i.effects.Transition,s=i.roleSelector,a="x",l=n.ui,c=!(o.ios&&7==o.majorVersion&&!o.appMode),h="beforeShow",u="init",d="show",f="hide",p="afterHide",g={enable:t.noop},m=l.View.extend({init:function(e,o){var r,a,l,h,d;if(t(e).parent().prepend(e),n.ui.Widget.fn.init.call(this,e,o),this.options.$angular||(this._layout(),this._scroller()),this._model(),r=this.element.closest(s("pane")).data("kendoMobilePane"))this.pane=r,this.pane.bind("viewShow",function(t){h._viewShow(t)}),this.pane.bind("sameViewRequested",function(){h.hide()}),a=this.userEvents=new i.UserEvents(r.element,{fastTap:!0,filter:s("view splitview"),allowSelection:!0});else{if(this.currentView=g,l=t(this.options.container),!l)throw Error("The drawer needs a container configuration option set.");a=this.userEvents=new i.UserEvents(l,{fastTap:!0,allowSelection:!0}),this._attachTransition(l)}h=this,d=function(t){h.visible&&(h.hide(),t.preventDefault())},this.options.swipeToOpen&&c?(a.bind("press",function(){h.transition.cancel()}),a.bind("start",function(t){h._start(t)}),a.bind("move",function(t){h._update(t)}),a.bind("end",function(t){h._end(t)}),a.bind("tap",d)):a.bind("press",d),this.leftPositioned="left"===this.options.position,this.visible=!1,this.element.hide().addClass("km-drawer").addClass(this.leftPositioned?"km-left-drawer":"km-right-drawer"),this.trigger(u)},options:{name:"Drawer",position:"left",views:[],swipeToOpenViews:[],swipeToOpen:!0,title:"",container:null},events:[h,f,p,u,d],show:function(){this._activate()&&this._show()},hide:function(){this.currentView&&(this.currentView.enable(),m.current=null,this._moveViewTo(0),this.trigger(f,{view:this}))},openFor:function(){this.visible?this.hide():this.show()},destroy:function(){l.View.fn.destroy.call(this),this.userEvents.destroy()},_activate:function(){if(this.visible)return!0;var t=this._currentViewIncludedIn(this.options.views);return!t||this.trigger(h,{view:this})?!1:(this._setAsCurrent(),this.element.show(),this.trigger(d,{view:this}),this._invokeNgController(),!0)},_currentViewIncludedIn:function(e){if(!this.pane||!e.length)return!0;var i=this.pane.view();return t.inArray(i.id.replace("#",""),e)>-1||t.inArray(i.element.attr("id"),e)>-1},_show:function(){this.currentView.enable(!1),this.visible=!0;var t=this.element.width();this.leftPositioned||(t=-t),this._moveViewTo(t)},_setAsCurrent:function(){m.last!==this&&(m.last&&m.last.element.hide(),this.element.show()),m.last=this,m.current=this},_moveViewTo:function(t){this.userEvents.cancel(),this.transition.moveTo({location:t,duration:400,ease:r.easeOutExpo})},_viewShow:function(t){return this.currentView&&this.currentView.enable(),this.currentView===t.view?(this.hide(),e):(this.currentView=t.view,this._attachTransition(t.view.element),e)},_attachTransition:function(t){var e=this,n=this.movable,o=n&&n.x;this.transition&&(this.transition.cancel(),this.movable.moveAxis("x",0)),n=this.movable=new i.ui.Movable(t),this.transition=new r({axis:a,movable:this.movable,onEnd:function(){0===n[a]&&(t[0].style.cssText="",e.element.hide(),e.trigger(p),e.visible=!1)}}),o&&(t.addClass("k-fx-hidden"),i.animationFrame(function(){t.removeClass("k-fx-hidden"),e.movable.moveAxis(a,o),e.hide()}))},_start:function(t){var n,o,r,s,a,l=t.sender;return Math.abs(t.x.velocity)t.x.velocity,(r&&a||s&&!a)&&this._activate()?(l.capture(),e):(l.cancel(),e))},_update:function(t){var e,i=this.movable,n=i.x+t.x.delta;e=this.leftPositioned?Math.min(Math.max(0,n),this.element.width()):Math.max(Math.min(0,n),-this.element.width()),this.movable.moveAxis(a,e),t.event.preventDefault(),t.event.stopPropagation()},_end:function(t){var e,i=t.x.velocity,n=Math.abs(this.movable.x)>this.element.width()/2,o=.8;e=this.leftPositioned?i>-o&&(i>o||n):o>i&&(-o>i||n),e?this._show():this.hide()}});l.plugin(m)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.splitview.min",["kendo.mobile.pane.min"],t)}(function(){return function(t,e){var i=window.kendo,n=i.mobile.ui,o=n.Widget,r="
",s=n.View,a=s.extend({init:function(e,s){var a,l,c=this;o.fn.init.call(c,e,s),e=c.element,t.extend(c,s),c._id(),c.options.$angular?c._overlay():(c._layout(),c._overlay()),c._style(),l=e.children(c._locate("modalview")),c.options.$angular?l.each(function(e,n){i.compileMobileDirective(t(n),s.$angular[0])}):i.mobile.init(l),c.panes=[],c._paramsHistory=[],c.options.$angular?(c.element.children(i.directiveSelector("pane")).each(function(){a=i.compileMobileDirective(t(this),s.$angular[0]),c.panes.push(a)}),c.element.children(i.directiveSelector("header footer")).each(function(){i.compileMobileDirective(t(this),s.$angular[0])})):c.content.children(i.roleSelector("pane")).each(function(){a=i.initWidget(this,{},n.roles),c.panes.push(a)}),c.expandedPaneShim=t(r).appendTo(c.element),c._shimUserEvents=new i.UserEvents(c.expandedPaneShim,{fastTap:!0,tap:function(){c.collapsePanes()}})},_locate:function(t){return this.options.$angular?i.directiveSelector(t):i.roleSelector(t)},options:{name:"SplitView",style:"horizontal"},expandPanes:function(){this.element.addClass("km-expanded-splitview")},collapsePanes:function(){this.element.removeClass("km-expanded-splitview")},_layout:function(){var t=this,e=t.element;t.transition=i.attrValue(e,"transition"),i.mobile.ui.View.prototype._layout.call(this),i.mobile.init(this.header.add(this.footer)),t.element.addClass("km-splitview"),t.content.addClass("km-split-content")},_style:function(){var e,i=this.options.style,n=this.element;i&&(e=i.split(" "),t.each(e,function(){n.addClass("km-split-"+this)}))},showStart:function(){var e=this;e.element.css("display",""),e.inited?this._invokeNgController():(e.inited=!0,t.each(e.panes,function(){this.options.initial?this.navigateToInitial():this.navigate("")}),e.trigger("init",{view:e})),e.trigger("show",{view:e})}});n.plugin(a)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.application.min",["kendo.mobile.pane.min","kendo.router.min"],t)}(function(){return function(t,e){function i(t,e){var i=[];return p&&i.push("km-on-"+p.name),i.push(t.skin?"km-"+t.skin:"ios"==t.name&&t.majorVersion>6?"km-ios7":"km-"+t.name),("ios"==t.name&&7>t.majorVersion||"ios"!=t.name)&&i.push("km-"+t.name+t.majorVersion),i.push("km-"+t.majorVersion),i.push("km-m"+(t.minorVersion?t.minorVersion[0]:0)),t.variant&&(t.skin&&t.skin===t.name||!t.skin||t.setDefaultPlatform===!1)&&i.push("km-"+(t.skin?t.skin:t.name)+"-"+t.variant),t.cordova&&i.push("km-cordova"),i.push(t.appMode?"km-app":"km-web"),e&&e.statusBarStyle&&i.push("km-"+e.statusBarStyle+"-status-bar"),i.join(" ")}function n(e){return"km-wp-"+(e.noVariantSet?0===parseInt(t("
").css("background-color").split(",")[1],10)?"dark":"light":e.variant+" km-wp-"+e.variant+"-force")}function o(t){return p.wp?"-kendo-landscape"==t.css("animation-name"):Math.abs(window.orientation)/90==1}function r(t){return o(t)?x:v}function s(t){t.parent().addBack().css("min-height",window.innerHeight)}function a(){t("meta[name=viewport]").remove(),L.append(k({height:", width=device-width"+(o()?", height="+window.innerHeight+"px":h.mobileOS.flatVersion>=600&&700>h.mobileOS.flatVersion?", height="+window.innerWidth+"px":", height=device-height")}))}var l=window.kendo,c=l.mobile,h=l.support,u=c.ui.Widget,d=c.ui.Pane,f="ios7",p=h.mobileOS,g="blackberry"==p.device&&p.flatVersion>=600&&1e3>p.flatVersion&&p.appMode,m=.93,v="km-vertical",w="chrome"===p.browser,_=p.ios&&p.flatVersion>=700&&800>p.flatVersion&&(p.appMode||w),y=Math.abs(window.orientation)/90==1,x="km-horizontal",b={ios7:{ios:!0,browser:"default",device:"iphone",flatVersion:"700",majorVersion:"7",minorVersion:"0.0",name:"ios",tablet:!1},ios:{ios:!0,browser:"default",device:"iphone",flatVersion:"612",majorVersion:"6",minorVersion:"1.2",name:"ios",tablet:!1},android:{android:!0,browser:"default",device:"android",flatVersion:"442",majorVersion:"4",minorVersion:"4.2",name:"android",tablet:!1},blackberry:{blackberry:!0,browser:"default",device:"blackberry",flatVersion:"710",majorVersion:"7",minorVersion:"1.0",name:"blackberry",tablet:!1},meego:{meego:!0,browser:"default",device:"meego",flatVersion:"850",majorVersion:"8",minorVersion:"5.0",name:"meego",tablet:!1},wp:{wp:!0,browser:"default",device:"wp",flatVersion:"800",majorVersion:"8",minorVersion:"0.0",name:"wp",tablet:!1}},k=l.template(' ',{usedWithBlock:!1}),C=l.template(' ',{usedWithBlock:!1}),S=l.template("",{usedWithBlock:!1}),T=p.android&&"chrome"!=p.browser||p.blackberry,A=l.template(' ',{usedWithBlock:!1}),P=("iphone"==p.device||"ipod"==p.device)&&7>p.majorVersion,D=("iphone"==p.device||"ipod"==p.device)&&p.majorVersion>=7,M=D?"none":null,E="mobilesafari"==p.browser?60:0,B=20,I=t(window),z=window.screen,L=t("head"),R="init",O=t.proxy,F=u.extend({init:function(e,i){c.application=this,t(t.proxy(this,"bootstrap",e,i))},bootstrap:function(e,i){var n,o,r;e=t(e),e[0]||(e=t(document.body)),u.fn.init.call(this,e,i),this.element.removeAttr("data-"+l.ns+"role"),this._setupPlatform(),this._attachMeta(),this._setupElementClass(),this._attachHideBarHandlers(),n=t.extend({},this.options),delete n.name,o=this,r=function(){o.pane=new d(o.element,n),o.pane.navigateToInitial(),o.options.updateDocumentTitle&&o._setupDocumentTitle(),o._startHistory(),o.trigger(R)},this.options.$angular?setTimeout(r):r()},options:{name:"Application",hideAddressBar:!0,browserHistory:!0,historyTransition:M,modelScope:window,statusBarStyle:"black",transition:"",retina:!1,platform:null,skin:null,updateDocumentTitle:!0,useNativeScrolling:!1},events:[R],navigate:function(t,e){this.pane.navigate(t,e)},replace:function(t,e){this.pane.replace(t,e)},scroller:function(){return this.view().scroller},hideLoading:function(){if(!this.pane)throw Error("The mobile application instance is not fully instantiated. Please consider activating loading in the application init event handler.");this.pane.hideLoading()},showLoading:function(){if(!this.pane)throw Error("The mobile application instance is not fully instantiated. Please consider activating loading in the application init event handler.");this.pane.showLoading()},changeLoadingMessage:function(t){if(!this.pane)throw Error("The mobile application instance is not fully instantiated. Please consider changing the message in the application init event handler.");this.pane.changeLoadingMessage(t)},view:function(){return this.pane.view()},skin:function(t){var e=this;return arguments.length?(e.options.skin=t||"",e.element[0].className="km-pane",e._setupPlatform(),e._setupElementClass(),e.options.skin):e.options.skin},destroy:function(){u.fn.destroy.call(this),this.pane.destroy(),this.router.destroy()},_setupPlatform:function(){var e=this,o=e.options.platform,r=e.options.skin,s=[],a=p||b[f];o&&(a.setDefaultPlatform=!0,"string"==typeof o?(s=o.split("-"),a=t.extend({variant:s[1]},a,b[s[0]])):a=o),r&&(s=r.split("-"),p||(a.setDefaultPlatform=!1),a=t.extend({},a,{skin:s[0],variant:s[1]})),a.variant||(a.noVariantSet=!0,a.variant="dark"),e.os=a,e.osCssClass=i(e.os,e.options),"wp"==a.name&&(e.refreshBackgroundColorProxy||(e.refreshBackgroundColorProxy=t.proxy(function(){(e.os.variant&&e.os.skin&&e.os.skin===e.os.name||!e.os.skin)&&e.element.removeClass("km-wp-dark km-wp-light km-wp-dark-force km-wp-light-force").addClass(n(e.os))},e)),t(document).off("visibilitychange",e.refreshBackgroundColorProxy),t(document).off("resume",e.refreshBackgroundColorProxy),a.skin||(e.element.parent().css("overflow","hidden"),t(document).on("visibilitychange",e.refreshBackgroundColorProxy),t(document).on("resume",e.refreshBackgroundColorProxy),e.refreshBackgroundColorProxy()))},_startHistory:function(){this.options.browserHistory?(this.router=new l.Router({pushState:this.options.pushState,root:this.options.root,hashBang:this.options.hashBang}),this.pane.bindToRouter(this.router),this.router.start()):this.options.initial||this.pane.navigate("")},_resizeToScreenHeight:function(){var e,i=t("meta[name=apple-mobile-web-app-status-bar-style]").attr("content").match(/black-translucent|hidden/),n=this.element;e=w?window.innerHeight:o(n)?i?y?z.availWidth+B:z.availWidth:y?z.availWidth:z.availWidth-B:i?y?z.availHeight:z.availHeight+B:y?z.availHeight-B:z.availHeight,n.height(e)},_setupElementClass:function(){var e,i=this,n=i.element;n.parent().addClass("km-root km-"+(i.os.tablet?"tablet":"phone")),n.addClass(i.osCssClass+" "+r(n)),this.options.useNativeScrolling&&n.parent().addClass("km-native-scrolling"),w&&n.addClass("km-ios-chrome"),h.wpDevicePixelRatio&&n.parent().css("font-size",h.wpDevicePixelRatio+"em"),this.options.retina&&(n.parent().addClass("km-retina"),n.parent().css("font-size",h.devicePixelRatio*m+"em")),g&&a(),i.options.useNativeScrolling?n.parent().addClass("km-native-scrolling"):T&&(e=(screen.availWidth>screen.availHeight?screen.availWidth:screen.availHeight)+200,t(S({width:e,height:e})).appendTo(L)),_&&i._resizeToScreenHeight(),l.onResize(function(){n.removeClass("km-horizontal km-vertical").addClass(r(n)),i.options.useNativeScrolling&&s(n),_&&i._resizeToScreenHeight(),g&&a(),l.resize(n)})},_clearExistingMeta:function(){L.find("meta").filter("[name|='apple-mobile-web-app'],[name|='msapplication-tap'],[name='viewport']").remove()},_attachMeta:function(){var t,e=this.options,i=e.icon;if(this._clearExistingMeta(),g||L.prepend(k({height:"",scale:this.options.retina?1/h.devicePixelRatio:"1.0"})),L.prepend(C(e)),i){"string"==typeof i&&(i={"":i});for(t in i)L.prepend(A({icon:i[t],size:t}))}e.useNativeScrolling&&s(this.element)},_attachHideBarHandlers:function(){var t=this,e=O(t,"_hideBar");!h.mobileOS.appMode&&t.options.hideAddressBar&&P&&!t.options.useNativeScrolling&&(t._initialHeight={},I.on("load",e),l.onResize(function(){setTimeout(window.scrollTo,0,0,1)}))},_setupDocumentTitle:function(){var t=this,i=document.title;t.pane.bind("viewShow",function(t){var n=t.view.title;document.title=n!==e?n:i})},_hideBar:function(){var e=this,i=e.element;i.height(l.support.transforms.css+"calc(100% + "+E+"px)"),t(window).trigger(l.support.resize)}});l.mobile.Application=F,l.ui.plugin(F,l.mobile,"Mobile")}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.actionsheet.min",["kendo.mobile.popover.min","kendo.mobile.shim.min"],t)}(function(){return function(t,e){var i=window.kendo,n=i.support,o=i.mobile.ui,r=o.Shim,s=o.Popup,a=o.Widget,l="open",c="close",h="command",u="li>a",d="actionsheetContext",f='
',p=i.template('#:cancel# '),g=a.extend({init:function(e,l){var c,h,d,g=this,m=n.mobileOS;a.fn.init.call(g,e,l),l=g.options,d=l.type,e=g.element,h="auto"===d?m&&m.tablet:"tablet"===d,c=h?s:r,l.cancelTemplate&&(p=i.template(l.cancelTemplate)),e.addClass("km-actionsheet").append(p({cancel:g.options.cancel})).wrap(f).on("up",u,"_click").on("click",u,i.preventDefault),g.view().bind("destroy",function(){g.destroy()}),g.wrapper=e.parent().addClass(d?" km-actionsheet-"+d:""),g.shim=new c(g.wrapper,t.extend({modal:m.ios&&7>m.majorVersion,className:"km-actionsheet-root"},g.options.popup)),g._closeProxy=t.proxy(g,"_close"),g._shimHideProxy=t.proxy(g,"_shimHide"),g.shim.bind("hide",g._shimHideProxy),h&&i.onResize(g._closeProxy),i.notify(g,o)},events:[l,c,h],options:{name:"ActionSheet",cancel:"Cancel",type:"auto",popup:{height:"auto"}},open:function(e,i){var n=this;n.target=t(e),n.context=i,n.shim.show(e)},close:function(){this.context=this.target=null,this.shim.hide()},openFor:function(t){var e=this,i=t.data(d);e.open(t,i),e.trigger(l,{target:t,context:i})},destroy:function(){a.fn.destroy.call(this),i.unbindResize(this._closeProxy),this.shim.destroy()},_click:function(e){var n,o,r,s;e.isDefaultPrevented()||(n=t(e.currentTarget),o=n.data("action"),o&&(r={target:this.target,context:this.context},s=this.options.$angular,s?this.element.injector().get("$parse")(o)(s[0])(r):i.getter(o)(window)(r)),this.trigger(h,{target:this.target,context:this.context,currentTarget:n}),e.preventDefault(),this._close())},_shimHide:function(t){this.trigger(c)?t.preventDefault():this.context=this.target=null},_close:function(t){this.trigger(c)?t.preventDefault():this.close()}});o.plugin(g)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.button.min",["kendo.userevents.min"],t)}(function(){return function(t,e){function i(e,i,n){t(i.target).closest(".km-button,.km-detail").toggleClass("km-state-active",n),h&&e.deactivateTimeoutID&&(clearTimeout(e.deactivateTimeoutID),e.deactivateTimeoutID=0)}function n(e){return t(''+e+" ")}var o=window.kendo,r=o.mobile,s=r.ui,a=s.Widget,l=o.support,c=l.mobileOS,h=c.android&&c.flatVersion>=300,u="click",d="disabled",f="km-state-disabled",p=a.extend({init:function(t,e){var n,r=this;a.fn.init.call(r,t,e),n="up"===r.options.clickOn,r._wrap(),r._style(),n||r.element.attr("data-navigate-on-press",!0),r.options.enable=r.options.enable&&!r.element.attr(d),r.enable(r.options.enable),r._userEvents=new o.UserEvents(r.element,{allowSelection:!n,fastTap:!0,press:function(t){r._activate(t)},release:function(t){i(r,t,!1),n||t.event.stopPropagation()}}),r._userEvents.bind(n?"tap":"press",function(t){r._release(t)}),h&&r.element.on("move",function(t){r._timeoutDeactivate(t)})},destroy:function(){a.fn.destroy.call(this),this._userEvents.destroy()},events:[u],options:{name:"Button",icon:"",style:"",badge:"",clickOn:"up",enable:!0},badge:function(t){var e=this.badgeElement=this.badgeElement||n(t).appendTo(this.element);return t||0===t?(e.html(t),this):t===!1?(e.empty().remove(),this.badgeElement=!1,this):e.html()},enable:function(t){var i=this.element;e===t&&(t=!0),this.options.enable=t,t?i.removeAttr(d):i.attr(d,d),i.toggleClass(f,!t)},_timeoutDeactivate:function(t){this.deactivateTimeoutID||(this.deactivateTimeoutID=setTimeout(i,500,this,t,!1))},_activate:function(t){var e=document.activeElement,n=e?e.nodeName:"";this.options.enable&&(i(this,t,!0),("INPUT"==n||"TEXTAREA"==n)&&e.blur())},_release:function(i){var n=this;if(!(i.which>1))return n.options.enable?(n.trigger(u,{target:t(i.target),button:n.element})&&i.preventDefault(),e):(i.preventDefault(),e)},_style:function(){var e,i=this.options.style,n=this.element;i&&(e=i.split(" "),t.each(e,function(){n.addClass("km-"+this)}))},_wrap:function(){var e=this,i=e.options.icon,o=e.options.badge,r=' ').children("span.km-text")),!l[0]&&i&&(a[0]||(r+=" km-notext"),e.iconElement=s.prepend(t(r+'" />'))),(o||0===o)&&(e.badgeElement=n(o).appendTo(s))}}),g=p.extend({options:{name:"BackButton",style:"back"},init:function(t,i){var n=this;p.fn.init.call(n,t,i),e===n.element.attr("href")&&n.element.attr("href","#:back")}}),m=p.extend({options:{name:"DetailButton",style:""},init:function(t,e){p.fn.init.call(this,t,e)},_style:function(){var e,i=this.options.style+" detail",n=this.element;i&&(e=i.split(" "),t.each(e,function(){n.addClass("km-"+this)}))},_wrap:function(){var e=this,i=e.options.icon,n=' ')))}});s.plugin(p),s.plugin(g),s.plugin(m)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.buttongroup.min",["kendo.core.min"],t)}(function(){return function(t,e){function i(e){return t(''+e+" ")}var n=window.kendo,o=n.mobile.ui,r=o.Widget,s="km-state-active",a="km-state-disabled",l="select",c="li:not(."+s+")",h=r.extend({init:function(t,e){var i=this;r.fn.init.call(i,t,e),i.element.addClass("km-buttongroup").find("li").each(i._button),i.element.on(i.options.selectOn,c,"_select"),i._enable=!0,i.select(i.options.index),i.options.enable||(i._enable=!1,i.wrapper.addClass(a))},events:[l],options:{name:"ButtonGroup",selectOn:"down",index:-1,enable:!0},current:function(){return this.element.find("."+s)},select:function(i){var n=this,o=-1;i!==e&&-1!==i&&n._enable&&!t(i).is("."+a)&&(n.current().removeClass(s),"number"==typeof i?(o=i,i=t(n.element[0].children[i])):i.nodeType&&(i=t(i),o=i.index()),i.addClass(s),n.selectedIndex=o)},badge:function(e,n){var o,r=this.element;return isNaN(e)||(e=r.children().get(e)),e=r.find(e),o=t(e.children(".km-badge")[0]||i(n).appendTo(e)),n||0===n?(o.html(n),
this):n===!1?(o.empty().remove(),this):o.html()},enable:function(t){var i=this.wrapper;e===t&&(t=!0),t?i.removeClass(a):i.addClass(a),this._enable=this.options.enable=t},_button:function(){var e=t(this).addClass("km-button"),o=n.attrValue(e,"icon"),r=n.attrValue(e,"badge"),s=e.children("span"),a=e.find("img").addClass("km-image");s[0]||(s=e.wrapInner(" ").children("span")),s.addClass("km-text"),!a[0]&&o&&e.prepend(t(' ')),(r||0===r)&&i(r).appendTo(e)},_select:function(t){t.which>1||t.isDefaultPrevented()||!this._enable||(this.select(t.currentTarget),this.trigger(l,{index:this.selectedIndex}))}});o.plugin(h)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.collapsible.min",["kendo.core.min"],t)}(function(){return function(t,e){var i=window.kendo,n=i.mobile.ui,o=n.Widget,r="km-collapsible",s="km-collapsible-header",a="km-collapsible-content",l="km-collapsibleinset",c="
",h="
",u="km-collapsed",d="km-expanded",f="km-animated",p="left",g="expand",m="collapse",v=o.extend({init:function(e,n){var s=this,a=t(e);o.fn.init.call(s,a,n),a.addClass(r),s._buildHeader(),s.content=a.children().not(s.header).wrapAll(h).parent(),s._userEvents=new i.UserEvents(s.header,{fastTap:!0,tap:function(){s.toggle()}}),a.addClass(s.options.collapsed?u:d),s.options.inset&&a.addClass(l),s.options.animation?(s.content.addClass(f),s.content.height(0),s.options.collapsed&&s.content.hide()):s.options.collapsed&&s.content.hide()},events:[g,m],options:{name:"Collapsible",collapsed:!0,collapseIcon:"arrow-n",expandIcon:"arrow-s",iconPosition:p,animation:!0,inset:!1},destroy:function(){o.fn.destroy.call(this),this._userEvents.destroy()},expand:function(t){var e=this.options.collapseIcon,n=this.content,o=i.support.mobileOS.ios;this.trigger(g)||(e&&this.header.find(".km-icon").removeClass().addClass("km-icon km-"+e),this.element.removeClass(u).addClass(d),this.options.animation&&!t?(n.off("transitionend"),n.show(),o&&n.removeClass(f),n.height(this._getContentHeight()),o&&n.addClass(f),i.resize(n)):n.show())},collapse:function(t){var e=this.options.expandIcon,i=this.content;this.trigger(m)||(e&&this.header.find(".km-icon").removeClass().addClass("km-icon km-"+e),this.element.removeClass(d).addClass(u),this.options.animation&&!t?(i.one("transitionend",function(){i.hide()}),i.height(0)):i.hide())},toggle:function(t){this.isCollapsed()?this.expand(t):this.collapse(t)},isCollapsed:function(){return this.element.hasClass(u)},resize:function(){!this.isCollapsed()&&this.options.animation&&this.content.height(this._getContentHeight())},_buildHeader:function(){var e=this.element.children(":header").wrapAll(c),i=t(' '),n=this.options.collapsed?this.options.expandIcon:this.options.collapseIcon,o=this.options.iconPosition;n&&(e.prepend(i),i.addClass("km-"+n)),this.header=e.parent(),this.header.addClass("km-icon-"+o)},_getContentHeight:function(){var t,e=this.content.attr("style");return this.content.css({position:"absolute",visibility:"hidden",height:"auto"}),t=this.content.height(),this.content.attr("style",e?e:""),t}});n.plugin(v)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.listview.min",["kendo.data.min","kendo.userevents.min","kendo.mobile.button.min"],t)}(function(){return function(t,e){function i(){return this.nodeType===v.TEXT_NODE&&this.nodeValue.match(U)}function n(t,e){e&&!t[0].querySelector(".km-icon")&&t.prepend(' ')}function o(t){n(t,T(t,"icon")),n(t,T(t.children(C),"icon"))}function r(t){var e=t.parent(),o=t.add(e.children(m.roleSelector("detailbutton"))),r=e.contents().not(o).not(i);r.length||(t.addClass("km-listview-link").attr(m.attr("role"),"listview-link"),n(t,T(e,"icon")),n(t,T(t,"icon")))}function s(t){if(t[0].querySelector("input[type=checkbox],input[type=radio]")){var e=t.parent();e.contents().not(t).not(function(){return 3==this.nodeType})[0]||(t.addClass("km-listview-label"),t.children("[type=checkbox],[type=radio]").addClass("km-widget km-icon km-check"))}}function a(e,i){t(e).css("transform","translate3d(0px, "+i+"px, 0px)")}var l,c,h,u,d,f,p,g,m=window.kendo,v=window.Node,w=m.mobile,_=w.ui,y=m.data.DataSource,x=_.DataBoundWidget,b=".km-list > li, > li:not(.km-group-container)",k=".km-listview-link, .km-listview-label",C="["+m.attr("icon")+"]",S=t.proxy,T=m.attrValue,A="km-group-title",P="km-state-active",D='',M=m.template('#= this.headerTemplate(data) #
#= kendo.render(this.template, data.items)# '),E='
',B=m.template(''),I=".kendoMobileListView",z="styled",L="dataBound",R="dataBinding",O="itemChange",F="click",V="change",N="progress",H="function",U=/^\s+$/,j=/button/,G=m.Class.extend({init:function(t){var e,i,n=t.scroller();n&&(this.options=t.options,this.element=t.element,this.scroller=t.scroller(),this._shouldFixHeaders(),e=this,i=function(){e._cacheHeaders()},t.bind("resize",i),t.bind(z,i),t.bind(L,i),n.bind("scroll",function(t){e._fixHeader(t)}))},_fixHeader:function(e){if(this.fixedHeaders){var i,n,o,r=0,s=this.scroller,a=this.headers,l=e.scrollTop;do{if(i=a[r++],!i){o=t("
");break}n=i.offset,o=i.header}while(n+1>l);this.currentHeader!=r&&(s.fixedContainer.html(o.clone()),this.currentHeader=r)}},_shouldFixHeaders:function(){this.fixedHeaders="group"===this.options.type&&this.options.fixedHeaders},_cacheHeaders:function(){if(this._shouldFixHeaders(),this.fixedHeaders){var e=[],i=this.scroller.scrollTop;this.element.find("."+A).each(function(n,o){o=t(o),e.unshift({offset:o.position().top+i,header:o})}),this.headers=e,this._fixHeader({scrollTop:i})}}}),W=function(){return{page:1}},q=m.Class.extend({init:function(t){var e=this,i=t.options,n=t.scroller(),o=i.pullParameters||W;this.listView=t,this.scroller=n,t.bind("_dataSource",function(t){e.setDataSource(t.dataSource)}),n.setOptions({pullToRefresh:!0,pull:function(){e._pulled||(e._pulled=!0,e.dataSource.read(o.call(t,e._first)))},messages:{pullTemplate:i.messages.pullTemplate,releaseTemplate:i.messages.releaseTemplate,refreshTemplate:i.messages.refreshTemplate}})},setDataSource:function(t){var e=this;this._first=t.view()[0],this.dataSource=t,t.bind("change",function(){e._change()}),t.bind("error",function(){e._change()})},_change:function(){var t,e=this.scroller,i=this.dataSource;this._pulled&&e.pullHandled(),(this._pulled||!this._first)&&(t=i.view(),t[0]&&(this._first=t[0])),this._pulled=!1}}),$=m.Observable.extend({init:function(t){var e=this;m.Observable.fn.init.call(e),e.buffer=t.buffer,e.height=t.height,e.item=t.item,e.items=[],e.footer=t.footer,e.buffer.bind("reset",function(){e.refresh()})},refresh:function(){for(var t,e,i,n,o=this.buffer,r=this.items,s=!1;r.length;)r.pop().destroy();for(this.offset=o.offset,t=this.item,n=0;o.viewSize>n;n++){if(n===o.total()){s=!0;break}i=t(this.content(this.offset+r.length)),i.below(e),e=i,r.push(i)}this.itemCount=r.length,this.trigger("reset"),this._resize(),s&&this.trigger("endReached")},totalHeight:function(){if(!this.items[0])return 0;var t=this,e=t.items,i=e[0].top,n=e[e.length-1].bottom,o=(n-i)/t.itemCount,r=t.buffer.length-t.offset-t.itemCount;return(this.footer?this.footer.height:0)+n+r*o},batchUpdate:function(t){var e,i,n=this.height(),o=this.items,r=this.offset;if(o[0]){if(this.lastDirection)for(;o[o.length-1].bottom>t+2*n&&0!==this.offset;)this.offset--,e=o.pop(),e.update(this.content(this.offset)),e.above(o[0]),o.unshift(e);else for(;t-n>o[0].top;){if(i=this.offset+this.itemCount,i===this.buffer.total()){this.trigger("endReached");break}if(i===this.buffer.length)break;e=o.shift(),e.update(this.content(this.offset+this.itemCount)),e.below(o[o.length-1]),o.push(e),this.offset++}r!==this.offset&&this._resize()}},update:function(t){var e,i,n,o,r=this,s=this.items,a=this.height(),l=this.itemCount,c=a/2,h=(this.lastTop||0)>t,u=t-c,d=t+a+c;s[0]&&(this.lastTop=t,this.lastDirection=h,h?s[0].top>u&&s[s.length-1].bottom>d+c&&this.offset>0&&(this.offset--,e=s.pop(),i=s[0],e.update(this.content(this.offset)),s.unshift(e),e.above(i),r._resize()):d>s[s.length-1].bottom&&u-c>s[0].top&&(o=this.offset+l,o===this.buffer.total()?this.trigger("endReached"):o!==this.buffer.length&&(e=s.shift(),n=s[s.length-1],s.push(e),e.update(this.content(this.offset+this.itemCount)),r.offset++,e.below(n),r._resize())))},content:function(t){return this.buffer.at(t)},destroy:function(){this.unbind()},_resize:function(){var t=this.items,e=0,i=0,n=t[0],o=t[t.length-1];n&&(e=n.top,i=o.bottom),this.trigger("resize",{top:e,bottom:i}),this.footer&&this.footer.below(o)}});m.mobile.ui.VirtualList=$,l=m.Class.extend({init:function(e,i){var n=e.append([i],!0)[0],o=n.offsetHeight;t.extend(this,{top:0,element:n,listView:e,height:o,bottom:o})},update:function(t){this.element=this.listView.setDataItem(this.element,t)},above:function(t){t&&(this.height=this.element.offsetHeight,this.top=t.top-this.height,this.bottom=t.top,a(this.element,this.top))},below:function(t){t&&(this.height=this.element.offsetHeight,this.top=t.bottom,this.bottom=this.top+this.height,a(this.element,this.top))},destroy:function(){m.destroy(this.element),t(this.element).remove()}}),c='
',h=m.Class.extend({init:function(e){this.element=t(' ').appendTo(e.element),this._loadIcon=t(c).appendTo(this.element)},enable:function(){this.element.show(),this.height=this.element.outerHeight(!0)},disable:function(){this.element.hide(),this.height=0},below:function(t){t&&(this.top=t.bottom,this.bottom=this.height+this.top,a(this.element,this.top))}}),u=h.extend({init:function(e,i){this._loadIcon=t(c).hide(),this._loadButton=t(''+e.options.messages.loadMoreText+" ").hide(),this.element=t(' ').append(this._loadIcon).append(this._loadButton).appendTo(e.element);var n=this;this._loadButton.kendoMobileButton().data("kendoMobileButton").bind("click",function(){n._hideShowButton(),i.next()}),i.bind("resize",function(){n._showLoadButton()}),this.height=this.element.outerHeight(!0),this.disable()},_hideShowButton:function(){this._loadButton.hide(),this.element.addClass("km-scroller-refresh"),this._loadIcon.css("display","block")},_showLoadButton:function(){this._loadButton.show(),this.element.removeClass("km-scroller-refresh"),this._loadIcon.hide()}}),d=m.Class.extend({init:function(t){var e=this;this.chromeHeight=t.wrapper.children().not(t.element).outerHeight()||0,this.listView=t,this.scroller=t.scroller(),this.options=t.options,t.bind("_dataSource",function(t){e.setDataSource(t.dataSource,t.empty)}),t.bind("resize",function(){e.list.items.length&&(e.scroller.reset(),e.buffer.range(0),e.list.refresh())}),this.scroller.makeVirtual(),this.scroller.bind("scroll",function(t){e.list.update(t.scrollTop)}),this.scroller.bind("scrollEnd",function(t){e.list.batchUpdate(t.scrollTop)})},destroy:function(){this.list.unbind(),this.buffer.unbind()},setDataSource:function(e,i){var n,o,r,s,a=this,c=this.options,d=this.listView,f=d.scroller(),p=c.loadMore;if(this.dataSource=e,n=e.pageSize()||c.virtualViewSize,!n&&!i)throw Error("the DataSource does not have page size configured. Page Size setting is mandatory for the mobile listview virtual scrolling to work as expected.");this.buffer&&this.buffer.destroy(),o=new m.data.Buffer(e,Math.floor(n/2),p),r=p?new u(d,o):new h(d),this.list&&this.list.destroy(),s=new $({buffer:o,footer:r,item:function(t){return new l(d,t)},height:function(){return f.height()}}),s.bind("resize",function(){a.updateScrollerSize(),d.updateSize()}),s.bind("reset",function(){a.footer.enable()}),s.bind("endReached",function(){r.disable(),a.updateScrollerSize()}),o.bind("expand",function(){s.lastDirection=!1,s.batchUpdate(f.scrollTop)}),t.extend(this,{buffer:o,scroller:f,list:s,footer:r})},updateScrollerSize:function(){this.scroller.virtualSize(0,this.list.totalHeight()+this.chromeHeight)},refresh:function(){this.list.refresh()},reset:function(){this.buffer.range(0),this.list.refresh()}}),f=m.Class.extend({init:function(t){var e,i=this;this.listView=t,this.options=t.options,e=this,this._refreshHandler=function(t){e.refresh(t)},this._progressHandler=function(){t.showLoading()},t.bind("_dataSource",function(t){i.setDataSource(t.dataSource)})},destroy:function(){this._unbindDataSource()},reset:function(){},refresh:function(t){var i,n,o,r,s,a,l,c=t&&t.action,h=t&&t.items,u=this.listView,d=this.dataSource,f=this.options.appendOnRefresh,p=d.view(),g=d.group(),m=g&&g[0];return"itemchange"===c?(u._hasBindingTarget()||(i=u.findByDataItem(h)[0],i&&u.setDataItem(i,h[0])),e):(s="add"===c&&!m||f&&!u._filter,a="remove"===c&&!m,s?n=[]:a&&(n=u.findByDataItem(h)),u.trigger(R,{action:c||"rebind",items:h,removedItems:n,index:t&&t.index})?(this._shouldShowLoading()&&u.hideLoading(),e):("add"!==c||m?"remove"!==c||m?m?u.replaceGrouped(p):f&&!u._filter?(o=u.prepend(p),r=p):u.replace(p):(o=[],u.remove(h)):(l=p.indexOf(h[0]),l>-1&&(o=u.insertAt(h,l),r=h)),this._shouldShowLoading()&&u.hideLoading(),u.trigger(L,{ns:_,addedItems:o,addedDataItems:r}),e))},setDataSource:function(t){this.dataSource&&this._unbindDataSource(),this.dataSource=t,t.bind(V,this._refreshHandler),this._shouldShowLoading()&&this.dataSource.bind(N,this._progressHandler)},_unbindDataSource:function(){this.dataSource.unbind(V,this._refreshHandler).unbind(N,this._progressHandler)},_shouldShowLoading:function(){var t=this.options;return!t.pullToRefresh&&!t.loadMore&&!t.endlessScroll}}),p=m.Class.extend({init:function(e){var i=this,n=e.options.filterable,o="change paste",r=this;this.listView=e,this.options=n,e.element.before(B({placeholder:n.placeholder||"Search..."})),n.autoFilter!==!1&&(o+=" keyup"),this.element=e.wrapper.find(".km-search-form"),this.searchInput=e.wrapper.find("input[type=search]").closest("form").on("submit"+I,function(t){t.preventDefault()}).end().on("focus"+I,function(){i._oldFilter=i.searchInput.val()}).on(o.split(" ").join(I+" ")+I,S(this._filterChange,this)),this.clearButton=e.wrapper.find(".km-filter-reset").on(F,S(this,"_clearFilter")).hide(),this._dataSourceChange=t.proxy(this._refreshInput,this),e.bind("_dataSource",function(t){t.dataSource.bind("change",r._dataSourceChange)})},_refreshInput:function(){var t=this.listView.dataSource.filter(),e=this.listView._filter.searchInput;e.val(t&&t.filters[0].field===this.listView.options.filterable.field?t.filters[0].value:"")},_search:function(t){this._filter=!0,this.clearButton[t?"show":"hide"](),this.listView.dataSource.filter(t)},_filterChange:function(t){var e=this;"paste"==t.type&&this.options.autoFilter!==!1?setTimeout(function(){e._applyFilter()},1):this._applyFilter()},_applyFilter:function(){var t=this.options,e=this.searchInput.val(),i=e.length?{field:t.field,operator:t.operator||"startswith",ignoreCase:t.ignoreCase,value:e}:null;e!==this._oldFilter&&(this._oldFilter=e,this._search(i))},_clearFilter:function(t){this.searchInput.val(""),this._search(null),t.preventDefault()}}),g=x.extend({init:function(e,i){var n=this;x.fn.init.call(this,e,i),e=this.element,i=this.options,i.scrollTreshold&&(i.scrollThreshold=i.scrollTreshold),e.on("down",k,"_highlight").on("move up cancel",k,"_dim"),this._userEvents=new m.UserEvents(e,{fastTap:!0,filter:b,allowSelection:!0,tap:function(t){n._click(t)}}),e.css("-ms-touch-action","auto"),e.wrap(E),this.wrapper=this.element.parent(),this._headerFixer=new G(this),this._itemsCache={},this._templates(),this.virtual=i.endlessScroll||i.loadMore,this._style(),this.options.$angular&&(this.virtual||this.options.pullToRefresh)?setTimeout(t.proxy(this,"_start")):this._start()},_start:function(){var t=this.options;this.options.filterable&&(this._filter=new p(this)),this._itemBinder=this.virtual?new d(this):new f(this),this.options.pullToRefresh&&(this._pullToRefreshHandler=new q(this)),this.setDataSource(t.dataSource),this._enhanceItems(this.items()),m.notify(this,_)},events:[F,R,L,O],options:{name:"ListView",style:"",type:"flat",autoBind:!0,fixedHeaders:!1,template:"#:data#",headerTemplate:'#:value# ',appendOnRefresh:!1,loadMore:!1,endlessScroll:!1,scrollThreshold:30,pullToRefresh:!1,messages:{loadMoreText:"Press to load more",pullTemplate:"Pull to refresh",releaseTemplate:"Release to refresh",refreshTemplate:"Refreshing"},pullOffset:140,filterable:!1,virtualViewSize:null},refresh:function(){this._itemBinder.refresh()},reset:function(){this._itemBinder.reset()},setDataSource:function(t){var e=!t;this.dataSource=y.create(t),this.trigger("_dataSource",{dataSource:this.dataSource,empty:e}),this.options.autoBind&&!e&&(this.items().remove(),this.dataSource.fetch())},destroy:function(){x.fn.destroy.call(this),m.destroy(this.element),this._userEvents.destroy(),this._itemBinder&&this._itemBinder.destroy(),this.element.unwrap(),delete this.element,delete this.wrapper,delete this._userEvents},items:function(){return"group"===this.options.type?this.element.find(".km-list").children():this.element.children().not(".km-load-more")},scroller:function(){return this._scrollerInstance||(this._scrollerInstance=this.element.closest(".km-scroll-wrapper").data("kendoMobileScroller")),this._scrollerInstance},showLoading:function(){var t=this.view();t&&t.loader&&t.loader.show()},hideLoading:function(){var t=this.view();t&&t.loader&&t.loader.hide()},insertAt:function(t,e,i){var n=this;return n._renderItems(t,function(o){if(0===e?n.element.prepend(o):-1===e?n.element.append(o):n.items().eq(e-1).after(o),i)for(var r=0;o.length>r;r++)n.trigger(O,{item:o.eq(r),data:t[r],ns:_})})},append:function(t,e){return this.insertAt(t,-1,e)},prepend:function(t,e){return this.insertAt(t,0,e)},replace:function(t){return this.options.type="flat",this._angularItems("cleanup"),this.element.empty(),this._userEvents.cancel(),this._style(),this.insertAt(t,0)},replaceGrouped:function(e){this.options.type="group",this._angularItems("cleanup"),this.element.empty();var i=t(m.render(this.groupTemplate,e));this._enhanceItems(i.children("ul").children("li")),this.element.append(i),w.init(i),this._style(),this._angularItems("compile")},remove:function(t){var e=this.findByDataItem(t);this.angular("cleanup",function(){return{elements:e}}),m.destroy(e),e.remove()},findByDataItem:function(t){var e,i,n=[];for(e=0,i=t.length;i>e;e++)n[e]="[data-"+m.ns+"uid="+t[e].uid+"]";return this.element.find(n.join(","))},setDataItem:function(e,i){var n=this,o=function(o){var r=t(o[0]);m.destroy(e),n.angular("cleanup",function(){return{elements:[t(e)]}}),t(e).replaceWith(r),n.trigger(O,{item:r,data:i,ns:_})};return this._renderItems([i],o)[0]},updateSize:function(){this._size=this.getSize()},_renderItems:function(e,i){var n=t(m.render(this.template,e));return i(n),this.angular("compile",function(){return{elements:n,data:e.map(function(t){return{dataItem:t}})}}),w.init(n),this._enhanceItems(n),n},_dim:function(t){this._toggle(t,!1)},_highlight:function(t){this._toggle(t,!0)},_toggle:function(e,i){if(!(e.which>1)){var n=t(e.currentTarget),o=n.parent(),r=T(n,"role")||"",s=!r.match(j),a=e.isDefaultPrevented();s&&o.toggleClass(P,i&&!a)}},_templates:function(){var t=this.options.template,e=this.options.headerTemplate,i=' data-uid="#=arguments[0].uid || ""#"',n={},o={};typeof t===H&&(n.template=t,t="#=this.template(data)#"),this.template=S(m.template(""+t+" "),n),o.template=this.template,typeof e===H&&(o._headerTemplate=e,e="#=this._headerTemplate(data)#"),o.headerTemplate=m.template(e),this.groupTemplate=S(M,o)},_click:function(e){if(!(e.event.which>1||e.event.isDefaultPrevented())){var i,n=e.target,o=t(e.event.target),r=o.closest(m.roleSelector("button","detailbutton","backbutton")),s=m.widgetInstance(r,_),a=n.attr(m.attr("uid"));a&&(i=this.dataSource.getByUid(a)),this.trigger(F,{target:o,item:n,dataItem:i,button:s})&&e.preventDefault()}},_styleGroups:function(){var e=this.element.children();e.children("ul").addClass("km-list"),e.each(function(){var e=t(this),i=e.contents().first();e.addClass("km-group-container"),i.is("ul")||i.is("div."+A)||i.wrap(D)})},_style:function(){var t=this.options,e="group"===t.type,i=this.element,n="inset"===t.style;i.addClass("km-listview").toggleClass("km-list",!e).toggleClass("km-virtual-list",this.virtual).toggleClass("km-listinset",!e&&n).toggleClass("km-listgroup",e&&!n).toggleClass("km-listgroupinset",e&&n),i.parents(".km-listview")[0]||i.closest(".km-content").toggleClass("km-insetcontent",n),e&&this._styleGroups(),this.trigger(z)},_enhanceItems:function(e){e.each(function(){var e,i=t(this),n=!1;i.children().each(function(){e=t(this),e.is("a")?(r(e),n=!0):e.is("label")&&(s(e),n=!0)}),n||o(i)})}}),_.plugin(g)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.navbar.min",["kendo.core.min"],t)}(function(){return function(t,e){function i(i,n){var r=n.find("["+o.attr("align")+"="+i+"]");return r[0]?t('
').append(r).prependTo(n):e}function n(e){var i=e.siblings(),n=!!e.children("ul")[0],r=!!i[0]&&""===t.trim(e.text()),s=!(!o.mobile.application||!o.mobile.application.element.is(".km-android"));e.prevAll().toggleClass("km-absolute",n),e.toggleClass("km-show-title",r),e.toggleClass("km-fill-title",r&&!t.trim(e.html())),e.toggleClass("km-no-title",n),e.toggleClass("km-hide-title",s&&!i.children().is(":visible"))}var o=window.kendo,r=o.mobile,s=r.ui,a=s.Widget,l=a.extend({init:function(e,n){var o=this;a.fn.init.call(o,e,n),e=o.element,o.container().bind("show",t.proxy(this,"refresh")),e.addClass("km-navbar").wrapInner(t('
')),o.leftElement=i("left",e),o.rightElement=i("right",e),o.centerElement=e.find(".km-view-title")},options:{name:"NavBar"},title:function(t){this.element.find(o.roleSelector("view-title")).text(t),n(this.centerElement)},refresh:function(t){var e=t.view;this.title(e.options.title)},destroy:function(){a.fn.destroy.call(this),o.destroy(this.element)}});s.plugin(l)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.scrollview.min",["kendo.fx.min","kendo.data.min","kendo.draganddrop.min"],t)}(function(){return function(t,e){var i,n,o,r,s,a,l,c,h=window.kendo,u=h.mobile,d=u.ui,f=t.proxy,p=h.effects.Transition,g=h.ui.Pane,m=h.ui.PaneDimensions,v=d.DataBoundWidget,w=h.data.DataSource,_=h.data.Buffer,y=h.data.BatchBuffer,x=Math,b=x.abs,k=x.ceil,C=x.round,S=x.max,T=x.min,A=x.floor,P="change",D="changing",M="refresh",E="km-current-page",B="km-virtual-page",I="function",z="itemChange",L="cleanup",R=3,O=-1,F=0,V=1,N=-1,H=0,U=1,j=h.Class.extend({init:function(e){var i=this,n=t(" ");e.element.append(n),this._changeProxy=f(i,"_change"),this._refreshProxy=f(i,"_refresh"),e.bind(P,this._changeProxy),e.bind(M,this._refreshProxy),t.extend(i,{element:n,scrollView:e})},items:function(){return this.element.children()},_refresh:function(t){var e,i="";for(e=0;t.pageCount>e;e++)i+=" ";this.element.html(i),this.items().eq(t.page).addClass(E)},_change:function(t){this.items().removeClass(E).eq(t.page).addClass(E)},destroy:function(){this.scrollView.unbind(P,this._changeProxy),this.scrollView.unbind(M,this._refreshProxy),this.element.remove()}});h.mobile.ui.ScrollViewPager=j,i="transitionEnd",n="dragStart",o="dragEnd",r=h.Observable.extend({init:function(e,r){var s,a,l,c,u,d,f=this;h.Observable.fn.init.call(this),this.element=e,this.container=e.parent(),s=new h.ui.Movable(f.element),a=new p({axis:"x",movable:s,onEnd:function(){f.trigger(i)}}),l=new h.UserEvents(e,{fastTap:!0,start:function(t){2*b(t.x.velocity)>=b(t.y.velocity)?l.capture():l.cancel(),f.trigger(n,t),a.cancel()},allowSelection:!0,end:function(t){f.trigger(o,t)}}),c=new m({element:f.element,container:f.container}),u=c.x,u.bind(P,function(){f.trigger(P)}),d=new g({dimensions:c,userEvents:l,movable:s,elastic:!0}),t.extend(f,{duration:r&&r.duration||1,movable:s,transition:a,userEvents:l,dimensions:c,dimension:u,pane:d}),this.bind([i,n,o,P],r)},size:function(){return{width:this.dimensions.x.getSize(),height:this.dimensions.y.getSize()}},total:function(){return this.dimension.getTotal()},offset:function(){return-this.movable.x},updateDimension:function(){this.dimension.update(!0)},refresh:function(){this.dimensions.refresh()},moveTo:function(t){this.movable.moveAxis("x",-t)},transitionTo:function(t,e,i){i?this.moveTo(-t):this.transition.moveTo({location:t,duration:this.duration,ease:e})}}),h.mobile.ui.ScrollViewElasticPane=r,s=h.Observable.extend({init:function(t,e,i){var n=this;h.Observable.fn.init.call(this),n.element=t,n.pane=e,n._getPages(),this.page=0,this.pageSize=i.pageSize||1,this.contentHeight=i.contentHeight,this.enablePager=i.enablePager,this.pagerOverlay=i.pagerOverlay},scrollTo:function(t,e){this.page=t,this.pane.transitionTo(-t*this.pane.size().width,p.easeOutExpo,e)},paneMoved:function(t,e,i,n){var o,r,s=this,a=s.pane,l=a.size().width*s.pageSize,c=C,h=e?p.easeOutBack:p.easeOutExpo;t===N?c=k:t===U&&(c=A),r=c(a.offset()/l),o=S(s.minSnap,T(-r*l,s.maxSnap)),r!=s.page&&i&&i({currentPage:s.page,nextPage:r})&&(o=-s.page*a.size().width),a.transitionTo(o,h,n)},updatePage:function(){var t=this.pane,e=C(t.offset()/t.size().width);return e!=this.page?(this.page=e,!0):!1},forcePageUpdate:function(){return this.updatePage()},resizeTo:function(t){var e,i,n=this.pane,o=t.width;this.pageElements.width(o),"100%"===this.contentHeight&&(e=this.element.parent().height(),this.enablePager===!0&&(i=this.element.parent().find("ol.km-pages"),!this.pagerOverlay&&i.length&&(e-=i.outerHeight(!0))),this.element.css("height",e),this.pageElements.css("height",e)),n.updateDimension(),this._paged||(this.page=A(n.offset()/o)),this.scrollTo(this.page,!0),this.pageCount=k(n.total()/o),this.minSnap=-(this.pageCount-1)*o,this.maxSnap=0},_getPages:function(){this.pageElements=this.element.find(h.roleSelector("page")),this._paged=this.pageElements.length>0}}),h.mobile.ui.ScrollViewContent=s,a=h.Observable.extend({init:function(t,e,i){var n=this;h.Observable.fn.init.call(this),n.element=t,n.pane=e,n.options=i,n._templates(),n.page=i.page||0,n.pages=[],n._initPages(),n.resizeTo(n.pane.size()),n.pane.dimension.forceEnabled()},setDataSource:function(t){this.dataSource=w.create(t),this._buffer(),this._pendingPageRefresh=!1,this._pendingWidgetRefresh=!1},_viewShow:function(){var t=this;t._pendingWidgetRefresh&&(setTimeout(function(){t._resetPages()},0),t._pendingWidgetRefresh=!1)},_buffer:function(){var t=this.options.itemsPerPage;this.buffer&&this.buffer.destroy(),this.buffer=t>1?new y(this.dataSource,t):new _(this.dataSource,3*t),this._resizeProxy=f(this,"_onResize"),this._resetProxy=f(this,"_onReset"),this._endReachedProxy=f(this,"_onEndReached"),this.buffer.bind({resize:this._resizeProxy,reset:this._resetProxy,endreached:this._endReachedProxy})},_templates:function(){var t=this.options.template,e=this.options.emptyTemplate,i={},n={};typeof t===I&&(i.template=t,t="#=this.template(data)#"),this.template=f(h.template(t),i),typeof e===I&&(n.emptyTemplate=e,e="#=this.emptyTemplate(data)#"),this.emptyTemplate=f(h.template(e),n)},_initPages:function(){var t,e,i=this.pages,n=this.element;for(e=0;R>e;e++)t=new l(n),i.push(t);this.pane.updateDimension()},resizeTo:function(t){var e,i,n,o=this.pages,r=this.pane;for(e=0;o.length>e;e++)o[e].setWidth(t.width);"auto"===this.options.contentHeight?this.element.css("height",this.pages[1].element.height()):"100%"===this.options.contentHeight&&(i=this.element.parent().height(),this.options.enablePager===!0&&(n=this.element.parent().find("ol.km-pages"),!this.options.pagerOverlay&&n.length&&(i-=n.outerHeight(!0))),this.element.css("height",i),o[0].element.css("height",i),o[1].element.css("height",i),o[2].element.css("height",i)),r.updateDimension(),this._repositionPages(),this.width=t.width},scrollTo:function(t){var e,i=this.buffer;i.syncDataSource(),e=i.at(t),e&&(this._updatePagesContent(t),this.page=t)},paneMoved:function(t,e,i,n){var o,r=this,s=r.pane,a=s.size().width,l=s.offset(),c=Math.abs(l)>=a/3,u=e?h.effects.Transition.easeOutBack:h.effects.Transition.easeOutExpo,d=r.page+2>r.buffer.total(),f=0;t===U?0!==r.page&&(f=-1):t!==N||d?l>0&&c&&!d?f=1:0>l&&c&&0!==r.page&&(f=-1):f=1,o=r.page,f&&(o=f>0?o+1:o-1),i&&i({currentPage:r.page,nextPage:o})&&(f=0),0===f?r._cancelMove(u,n):-1===f?r._moveBackward(n):1===f&&r._moveForward(n)},updatePage:function(){var t=this.pages;return 0===this.pane.offset()?!1:(this.pane.offset()>0?(t.push(this.pages.shift()),this.page++,this.setPageContent(t[2],this.page+1)):(t.unshift(this.pages.pop()),this.page--,this.setPageContent(t[0],this.page-1)),this._repositionPages(),this._resetMovable(),!0)},forcePageUpdate:function(){var t=this.pane.offset(),e=3*this.pane.size().width/4;return b(t)>e?this.updatePage():!1},_resetMovable:function(){this.pane.moveTo(0)},_moveForward:function(t){this.pane.transitionTo(-this.width,h.effects.Transition.easeOutExpo,t)},_moveBackward:function(t){this.pane.transitionTo(this.width,h.effects.Transition.easeOutExpo,t)},_cancelMove:function(t,e){this.pane.transitionTo(0,t,e)},_resetPages:function(){this.page=this.options.page||0,this._updatePagesContent(this.page),this._repositionPages(),this.trigger("reset")},_onResize:function(){this.pageCount=k(this.dataSource.total()/this.options.itemsPerPage),this._pendingPageRefresh&&(this._updatePagesContent(this.page),this._pendingPageRefresh=!1),this.trigger("resize")},_onReset:function(){this.pageCount=k(this.dataSource.total()/this.options.itemsPerPage),this._resetPages()},_onEndReached:function(){this._pendingPageRefresh=!0},_repositionPages:function(){var t=this.pages;t[0].position(O),t[1].position(F),t[2].position(V)},_updatePagesContent:function(t){var e=this.pages,i=t||0;this.setPageContent(e[0],i-1),this.setPageContent(e[1],i),this.setPageContent(e[2],i+1)},setPageContent:function(e,i){var n=this.buffer,o=this.template,r=this.emptyTemplate,s=null;i>=0&&(s=n.at(i),t.isArray(s)&&!s.length&&(s=null)),this.trigger(L,{item:e.element}),e.content(null!==s?o(s):r({})),h.mobile.init(e.element),this.trigger(z,{item:e.element,data:s,ns:h.mobile.ui})}}),h.mobile.ui.VirtualScrollViewContent=a,l=h.Class.extend({init:function(e){this.element=t("
"),this.width=e.width(),this.element.width(this.width),e.append(this.element)},content:function(t){this.element.html(t)},position:function(t){this.element.css("transform","translate3d("+this.width*t+"px, 0, 0)")},setWidth:function(t){this.width=t,this.element.width(t)}}),h.mobile.ui.VirtualPage=l,c=v.extend({init:function(t,e){var i,n,o,l=this;v.fn.init.call(l,t,e),e=l.options,t=l.element,h.stripWhitespace(t[0]),t.wrapInner("
").addClass("km-scrollview"),this.options.enablePager&&(this.pager=new j(this),this.options.pagerOverlay&&t.addClass("km-scrollview-overlay")),l.inner=t.children().first(),l.page=0,l.inner.css("height",e.contentHeight),l.pane=new r(l.inner,{duration:this.options.duration,transitionEnd:f(this,"_transitionEnd"),dragStart:f(this,"_dragStart"),dragEnd:f(this,"_dragEnd"),change:f(this,M)}),l.bind("resize",function(){l.pane.refresh()}),l.page=e.page,i=0===this.inner.children().length,n=i?new a(l.inner,l.pane,e):new s(l.inner,l.pane,e),n.page=l.page,n.bind("reset",function(){
this._pendingPageRefresh=!1,l._syncWithContent(),l.trigger(M,{pageCount:n.pageCount,page:n.page})}),n.bind("resize",function(){l.trigger(M,{pageCount:n.pageCount,page:n.page})}),n.bind(z,function(t){l.trigger(z,t),l.angular("compile",function(){return{elements:t.item,data:[{dataItem:t.data}]}})}),n.bind(L,function(t){l.angular("cleanup",function(){return{elements:t.item}})}),l._content=n,l.setDataSource(e.dataSource),o=l.container(),o.nullObject?(l.viewInit(),l.viewShow()):o.bind("show",f(this,"viewShow")).bind("init",f(this,"viewInit"))},options:{name:"ScrollView",page:0,duration:400,velocityThreshold:.8,contentHeight:"auto",pageSize:1,itemsPerPage:1,bounceVelocityThreshold:1.6,enablePager:!0,pagerOverlay:!1,autoBind:!0,template:"",emptyTemplate:""},events:[D,P,M],destroy:function(){v.fn.destroy.call(this),h.destroy(this.element)},viewInit:function(){this.options.autoBind&&this._content.scrollTo(this._content.page,!0)},viewShow:function(){this.pane.refresh()},refresh:function(){var t=this._content;t.resizeTo(this.pane.size()),this.page=t.page,this.trigger(M,{pageCount:t.pageCount,page:t.page})},content:function(t){this.element.children().first().html(t),this._content._getPages(),this.pane.refresh()},value:function(t){var i=this.dataSource;return t?(this.scrollTo(i.indexOf(t),!0),e):i.at(this.page)},scrollTo:function(t,e){this._content.scrollTo(t,e),this._syncWithContent()},prev:function(){var t=this,i=t.page-1;t._content instanceof a?t._content.paneMoved(U,e,function(e){return t.trigger(D,e)}):i>-1&&t.scrollTo(i)},next:function(){var t=this,i=t.page+1;t._content instanceof a?t._content.paneMoved(N,e,function(e){return t.trigger(D,e)}):t._content.pageCount>i&&t.scrollTo(i)},setDataSource:function(t){if(this._content instanceof a){var e=!t;this.dataSource=w.create(t),this._content.setDataSource(this.dataSource),this.options.autoBind&&!e&&this.dataSource.fetch()}},items:function(){return this.element.find("."+B)},_syncWithContent:function(){var t,i,n=this._content.pages,o=this._content.buffer;this.page=this._content.page,t=o?o.at(this.page):e,t instanceof Array||(t=[t]),i=n?n[1].element:e,this.trigger(P,{page:this.page,element:i,data:t})},_dragStart:function(){this._content.forcePageUpdate()&&this._syncWithContent()},_dragEnd:function(t){var e=this,i=t.x.velocity,n=this.options.velocityThreshold,o=H,r=b(i)>this.options.bounceVelocityThreshold;i>n?o=U:-n>i&&(o=N),this._content.paneMoved(o,r,function(t){return e.trigger(D,t)})},_transitionEnd:function(){this._content.updatePage()&&this._syncWithContent()}}),d.plugin(c)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.switch.min",["kendo.fx.min","kendo.userevents.min"],t)}(function(){return function(t,e){function i(t,e,i){return Math.max(e,Math.min(i,t))}var n=window.kendo,o=n.mobile.ui,r=o.Widget,s=n.support,a="change",l="km-switch-on",c="km-switch-off",h="margin-left",u="km-state-active",d="km-state-disabled",f="disabled",p=s.transitions.css+"transform",g=t.proxy,m=' {0} {1} ',v=r.extend({init:function(e,i){var o,s=this;r.fn.init.call(s,e,i),i=s.options,s.wrapper=t(n.format(m,i.onLabel,i.offLabel)),s.handle=s.wrapper.find(".km-switch-handle"),s.background=s.wrapper.find(".km-switch-background"),s.wrapper.insertBefore(s.element).prepend(s.element),s._drag(),s.origin=parseInt(s.background.css(h),10),s.constrain=0,s.snapPoint=0,e=s.element[0],e.type="checkbox",s._animateBackground=!0,o=s.options.checked,null===o&&(o=e.checked),s.check(o),s.options.enable=s.options.enable&&!s.element.attr(f),s.enable(s.options.enable),s.refresh(),n.notify(s,n.mobile.ui)},refresh:function(){var t=this,e=t.handle.outerWidth(!0);t.width=t.wrapper.width(),t.constrain=t.width-e,t.snapPoint=t.constrain/2,"number"!=typeof t.origin&&(t.origin=parseInt(t.background.css(h),10)),t.background.data("origin",t.origin),t.check(t.element[0].checked)},events:[a],options:{name:"Switch",onLabel:"on",offLabel:"off",checked:null,enable:!0},check:function(t){var i=this,n=i.element[0];return t===e?n.checked:(i._position(t?i.constrain:0),n.checked=t,i.wrapper.toggleClass(l,t).toggleClass(c,!t),e)},value:function(){return this.check.apply(this,arguments)},destroy:function(){r.fn.destroy.call(this),this.userEvents.destroy()},toggle:function(){var t=this;t.check(!t.element[0].checked)},enable:function(t){var i=this.element,n=this.wrapper;e===t&&(t=!0),this.options.enable=t,t?i.removeAttr(f):i.attr(f,f),n.toggleClass(d,!t)},_resize:function(){this.refresh()},_move:function(t){var e=this;t.preventDefault(),e._position(i(e.position+t.x.delta,0,e.width-e.handle.outerWidth(!0)))},_position:function(t){var e=this;e.position=t,e.handle.css(p,"translatex("+t+"px)"),e._animateBackground&&e.background.css(h,e.origin+t)},_start:function(){this.options.enable?(this.userEvents.capture(),this.handle.addClass(u)):this.userEvents.cancel()},_stop:function(){var t=this;t.handle.removeClass(u),t._toggle(t.position>t.snapPoint)},_toggle:function(t){var e,i=this,o=i.handle,r=i.element[0],s=r.checked,h=n.mobile.application&&n.mobile.application.os.wp?100:200;i.wrapper.toggleClass(l,t).toggleClass(c,!t),i.position=e=t*i.constrain,i._animateBackground&&i.background.kendoStop(!0,!0).kendoAnimate({effects:"slideMargin",offset:e,reset:!0,reverse:!t,axis:"left",duration:h}),o.kendoStop(!0,!0).kendoAnimate({effects:"slideTo",duration:h,offset:e+"px,0",reset:!0,complete:function(){s!==t&&(r.checked=t,i.trigger(a,{checked:t}))}})},_drag:function(){var t=this;t.userEvents=new n.UserEvents(t.wrapper,{fastTap:!0,tap:function(){t.options.enable&&t._toggle(!t.element[0].checked)},start:g(t._start,t),move:g(t._move,t),end:g(t._stop,t)})}});o.plugin(v)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.tabstrip.min",["kendo.core.min"],t)}(function(){return function(t,e){function i(e){return t(''+e+" ")}var n=window.kendo,o=n.mobile.ui,r=o.Widget,s="km-state-active",a="select",l=r.extend({init:function(e,i){var n=this;r.fn.init.call(n,e,i),n.container().bind("show",t.proxy(this,"refresh")),n.element.addClass("km-tabstrip").find("a").each(n._buildButton).eq(n.options.selectedIndex).addClass(s),n.element.on("down","a","_release")},events:[a],switchTo:function(e){var i,n,o=this.element.find("a"),r=0,s=o.length;if(!isNaN(e))return this._setActiveItem(o.eq(e)),!0;for(;s>r;r++)if(i=o[r],n=i.href.replace(/(\#.+)(\?.+)$/,"$1"),-1!==n.indexOf(e,n.length-e.length))return this._setActiveItem(t(i)),!0;return!1},switchByFullUrl:function(t){var e;e=this.element.find("a[href$='"+t+"']"),this._setActiveItem(e)},clear:function(){this.currentItem().removeClass(s)},currentItem:function(){return this.element.children("."+s)},badge:function(e,n){var o,r=this.element;return isNaN(e)||(e=r.children().get(e)),e=r.find(e),o=t(e.find(".km-badge")[0]||i(n).insertAfter(e.children(".km-icon"))),n||0===n?(o.html(n),this):n===!1?(o.empty().remove(),this):o.html()},_release:function(e){if(!(e.which>1)){var i=this,n=t(e.currentTarget);n[0]!==i.currentItem()[0]&&(i.trigger(a,{item:n})?e.preventDefault():i._setActiveItem(n))}},_setActiveItem:function(t){t[0]&&(this.clear(),t.addClass(s))},_buildButton:function(){var e=t(this),o=n.attrValue(e,"icon"),r=n.attrValue(e,"badge"),s=e.find("img"),a=t(' ');e.addClass("km-button").attr(n.attr("role"),"tab").contents().not(s).wrapAll(' '),s[0]?s.addClass("km-image").prependTo(e):(e.prepend(a),o&&(a.addClass("km-"+o),(r||0===r)&&i(r).insertAfter(a)))},refresh:function(t){var e=t.view.id;e&&!this.switchTo(t.view.id)&&this.switchTo(e)},options:{name:"TabStrip",selectedIndex:0,enable:!0}});o.plugin(l)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.mobile.min",["kendo.core.min","kendo.fx.min","kendo.data.odata.min","kendo.data.xml.min","kendo.data.min","kendo.data.signalr.min","kendo.binder.min","kendo.validator.min","kendo.router.min","kendo.view.min","kendo.userevents.min","kendo.draganddrop.min","kendo.popup.min","kendo.touch.min","kendo.mobile.popover.min","kendo.mobile.loader.min","kendo.mobile.scroller.min","kendo.mobile.shim.min","kendo.mobile.view.min","kendo.mobile.modalview.min","kendo.mobile.drawer.min","kendo.mobile.splitview.min","kendo.mobile.pane.min","kendo.mobile.application.min","kendo.mobile.actionsheet.min","kendo.mobile.button.min","kendo.mobile.buttongroup.min","kendo.mobile.collapsible.min","kendo.mobile.listview.min","kendo.mobile.navbar.min","kendo.mobile.scrollview.min","kendo.mobile.switch.min","kendo.mobile.tabstrip.min","kendo.angular.min","kendo.webcomponents.min","kendo.angular2.min"],t)}(function(){"bundle all"},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.dataviz.mobile.min",["kendo.dataviz.min","kendo.mobile.min"],t)}(function(){"bundle all"},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()});
//# sourceMappingURL=kendo.dataviz.mobile.min.js.map