UNPKG

@progress/kendo-ui

Version:

This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.

1 lines 18.1 kB
module.exports=function(t){function i(e){if(n[e])return n[e].exports;var r=n[e]={exports:{},id:e,loaded:!1};return t[e].call(r.exports,r,r.exports,i),r.loaded=!0,r.exports}var n={};return i.m=t,i.c=n,i.p="",i(0)}({0:function(t,i,n){t.exports=n(882)},3:function(t,i){t.exports=function(){throw Error("define cannot be used indirect")}},860:function(t,i){t.exports=require("../../kendo.drawing")},878:function(t,i){t.exports=require("./math")},882:function(t,i,n){var e,r,s;!function(o,define){r=[n(860),n(878)],e=o,s="function"==typeof e?e.apply(i,r):e,!(void 0!==s&&(t.exports=s))}(function(){!function(t,i){function n(t,i){var n,e,r,s=this.options,o=!1;for(r=0;r<i.length;r++)e=i[r],n=t[e],I(n)&&s[e]!==n&&(s[e]=n,o=!0);return o}function e(t){return{x:t.x||0,y:t.y||0,width:t.width||0,height:t.height||0}}function r(t){if(t){var i=t;return W(i)&&(i={color:i}),i.color&&(i.color=s(i.color)),i}}function s(t){var i;return i=t!=j?new q.Color(t).toHex():t}function o(t,i){var n=i.x-t.x,e=i.y-t.y,r=q.util.deg(Math.atan2(e,n));return r}function a(t,i){return new q.Segment(new D.Point(t,i))}function h(t){if(t)return new D.Rect([t.x,t.y],[t.width,t.height])}var c,l,f,d,u,p,w,_,m,g,x,v,y,k,E,M,S,C,z,P,T,B=window.kendo,O=B.dataviz.diagram,b=B.Class,R=B.deepExtend,F=O.Point,L=O.Rect,N=O.Matrix,G=O.Utils,I=G.isNumber,W=G.isString,A=O.MatrixVector,D=B.geometry,q=B.drawing,H=q.util.defined,V=t.inArray,j="transparent",Z={none:"none",arrowStart:"ArrowStart",filledCircle:"FilledCircle",arrowEnd:"ArrowEnd"},Q=360,U="start",J="end",K="width",X="height",Y="x",$="y";O.Markers=Z,c=b.extend({init:function(t,i){this.x=t,this.y=i},toMatrix:function(){return N.scaling(this.x,this.y)},toString:function(){return B.format("scale({0},{1})",this.x,this.y)},invert:function(){return new c(1/this.x,1/this.y)}}),l=b.extend({init:function(t,i){this.x=t,this.y=i},toMatrixVector:function(){return new A(0,0,0,0,this.x,this.y)},toMatrix:function(){return N.translation(this.x,this.y)},toString:function(){return B.format("translate({0},{1})",this.x,this.y)},plus:function(t){this.x+=t.x,this.y+=t.y},times:function(t){this.x*=t,this.y*=t},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},normalize:function(){0!==this.Length&&this.times(1/this.length())},invert:function(){return new l((-this.x),(-this.y))}}),f=b.extend({init:function(t,i,n){this.x=i||0,this.y=n||0,this.angle=t},toString:function(){return this.x&&this.y?B.format("rotate({0},{1},{2})",this.angle,this.x,this.y):B.format("rotate({0})",this.angle)},toMatrix:function(){return N.rotation(this.angle,this.x,this.y)},center:function(){return new F(this.x,this.y)},invert:function(){return new f(Q-this.angle,this.x,this.y)}}),f.ZERO=new f(0),f.create=function(t){return new f(t.angle,t.x,t.y)},f.parse=function(t){var i=t.slice(1,t.length-1).split(","),n=i[0],e=i[1],r=i[2],s=new f(n,e,r);return s},d=b.extend({init:function(t,n,e,r,s,o){this.translate=new l(t,n),e!==i&&r!==i&&(this.scale=new c(e,r)),s!==i&&(this.rotate=o?new f(s,o.x,o.y):new f(s))},toString:function(){var t=function(t){return t?""+t:""};return t(this.translate)+t(this.rotate)+t(this.scale)},render:function(t){t._transform=this,t._renderTransform()},toMatrix:function(){var t=N.unit();return this.translate&&(t=t.times(this.translate.toMatrix())),this.rotate&&(t=t.times(this.rotate.toMatrix())),this.scale&&(t=t.times(this.scale.toMatrix())),t},invert:function(){var t,n,e=this.rotate?this.rotate.invert():i,r=e?e.toMatrix():N.unit(),s=this.scale?this.scale.invert():i,o=s?s.toMatrix():N.unit(),a=new F((-this.translate.x),(-this.translate.y));return a=r.times(o).apply(a),t=new l(a.x,a.y),n=new d,n.translate=t,n.rotate=e,n.scale=s,n}}),u={_setScale:function(){var t=this.options,i=this._originWidth,n=this._originHeight,e=t.width/i,r=t.height/n;I(e)||(e=1),I(r)||(r=1),this._transform.scale=new c(e,r)},_setTranslate:function(){var t=this.options,i=t.x||0,n=t.y||0;this._transform.translate=new l(i,n)},_initSize:function(){var t=this.options,i=!1;t.autoSize!==!1&&(H(t.width)||H(t.height))&&(this._measure(!0),this._setScale(),i=!0),(H(t.x)||H(t.y))&&(this._setTranslate(),i=!0),i&&this._renderTransform()},_updateSize:function(t){var i=!1;return this.options.autoSize!==!1&&this._diffNumericOptions(t,[K,X])&&(i=!0,this._measure(!0),this._setScale()),this._diffNumericOptions(t,[Y,$])&&(i=!0,this._setTranslate()),i&&this._renderTransform(),i}},p=b.extend({init:function(t){var i=this;i.options=R({},i.options,t),i.id=i.options.id,i._originSize=L.empty(),i._transform=new d},visible:function(t){return this.drawingContainer().visible(t)},redraw:function(t){t&&t.id&&(this.id=t.id)},position:function(t,n){var e=this.options;return H(t)?(H(n)?(e.x=t,e.y=n):t instanceof F&&(e.x=t.x,e.y=t.y),this._transform.translate=new l(e.x,e.y),this._renderTransform(),i):new F(e.x,e.y)},rotate:function(t,i){return H(t)&&(this._transform.rotate=new f(t,i.x,i.y),this._renderTransform()),this._transform.rotate||f.ZERO},drawingContainer:function(){return this.drawingElement},_renderTransform:function(){var t=this._transform.toMatrix();this.drawingContainer().transform(new D.Matrix(t.a,t.b,t.c,t.d,t.e,t.f))},_hover:function(){},_diffNumericOptions:n,_measure:function(t){var i,n,e;return!this._measured||t?(n=this._boundingBox()||new D.Rect,e=n.topLeft(),i=new L(e.x,e.y,n.width(),n.height()),this._originSize=i,this._originWidth=i.width,this._originHeight=i.height,this._measured=!0):i=this._originSize,i},_boundingBox:function(){return this.drawingElement.rawBBox()}}),w=p.extend({init:function(t){p.fn.init.call(this,t),t=this.options,t.fill=r(t.fill),t.stroke=r(t.stroke)},options:{stroke:{color:"gray",width:1},fill:{color:j}},fill:function(t,i){this._fill({color:s(t),opacity:i})},stroke:function(t,i,n){this._stroke({color:s(t),width:i,opacity:n})},redraw:function(t){var i,n;t&&(i=t.stroke,n=t.fill,i&&this._stroke(r(i)),n&&this._fill(r(n)),p.fn.redraw.call(this,t))},_hover:function(t){var i,n=this.drawingElement,e=this.options,s=e.hover;s&&s.fill&&(i=t?r(s.fill):e.fill,n.fill(i.color,i.opacity))},_stroke:function(t){var i,n=this.options;R(n,{stroke:t}),t=n.stroke,i=null,t.width>0&&(i={color:t.color,width:t.width,opacity:t.opacity,dashType:t.dashType}),this.drawingElement.options.set("stroke",i)},_fill:function(t){var i,n,e,r=this.options;R(r,{fill:t||{}}),i=r.fill,i.gradient?(n=i.gradient,e="radial"===n.type?q.RadialGradient:q.LinearGradient,this.drawingElement.fill(new e(n))):this.drawingElement.fill(i.color,i.opacity)}}),_=w.extend({init:function(t){t=this._textColor(t),w.fn.init.call(this,t),this._font(),this._initText(),this._initSize()},options:{fontSize:15,fontFamily:"sans-serif",stroke:{width:0},fill:{color:"black"},autoSize:!0},_initText:function(){var t=this.options;this.drawingElement=new q.Text(H(t.text)?t.text:"",new D.Point,{font:t.font}),this._fill(),this._stroke()},_textColor:function(t){return t&&t.color&&(t=R({},t,{fill:{color:t.color}})),t},_font:function(){var t,i=this.options;i.fontFamily&&H(i.fontSize)?(t=[],i.fontStyle&&t.push(i.fontStyle),i.fontWeight&&t.push(i.fontWeight),t.push(i.fontSize+(I(i.fontSize)?"px":"")),t.push(i.fontFamily),i.font=t.join(" ")):delete i.font},content:function(t){return this.drawingElement.content(t)},redraw:function(t){var i,n;t&&(i=!1,n=this.options,t=this._textColor(t),w.fn.redraw.call(this,t),(t.fontFamily||H(t.fontSize)||t.fontStyle||t.fontWeight)&&(R(n,{fontFamily:t.fontFamily,fontSize:t.fontSize,fontStyle:t.fontStyle,fontWeight:t.fontWeight}),this._font(),this.drawingElement.options.set("font",n.font),i=!0),t.text&&(this.content(t.text),i=!0),!this._updateSize(t)&&i&&this._initSize())}}),R(_.fn,u),m=w.extend({init:function(t){w.fn.init.call(this,t),this._initPath(),this._setPosition()},_setPosition:function(){var t=this.options,i=t.x,n=t.y;(H(i)||H(n))&&this.position(i||0,n||0)},redraw:function(t){t&&(w.fn.redraw.call(this,t),this._diffNumericOptions(t,[K,X])&&this._drawPath(),this._diffNumericOptions(t,[Y,$])&&this._setPosition())},_initPath:function(){var t=this.options;this.drawingElement=new q.Path({stroke:t.stroke,closed:!0}),this._fill(),this._drawPath()},_drawPath:function(){var t=this.drawingElement,i=e(this.options),n=i.width,r=i.height;t.segments.elements([a(0,0),a(n,0),a(n,r),a(0,r)])}}),g=w.extend({init:function(t){w.fn.init.call(this,t);var i=this.options.anchor;this.anchor=new D.Point(i.x,i.y),this.createElement()},options:{stroke:{color:j,width:0},fill:{color:"black"}},_transformToPath:function(t,i){var n=i.transform();return t&&n&&(t=t.transformCopy(n)),t},redraw:function(t){t&&(t.position&&(this.options.position=t.position),w.fn.redraw.call(this,t))}}),x=g.extend({options:{radius:4,anchor:{x:0,y:0}},createElement:function(){var t=this.options;this.drawingElement=new q.Circle(new D.Circle(this.anchor,t.radius),{fill:t.fill,stroke:t.stroke})},positionMarker:function(t){var i,n,e=this.options,r=e.position,s=t.segments;i=r==U?s[0]:s[s.length-1],i&&(n=this._transformToPath(i.anchor(),t),this.drawingElement.transform(D.transform().translate(n.x,n.y)))}}),v=g.extend({options:{path:"M 0 0 L 10 5 L 0 10 L 3 5 z",anchor:{x:10,y:5}},createElement:function(){var t=this.options;this.drawingElement=q.Path.parse(t.path,{fill:t.fill,stroke:t.stroke})},positionMarker:function(t){var i,n,e=this._linePoints(t),r=e.start,s=e.end,a=D.transform();r&&a.rotate(o(r,s),s),s&&(i=this.anchor,n=s.clone().translate(-i.x,-i.y),a.translate(n.x,n.y)),this.drawingElement.transform(a)},_linePoints:function(t){var i,n,e,r,s,o=this.options,a=t.segments;if(o.position==U?(e=a[0],e&&(n=e.anchor(),i=e.controlOut(),r=a[1],!i&&r&&(i=r.anchor()))):(e=a[a.length-1],e&&(n=e.anchor(),i=e.controlIn(),s=a[a.length-2],!i&&s&&(i=s.anchor()))),n)return{start:this._transformToPath(i,t),end:this._transformToPath(n,t)}}}),y={_getPath:function(t){var i=this.drawingElement;if(i instanceof q.MultiPath&&(i=t==U?i.paths[0]:i.paths[i.paths.length-1]),i&&i.segments.length)return i},_normalizeMarkerOptions:function(t){var i=t.startCap,n=t.endCap;W(i)&&(t.startCap={type:i}),W(n)&&(t.endCap={type:n})},_removeMarker:function(t){var i=this._markers[t];i&&(this.drawingContainer().remove(i.drawingElement),delete this._markers[t])},_createMarkers:function(){var t=this.options;this._normalizeMarkerOptions(t),this._markers={},this._markers[U]=this._createMarker(t.startCap,U),this._markers[J]=this._createMarker(t.endCap,J)},_createMarker:function(t,n){var e,r,s=(t||{}).type,o=this._getPath(n);return o?(s==Z.filledCircle?e=x:s==Z.arrowStart||s==Z.arrowEnd?e=v:this._removeMarker(n),e?(r=new e(R({},t,{position:n})),r.positionMarker(o),this.drawingContainer().append(r.drawingElement),r):i):(this._removeMarker(n),i)},_positionMarker:function(t){var i,n=this._markers[t];n&&(i=this._getPath(t),i?n.positionMarker(i):this._removeMarker(t))},_capMap:{start:"startCap",end:"endCap"},_redrawMarker:function(t,i,n){var e,r,s,o,a;return this._normalizeMarkerOptions(n),e=this.options,r=this._capMap[i],s=(e[r]||{}).type,o=n[r],a=!1,o?(e[r]=R({},e[r],o),o.type&&s!=o.type?(this._removeMarker(i),this._markers[i]=this._createMarker(e[r],i),a=!0):this._markers[i]&&this._markers[i].redraw(o)):t&&!this._markers[i]&&e[r]&&(this._markers[i]=this._createMarker(e[r],i),a=!0),a},_redrawMarkers:function(t,i){!this._redrawMarker(t,U,i)&&t&&this._positionMarker(U),!this._redrawMarker(t,J,i)&&t&&this._positionMarker(J)}},k=w.extend({init:function(t){w.fn.init.call(this,t),this.container=new q.Group,this._createElements(),this._initSize()},options:{autoSize:!0},drawingContainer:function(){return this.container},data:function(t){var n=this.options;return t?(n.data!=t&&(n.data=t,this._setData(t),this._initSize(),this._redrawMarkers(!0,{})),i):n.data},redraw:function(t){var i,n;t&&(w.fn.redraw.call(this,t),i=this.options,n=t.data,H(n)&&i.data!=n?(i.data=n,this._setData(n),this._updateSize(t)||this._initSize(),this._redrawMarkers(!0,t)):(this._updateSize(t),this._redrawMarkers(!1,t)))},_createElements:function(){var t=this.options;this.drawingElement=q.Path.parse(t.data||"",{stroke:t.stroke}),this._fill(),this.container.append(this.drawingElement),this._createMarkers()},_setData:function(t){var i=this.drawingElement,n=q.Path.parse(t||""),e=n.paths.slice(0);n.paths.elements([]),i.paths.elements(e)}}),R(k.fn,u),R(k.fn,y),E=w.extend({init:function(t){w.fn.init.call(this,t),this.container=new q.Group,this._initPath(),this._createMarkers()},drawingContainer:function(){return this.container},redraw:function(t){var i,n;t&&(t=t||{},i=t.from,n=t.to,i&&(this.options.from=i),n&&(this.options.to=n),i||n?(this._drawPath(),this._redrawMarkers(!0,t)):this._redrawMarkers(!1,t),w.fn.redraw.call(this,t))},_initPath:function(){var t=this.options,i=this.drawingElement=new q.Path({stroke:t.stroke});this._fill(),this._drawPath(),this.container.append(i)},_drawPath:function(){var t=this.options,i=this.drawingElement,n=t.from||new F,e=t.to||new F;i.segments.elements([a(n.x,n.y),a(e.x,e.y)])}}),R(E.fn,y),M=w.extend({init:function(t){w.fn.init.call(this,t),this.container=new q.Group,this._initPath(),this._createMarkers()},drawingContainer:function(){return this.container},points:function(t){var n=this.options;return t?(n.points=t,this._updatePath(),i):n.points},redraw:function(t){if(t){var i=t.points;w.fn.redraw.call(this,t),i&&this._pointsDiffer(i)?(this.points(i),this._redrawMarkers(!0,t)):this._redrawMarkers(!1,t)}},_initPath:function(){var t=this.options;this.drawingElement=new q.Path({stroke:t.stroke}),this._fill(),this.container.append(this.drawingElement),t.points&&this._updatePath()},_pointsDiffer:function(t){var i,n=this.options.points,e=n.length!==t.length;if(!e)for(i=0;i<t.length;i++)if(n[i].x!==t[i].x||n[i].y!==t[i].y){e=!0;break}return e},_updatePath:function(){var t,i,n=this.drawingElement,e=this.options,r=e.points,s=[];for(i=0;i<r.length;i++)t=r[i],s.push(a(t.x,t.y));n.segments.elements(s)},options:{points:[]}}),R(M.fn,y),S=p.extend({init:function(t){p.fn.init.call(this,t),this._initImage()},redraw:function(t){t&&(t.source&&this.drawingElement.src(t.source),this._diffNumericOptions(t,[K,X,Y,$])&&this.drawingElement.rect(this._rect()),p.fn.redraw.call(this,t))},_initImage:function(){var t=this.options,i=this._rect();this.drawingElement=new q.Image(t.source,i,{})},_rect:function(){var t=e(this.options),i=new D.Point(t.x,t.y),n=new D.Size(t.width,t.height);return new D.Rect(i,n)}}),C=p.extend({init:function(t){this.children=[],p.fn.init.call(this,t),this.drawingElement=new q.Group,this._initSize()},options:{autoSize:!1},append:function(t){this.drawingElement.append(t.drawingContainer()),this.children.push(t),this._childrenChange=!0},remove:function(t){this._remove(t)&&(this._childrenChange=!0)},_remove:function(t){var i=V(t,this.children);if(i>=0)return this.drawingElement.removeAt(i),this.children.splice(i,1),!0},clear:function(){this.drawingElement.clear(),this.children=[],this._childrenChange=!0},toFront:function(t){var i,n;for(n=0;n<t.length;n++)i=t[n],this._remove(i)&&this.append(i)},toBack:function(t){this._reorderChildren(t,0)},toIndex:function(t,i){this._reorderChildren(t,i)},_reorderChildren:function(t,i){var n,e,r,s,o,a=this.drawingElement,h=a.children.slice(0),c=this.children,l=I(i);for(n=0;n<t.length;n++)o=t[n],s=o.drawingContainer(),e=V(o,c),e>=0&&(h.splice(e,1),c.splice(e,1),r=l?i:i[n],h.splice(r,0,s),c.splice(r,0,o));a.clear(),a.append.apply(a,h)},redraw:function(t){t&&(this._childrenChange?(this._childrenChange=!1,this._updateSize(t)||this._initSize()):this._updateSize(t),p.fn.redraw.call(this,t))},_boundingBox:function(){var t,i,n,e,r=this.children;for(e=0;e<r.length;e++)i=r[e],i.visible()&&i._includeInBBox!==!1&&(n=i.drawingContainer().clippedBBox(null),n&&(t=t?D.Rect.union(t,n):n));return t}}),R(C.fn,u),z=C.extend({init:function(t,i){this.children=[],p.fn.init.call(this,i),this.drawingElement=new q.Layout(h(t),i),this._initSize()},rect:function(t){if(t)this.drawingElement.rect(h(t));else{var i=this.drawingElement.rect();if(i)return new L(i.origin.x,i.origin.y,i.size.width,i.size.height)}},reflow:function(){this.drawingElement.reflow()},redraw:function(t){B.deepExtend(this.drawingElement.options,t),C.fn.redraw.call(this,t)}}),P=w.extend({init:function(t){w.fn.init.call(this,t),this._initCircle(),this._initSize()},redraw:function(t){if(t){var i=this.options;t.center&&(R(i,{center:t.center}),this._center.move(i.center.x,i.center.y)),this._diffNumericOptions(t,["radius"])&&this._circle.setRadius(i.radius),this._updateSize(t),w.fn.redraw.call(this,t)}},_initCircle:function(){var t,i=this.options,n=i.width,e=i.height,r=i.radius;H(r)||(H(n)||(n=e),H(e)||(e=n),i.radius=r=Math.min(n,e)/2),t=i.center||{x:r,y:r},this._center=new D.Point(t.x,t.y),this._circle=new D.Circle(this._center,r),this.drawingElement=new q.Circle(this._circle,{stroke:i.stroke}),this._fill()}}),R(P.fn,u),T=b.extend({init:function(t,i){i=i||{},this.element=t,this.surface=q.Surface.create(t,i),B.isFunction(this.surface.translate)&&(this.translate=this._translate),this.drawingElement=new q.Group,this._viewBox=new L(0,0,i.width,i.height),this.size(this._viewBox)},bounds:function(){var t=this.drawingElement.clippedBBox();return new L(0,0,t.width(),t.height())},size:function(t){var i=this._viewBox;return H(t)&&(i.width=t.width,i.height=t.height,this.surface.setSize(t)),{width:i.width,height:i.height}},_translate:function(t,i){var n=this._viewBox;return H(t)&&H(i)&&(n.x=t,n.y=i,this.surface.translate({x:t,y:i})),{x:n.x,y:n.y}},draw:function(){this.surface.draw(this.drawingElement)},append:function(t){return this.drawingElement.append(t.drawingContainer()),this},remove:function(t){this.drawingElement.remove(t.drawingContainer())},insertBefore:function(){},clear:function(){this.drawingElement.clear()},destroy:function(i){this.surface.destroy(),i&&t(this.element).remove()}}),B.deepExtend(O,{init:function(t){B.init(t,O.ui)},diffNumericOptions:n,Element:p,Scale:c,Translation:l,Rotation:f,Circle:P,Group:C,Rectangle:m,Canvas:T,Path:k,Layout:z,Line:E,MarkerBase:g,ArrowMarker:v,CircleMarker:x,Polyline:M,CompositeTransform:d,TextBlock:_,Image:S,VisualBase:w})}(window.kendo.jQuery)},n(3))}});