From c53089a60a4bff1f9db916146ef2bf5639d1c03f Mon Sep 17 00:00:00 2001 From: kangax Date: Mon, 14 Apr 2014 13:02:15 -0400 Subject: [PATCH] Version 1.4.5 --- HEADER.js | 2 +- bower.json | 2 +- dist/fabric.js | 2 +- dist/fabric.min.js | 2 +- dist/fabric.min.js.gz | Bin 54289 -> 54289 bytes dist/fabric.require.js | 2 +- package.json | 2 +- 7 files changed, 6 insertions(+), 6 deletions(-) diff --git a/HEADER.js b/HEADER.js index 5b2ecd10..ea55080d 100644 --- a/HEADER.js +++ b/HEADER.js @@ -1,6 +1,6 @@ /*! Fabric.js Copyright 2008-2014, Printio (Juriy Zaytsev, Maxim Chernyak) */ -var fabric = fabric || { version: "1.4.4" }; +var fabric = fabric || { version: "1.4.5" }; if (typeof exports !== 'undefined') { exports.fabric = fabric; } diff --git a/bower.json b/bower.json index f31420d0..d3c1d3bf 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "fabric.js", - "version": "1.4.4", + "version": "1.4.5", "homepage": "http://fabricjs.com", "authors": [ "kangax", "Kienz" diff --git a/dist/fabric.js b/dist/fabric.js index 1796adc1..b55404fb 100644 --- a/dist/fabric.js +++ b/dist/fabric.js @@ -1,7 +1,7 @@ /* build: `node build.js modules=ALL exclude=gestures,cufon,json minifier=uglifyjs` */ /*! Fabric.js Copyright 2008-2014, Printio (Juriy Zaytsev, Maxim Chernyak) */ -var fabric = fabric || { version: "1.4.4" }; +var fabric = fabric || { version: "1.4.5" }; if (typeof exports !== 'undefined') { exports.fabric = fabric; } diff --git a/dist/fabric.min.js b/dist/fabric.min.js index 1b9e18de..29c0bf2c 100644 --- a/dist/fabric.min.js +++ b/dist/fabric.min.js @@ -1,4 +1,4 @@ -/* build: `node build.js modules=ALL exclude=gestures,cufon,json minifier=uglifyjs` *//*! Fabric.js Copyright 2008-2014, Printio (Juriy Zaytsev, Maxim Chernyak) */var fabric=fabric||{version:"1.4.4"};typeof exports!="undefined"&&(exports.fabric=fabric),typeof document!="undefined"&&typeof window!="undefined"?(fabric.document=document,fabric.window=window):(fabric.document=require("jsdom").jsdom(""),fabric.window=fabric.document.createWindow()),fabric.isTouchSupported="ontouchstart"in fabric.document.documentElement,fabric.isLikelyNode=typeof Buffer!="undefined"&&typeof window=="undefined",fabric.SHARED_ATTRIBUTES=["display","transform","fill","fill-opacity","fill-rule","opacity","stroke","stroke-dasharray","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width"],function(){function e(e,t){if(!this.__eventListeners[e])return;t?fabric.util.removeFromArray(this.__eventListeners[e],t):this.__eventListeners[e].length=0}function t(e,t){this.__eventListeners||(this.__eventListeners={});if(arguments.length===1)for(var n in e)this.on(n,e[n]);else this.__eventListeners[e]||(this.__eventListeners[e]=[]),this.__eventListeners[e].push(t);return this}function n(t,n){if(!this.__eventListeners)return;if(arguments.length===0)this.__eventListeners={};else if(arguments.length===1&&typeof arguments[0]=="object")for(var r in t)e.call(this,r,t[r]);else e.call(this,t,n);return this}function r(e,t){if(!this.__eventListeners)return;var n=this.__eventListeners[e];if(!n)return;for(var r=0,i=n.length;r-1},complexity:function(){return this.getObjects().reduce(function(e,t){return e+=t.complexity?t.complexity():0,e},0)}},function(e){var t=Math.sqrt,n=Math.atan2,r=Math.PI/180;fabric.util={removeFromArray:function(e,t){var n=e.indexOf(t);return n!==-1&&e.splice(n,1),e},getRandomInt:function(e,t){return Math.floor(Math.random()*(t-e+1))+e},degreesToRadians:function(e){return e*r},radiansToDegrees:function(e){return e/r},rotatePoint:function(e,t,n){var r=Math.sin(n),i=Math.cos(n);e.subtractEquals(t);var s=e.x*i-e.y*r,o=e.x*r+e.y*i;return(new fabric.Point(s,o)).addEquals(t)},toFixed:function(e,t){return parseFloat(Number(e).toFixed(t))},falseFunction:function(){return!1},getKlass:function(e,t){return e=fabric.util.string.camelize(e.charAt(0).toUpperCase()+e.slice(1)),fabric.util.resolveNamespace(t)[e]},resolveNamespace:function(t){if(!t)return fabric;var n=t.split("."),r=n.length,i=e||fabric.window;for(var s=0;s1?r=new fabric.PathGroup(e,t):r=e[0],typeof n!="undefined"&&r.setSourcePath(n),r},populateWithProperties:function(e,t,n){if(n&&Object.prototype.toString.call(n)==="[object Array]")for(var r=0,i=n.length;rr)r+=u[p++%h],r>l&&(r=l),e[d?"lineTo":"moveTo"](r,0),d=!d;e.restore()},createCanvasElement:function(e){return e||(e=fabric.document.createElement("canvas")),!e.getContext&&typeof G_vmlCanvasManager!="undefined"&&G_vmlCanvasManager.initElement(e),e},createImage:function(){return fabric.isLikelyNode?new(require("canvas").Image):fabric.document.createElement("img")},createAccessors:function(e){var t=e.prototype;for(var n=t.stateProperties.length;n--;){var r=t.stateProperties[n],i=r.charAt(0).toUpperCase()+r.slice(1),s="set"+i,o="get"+i;t[o]||(t[o]=function(e){return new Function('return this.get("'+e+'")')}(r)),t[s]||(t[s]=function(e){return new Function("value",'return this.set("'+e+'", value)')}(r))}},clipContext:function(e,t){t.save(),t.beginPath(),e.clipTo(t),t.clip()},multiplyTransformMatrices:function(e,t){var n=[[e[0],e[2],e[4]],[e[1],e[3],e[5]],[0,0,1]],r=[[t[0],t[2],t[4]],[t[1],t[3],t[5]],[0,0,1]],i=[];for(var s=0;s<3;s++){i[s]=[];for(var o=0;o<3;o++){var u=0;for(var a=0;a<3;a++)u+=n[s][a]*r[a][o];i[s][o]=u}}return[i[0][0],i[1][0],i[0][1],i[1][1],i[0][2],i[1][2]]},getFunctionBody:function(e){return(String(e).match(/function[^{]*\{([\s\S]*)\}/)||{})[1]},normalizePoints:function(e,t){var n=fabric.util.array.min(e,"x"),r=fabric.util.array.min(e,"y");n=n<0?n:0,r=n<0?r:0;for(var i=0,s=e.length;i0&&(t>r?t-=r:t=0,n>r?n-=r:n=0);var i=!0,s=e.getImageData(t,n,r*2||1,r*2||1);for(var o=3,u=s.data.length;o0&&f===0&&(E-=2*Math.PI);var S=Math.ceil(Math.abs(E/(Math.PI*.5+.001))),x=[];for(var T=0;T1&&(h=Math.sqrt(h),t*=h,n*=h);var p=f/t,d=a/t,v=-a/n,m=f/n;return{x0:p*r+d*i,y0:v*r+m*i,x1:p*s+d*o,y1:v*s+m*o,sinTh:a,cosTh:f}}function o(e,i,s,o,u,a,f,l){r=n.call(arguments);if(t[r])return t[r];var c=l*u,h=-f*a,p=f*u,d=l*a,v=.5*(o-s),m=8/3*Math.sin(v*.5)*Math.sin(v*.5)/Math.sin(v),g=e+Math.cos(s)-m*Math.sin(s),y=i+Math.sin(s)+m*Math.cos(s),b=e+Math.cos(o),w=i+Math.sin(o),E=b+m*Math.sin(o),S=w-m*Math.cos(o);return t[r]=[c*g+h*y,p*g+d*y,c*E+h*S,p*E+d*S,c*b+h*w,p*b+d*w],t[r]}var e={},t={},n=Array.prototype.join,r;fabric.util.drawArc=function(e,t,n,r){var s=r[0],u=r[1],a=r[2],f=r[3],l=r[4],c=r[5],h=r[6],p=i(c,h,s,u,f,l,a,t,n);for(var d=0;d=t})}function r(e,t){return i(e,t,function(e,t){return e>>0;if(n===0)return-1;var r=0;arguments.length>0&&(r=Number(arguments[1]),r!==r?r=0:r!==0&&r!==Number.POSITIVE_INFINITY&&r!==Number.NEGATIVE_INFINITY&&(r=(r>0||-1)*Math.floor(Math.abs(r))));if(r>=n)return-1;var i=r>=0?r:Math.max(n-Math.abs(r),0);for(;i>>0;n>>0;r>>0;n>>0;n>>0;i>>0,n=0,r;if(arguments.length>1)r=arguments[1];else do{if(n in this){r=this[n++];break}if(++n>=t)throw new TypeError}while(!0);for(;n/g,">")}String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^[\s\xA0]+/,"").replace(/[\s\xA0]+$/,"")}),fabric.util.string={camelize:e,capitalize:t,escapeXml:n}}(),function(){var e=Array.prototype.slice,t=Function.prototype.apply,n=function(){};Function.prototype.bind||(Function.prototype.bind=function(r){var i=this,s=e.call(arguments,1),o;return s.length?o=function(){return t.call(i,this instanceof n?this:r,s.concat(e.call(arguments)))}:o=function(){return t.call(i,this instanceof n?this:r,arguments)},n.prototype=this.prototype,o.prototype=new n,o})}(),function(){function i(){}function s(t){var n=this.constructor.superclass.prototype[t];return arguments.length>1?n.apply(this,e.call(arguments,1)):n.call(this)}function o(){function u(){this.initialize.apply(this,arguments)}var n=null,o=e.call(arguments,0);typeof o[0]=="function"&&(n=o.shift()),u.superclass=n,u.subclasses=[],n&&(i.prototype=n.prototype,u.prototype=new i,n.subclasses.push(u));for(var a=0,f=o.length;a-1?e.prototype[i]=function(e){return function(){var n=this.constructor.superclass;this.constructor.superclass=r;var i=t[e].apply(this,arguments);this.constructor.superclass=n;if(e!=="initialize")return i}}(i):e.prototype[i]=t[i],n&&(t.toString!==Object.prototype.toString&&(e.prototype.toString=t.toString),t.valueOf!==Object.prototype.valueOf&&(e.prototype.valueOf=t.valueOf))};fabric.util.createClass=o}(),function(){function t(e){var t=Array.prototype.slice.call(arguments,1),n,r,i=t.length;for(r=0;r-1?s(e,t.match(/opacity:\s*(\d?\.?\d*)/)[1]):e;for(var r in t)if(r==="opacity")s(e,t[r]);else{var i=r==="float"||r==="cssFloat"?typeof n.styleFloat=="undefined"?"cssFloat":"styleFloat":r;n[i]=t[r]}return e}var t=fabric.document.createElement("div"),n=typeof t.style.opacity=="string",r=typeof t.style.filter=="string",i=/alpha\s*\(\s*opacity\s*=\s*([^\)]+)\)/,s=function(e){return e};n?s=function(e,t){return e.style.opacity=t,e}:r&&(s=function(e,t){var n=e.style;return e.currentStyle&&!e.currentStyle.hasLayout&&(n.zoom=1),i.test(n.filter)?(t=t>=.9999?"":"alpha(opacity="+t*100+")",n.filter=n.filter.replace(i,t)):n.filter+=" alpha(opacity="+t*100+")",e}),fabric.util.setStyle=e}(),function(){function t(e){return typeof e=="string"?fabric.document.getElementById(e):e}function s(e,t){var n=fabric.document.createElement(e);for(var r in t)r==="class"?n.className=t[r]:r==="for"?n.htmlFor=t[r]:n.setAttribute(r,t[r]);return n}function o(e,t){e&&(" "+e.className+" ").indexOf(" "+t+" ")===-1&&(e.className+=(e.className?" ":"")+t)}function u(e,t,n){return typeof t=="string"&&(t=s(t,n)),e.parentNode&&e.parentNode.replaceChild(t,e),t.appendChild(e),t}function a(e,t){var n,r,i=0,s=0,o=fabric.document.documentElement,u=fabric.document.body||{scrollLeft:0,scrollTop:0};r=e;while(e&&e.parentNode&&!n)e=e.parentNode,e!==fabric.document&&fabric.util.getElementStyle(e,"position")==="fixed"&&(n=e),e!==fabric.document&&r!==t&&fabric.util.getElementStyle(e,"position")==="absolute"?(i=0,s=0):e===fabric.document?(i=u.scrollLeft||o.scrollLeft||0,s=u.scrollTop||o.scrollTop||0):(i+=e.scrollLeft||0,s+=e.scrollTop||0);return{left:i,top:s}}function f(e){var t,n=e&&e.ownerDocument,r={left:0,top:0},i={left:0,top:0},s,o={borderLeftWidth:"left",borderTopWidth:"top",paddingLeft:"left",paddingTop:"top"};if(!n)return{left:0,top:0};for(var u in o)i[o[u]]+=parseInt(l(e,u),10)||0;return t=n.documentElement,typeof e.getBoundingClientRect!="undefined"&&(r=e.getBoundingClientRect()),s=fabric.util.getScrollLeftTop(e,null),{left:r.left+s.left-(t.clientLeft||0)+i.left,top:r.top+s.top-(t.clientTop||0)+i.top}}var e=Array.prototype.slice,n,r=function(t){return e.call(t,0)};try{n=r(fabric.document.childNodes)instanceof Array}catch(i){}n||(r=function(e){var t=new Array(e.length),n=e.length;while(n--)t[n]=e[n];return t});var l;fabric.document.defaultView&&fabric.document.defaultView.getComputedStyle?l=function(e,t){return fabric.document.defaultView.getComputedStyle(e,null)[t]}:l=function(e,t){var n=e.style[t];return!n&&e.currentStyle&&(n=e.currentStyle[t]),n},function(){function n(e){return typeof e.onselectstart!="undefined"&&(e.onselectstart=fabric.util.falseFunction),t?e.style[t]="none":typeof e.unselectable=="string"&&(e.unselectable="on"),e}function r(e){return typeof e.onselectstart!="undefined"&&(e.onselectstart=null),t?e.style[t]="":typeof e.unselectable=="string"&&(e.unselectable=""),e}var e=fabric.document.documentElement.style,t="userSelect"in e?"userSelect":"MozUserSelect"in e?"MozUserSelect":"WebkitUserSelect"in e?"WebkitUserSelect":"KhtmlUserSelect"in e?"KhtmlUserSelect":"";fabric.util.makeElementUnselectable=n,fabric.util.makeElementSelectable=r}(),function(){function e(e,t){var n=fabric.document.getElementsByTagName("head")[0],r=fabric.document.createElement("script"),i=!0;r.onload=r.onreadystatechange=function(e){if(i){if(typeof this.readyState=="string"&&this.readyState!=="loaded"&&this.readyState!=="complete")return;i=!1,t(e||fabric.window.event),r=r.onload=r.onreadystatechange=null}},r.src=e,n.appendChild(r)}fabric.util.getScript=e}(),fabric.util.getById=t,fabric.util.toArray=r,fabric.util.makeElement=s,fabric.util.addClass=o,fabric.util.wrapElement=u,fabric.util.getScrollLeftTop=a,fabric.util.getElementOffset=f,fabric.util.getElementStyle=l}(),function(){function e(e,t){return e+(/\?/.test(e)?"&":"?")+t}function n(){}function r(r,i){i||(i={});var s=i.method?i.method.toUpperCase():"GET",o=i.onComplete||function(){},u=t(),a;return u.onreadystatechange=function(){u.readyState===4&&(o(u),u.onreadystatechange=n)},s==="GET"&&(a=null,typeof i.parameters=="string"&&(r=e(r,i.parameters))),u.open(s,r,!0),(s==="POST"||s==="PUT")&&u.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),u.send(a),u}var t=function(){var e=[function(){return new ActiveXObject("Microsoft.XMLHTTP")},function(){return new ActiveXObject("Msxml2.XMLHTTP")},function(){return new ActiveXObject("Msxml2.XMLHTTP.3.0")},function(){return new XMLHttpRequest}];for(var t=e.length;t--;)try{var n=e[t]();if(n)return e[t]}catch(r){}}();fabric.util.request=r}(),fabric.log=function(){},fabric.warn=function(){},typeof console!="undefined"&&["log","warn"].forEach(function(e){typeof console[e]!="undefined"&&console[e].apply&&(fabric[e]=function(){return console[e].apply(console,arguments)})}),function(){function e(e){n(function(t){e||(e={});var r=t||+(new Date),i=e.duration||500,s=r+i,o,u=e.onChange||function(){},a=e.abort||function(){return!1},f=e.easing||function(e,t,n,r){return-n*Math.cos(e/r*(Math.PI/2))+n+t},l="startValue"in e?e.startValue:0,c="endValue"in e?e.endValue:100,h=e.byValue||c-l;e.onStart&&e.onStart(),function p(t){o=t||+(new Date);var c=o>s?i:o-r;if(a()){e.onComplete&&e.onComplete();return}u(f(c,l,h,i));if(o>s){e.onComplete&&e.onComplete();return}n(p)}(r)})}function n(){return t.apply(fabric.window,arguments)}var t=fabric.window.requestAnimationFrame||fabric.window.webkitRequestAnimationFrame||fabric.window.mozRequestAnimationFrame||fabric.window.oRequestAnimationFrame||fabric.window.msRequestAnimationFrame||function(e){fabric.window.setTimeout(e,1e3/60)};fabric.util.animate=e,fabric.util.requestAnimFrame=n}(),function(){function e(e,t,n,r){return e','')}var t=e.fabric||(e.fabric={}),n=t.util.object.extend,r=t.util.string.capitalize,i=t.util.object.clone,s=t.util.toFixed,o=t.util.multiplyTransformMatrices,u={cx:"left",x:"left",r:"radius",cy:"top",y:"top",display:"visible",transform:"transformMatrix","fill-opacity":"fillOpacity","fill-rule":"fillRule","font-family":"fontFamily","font-size":"fontSize","font-style":"fontStyle","font-weight":"fontWeight","stroke-dasharray":"strokeDashArray","stroke-linecap":"strokeLineCap","stroke-linejoin":"strokeLineJoin","stroke-miterlimit":"strokeMiterLimit","stroke-opacity":"strokeOpacity","stroke-width":"strokeWidth","text-decoration":"textDecoration"},a={stroke:"strokeOpacity",fill:"fillOpacity"};t.parseTransformAttribute=function(){function e(e,t){var n=t[0];e[0]=Math.cos(n),e[1]=Math.sin(n),e[2]=-Math.sin(n),e[3]=Math.cos(n)}function n(e,t){var n=t[0],r=t.length===2?t[1]:t[0];e[0]=n,e[3]=r}function r(e,t){e[2]=t[0]}function i(e,t){e[1]=t[0]}function s(e,t){e[4]=t[0],t.length===2&&(e[5]=t[1])}var o=[1,0,0,1,0,0],u="(?:[-+]?\\d+(?:\\.\\d+)?(?:e[-+]?\\d+)?)",a="(?:\\s+,?\\s*|,\\s*)",f="(?:(skewX)\\s*\\(\\s*("+u+")\\s*\\))",l="(?:(skewY)\\s*\\(\\s*("+u+")\\s*\\))",c="(?:(rotate)\\s*\\(\\s*("+u+")(?:"+a+"("+u+")"+a+"("+u+"))?\\s*\\))",h="(?:(scale)\\s*\\(\\s*("+u+")(?:"+a+"("+u+"))?\\s*\\))",p="(?:(translate)\\s*\\(\\s*("+u+")(?:"+a+"("+u+"))?\\s*\\))",d="(?:(matrix)\\s*\\(\\s*("+u+")"+a+"("+u+")"+a+"("+u+")"+a+"("+u+")"+a+"("+u+")"+a+"("+u+")"+"\\s*\\))",v="(?:"+d+"|"+p+"|"+h+"|"+c+"|"+f+"|"+l+")",m="(?:"+v+"(?:"+a+v+")*"+")",g="^\\s*(?:"+m+"?)\\s*$",y=new RegExp(g),b=new RegExp(v,"g");return function(u){var a=o.concat(),f=[];if(!u||u&&!y.test(u))return a;u.replace(b,function(t){var u=(new RegExp(v)).exec(t).filter(function(e){return e!==""&&e!=null}),l=u[1],c=u.slice(2).map(parseFloat);switch(l){case"translate":s(a,c);break;case"rotate":e(a,c);break;case"scale":n(a,c);break;case"skewX":r(a,c);break;case"skewY":i(a,c);break;case"matrix":a=c}f.push(a.concat()),a=o.concat()});var l=f[0];while(f.length>1)f.shift(),l=t.util.multiplyTransformMatrices(l,f[0]);return l}}(),t.parseSVGDocument=function(){function s(e,t){while(e&&(e=e.parentNode))if(t.test(e.nodeName))return!0;return!1}var e=/^(path|circle|polygon|polyline|ellipse|rect|line|image|text)$/,n="(?:[-+]?\\d+(?:\\.\\d+)?(?:e[-+]?\\d+)?)",r=new RegExp("^\\s*("+n+"+)\\s*,?"+"\\s*("+n+"+)\\s*,?"+"\\s*("+n+"+)\\s*,?"+"\\s*("+n+"+)\\s*"+"$");return function(n,o,u){if(!n)return;var a=new Date,f=t.util.toArray(n.getElementsByTagName("*"));if(f.length===0){f=n.selectNodes('//*[name(.)!="svg"]');var l=[];for(var c=0,h=f.length;c-1;e=e.split(/\s+/);var n=[],r,i;if(t){r=0,i=e.length;for(;r/i,"")));if(!s||!s.documentElement)return;t.parseSVGDocument(s.documentElement,function(r,i){m.set(e,{objects:t.util.array.invoke(r,"toObject"),options:i}),n(r,i)},r)}e=e.replace(/^\n\s*/,"").trim(),m.has(e,function(r){r?m.get(e,function(e){var t=g(e);n(t.objects,t.options)}):new t.util.request(e,{method:"get",onComplete:i})})},loadSVGFromString:function(e,n,r){e=e.trim();var i;if(typeof DOMParser!="undefined"){var s=new DOMParser;s&&s.parseFromString&&(i=s.parseFromString(e,"text/xml"))}else t.window.ActiveXObject&&(i=new ActiveXObject("Microsoft.XMLDOM"),i.async="false",i.loadXML(e.replace(//i,"")));t.parseSVGDocument(i.documentElement,function(e,t){n(e,t)},r)},createSVGFontFacesMarkup:function(e){var t="";for(var n=0,r=e.length;n',"",""].join("")),t},createSVGRefElementsMarkup:function(e){var t=[];return y(t,e,"backgroundColor"),y(t,e,"overlayColor"),t.join("")}})}(typeof exports!="undefined"?exports:this),fabric.ElementsParser=function(e,t,n,r){this.elements=e,this.callback=t,this.options=n,this.reviver=r},fabric.ElementsParser.prototype.parse=function(){this.instances=new Array(this.elements.length),this.numElements=this.elements.length,this.createObjects()},fabric.ElementsParser.prototype.createObjects=function(){for(var e=0,t=this.elements.length;e"),fabric.window=fabric.document.createWindow()),fabric.isTouchSupported="ontouchstart"in fabric.document.documentElement,fabric.isLikelyNode=typeof Buffer!="undefined"&&typeof window=="undefined",fabric.SHARED_ATTRIBUTES=["display","transform","fill","fill-opacity","fill-rule","opacity","stroke","stroke-dasharray","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width"],function(){function e(e,t){if(!this.__eventListeners[e])return;t?fabric.util.removeFromArray(this.__eventListeners[e],t):this.__eventListeners[e].length=0}function t(e,t){this.__eventListeners||(this.__eventListeners={});if(arguments.length===1)for(var n in e)this.on(n,e[n]);else this.__eventListeners[e]||(this.__eventListeners[e]=[]),this.__eventListeners[e].push(t);return this}function n(t,n){if(!this.__eventListeners)return;if(arguments.length===0)this.__eventListeners={};else if(arguments.length===1&&typeof arguments[0]=="object")for(var r in t)e.call(this,r,t[r]);else e.call(this,t,n);return this}function r(e,t){if(!this.__eventListeners)return;var n=this.__eventListeners[e];if(!n)return;for(var r=0,i=n.length;r-1},complexity:function(){return this.getObjects().reduce(function(e,t){return e+=t.complexity?t.complexity():0,e},0)}},function(e){var t=Math.sqrt,n=Math.atan2,r=Math.PI/180;fabric.util={removeFromArray:function(e,t){var n=e.indexOf(t);return n!==-1&&e.splice(n,1),e},getRandomInt:function(e,t){return Math.floor(Math.random()*(t-e+1))+e},degreesToRadians:function(e){return e*r},radiansToDegrees:function(e){return e/r},rotatePoint:function(e,t,n){var r=Math.sin(n),i=Math.cos(n);e.subtractEquals(t);var s=e.x*i-e.y*r,o=e.x*r+e.y*i;return(new fabric.Point(s,o)).addEquals(t)},toFixed:function(e,t){return parseFloat(Number(e).toFixed(t))},falseFunction:function(){return!1},getKlass:function(e,t){return e=fabric.util.string.camelize(e.charAt(0).toUpperCase()+e.slice(1)),fabric.util.resolveNamespace(t)[e]},resolveNamespace:function(t){if(!t)return fabric;var n=t.split("."),r=n.length,i=e||fabric.window;for(var s=0;s1?r=new fabric.PathGroup(e,t):r=e[0],typeof n!="undefined"&&r.setSourcePath(n),r},populateWithProperties:function(e,t,n){if(n&&Object.prototype.toString.call(n)==="[object Array]")for(var r=0,i=n.length;rr)r+=u[p++%h],r>l&&(r=l),e[d?"lineTo":"moveTo"](r,0),d=!d;e.restore()},createCanvasElement:function(e){return e||(e=fabric.document.createElement("canvas")),!e.getContext&&typeof G_vmlCanvasManager!="undefined"&&G_vmlCanvasManager.initElement(e),e},createImage:function(){return fabric.isLikelyNode?new(require("canvas").Image):fabric.document.createElement("img")},createAccessors:function(e){var t=e.prototype;for(var n=t.stateProperties.length;n--;){var r=t.stateProperties[n],i=r.charAt(0).toUpperCase()+r.slice(1),s="set"+i,o="get"+i;t[o]||(t[o]=function(e){return new Function('return this.get("'+e+'")')}(r)),t[s]||(t[s]=function(e){return new Function("value",'return this.set("'+e+'", value)')}(r))}},clipContext:function(e,t){t.save(),t.beginPath(),e.clipTo(t),t.clip()},multiplyTransformMatrices:function(e,t){var n=[[e[0],e[2],e[4]],[e[1],e[3],e[5]],[0,0,1]],r=[[t[0],t[2],t[4]],[t[1],t[3],t[5]],[0,0,1]],i=[];for(var s=0;s<3;s++){i[s]=[];for(var o=0;o<3;o++){var u=0;for(var a=0;a<3;a++)u+=n[s][a]*r[a][o];i[s][o]=u}}return[i[0][0],i[1][0],i[0][1],i[1][1],i[0][2],i[1][2]]},getFunctionBody:function(e){return(String(e).match(/function[^{]*\{([\s\S]*)\}/)||{})[1]},normalizePoints:function(e,t){var n=fabric.util.array.min(e,"x"),r=fabric.util.array.min(e,"y");n=n<0?n:0,r=n<0?r:0;for(var i=0,s=e.length;i0&&(t>r?t-=r:t=0,n>r?n-=r:n=0);var i=!0,s=e.getImageData(t,n,r*2||1,r*2||1);for(var o=3,u=s.data.length;o0&&f===0&&(E-=2*Math.PI);var S=Math.ceil(Math.abs(E/(Math.PI*.5+.001))),x=[];for(var T=0;T1&&(h=Math.sqrt(h),t*=h,n*=h);var p=f/t,d=a/t,v=-a/n,m=f/n;return{x0:p*r+d*i,y0:v*r+m*i,x1:p*s+d*o,y1:v*s+m*o,sinTh:a,cosTh:f}}function o(e,i,s,o,u,a,f,l){r=n.call(arguments);if(t[r])return t[r];var c=l*u,h=-f*a,p=f*u,d=l*a,v=.5*(o-s),m=8/3*Math.sin(v*.5)*Math.sin(v*.5)/Math.sin(v),g=e+Math.cos(s)-m*Math.sin(s),y=i+Math.sin(s)+m*Math.cos(s),b=e+Math.cos(o),w=i+Math.sin(o),E=b+m*Math.sin(o),S=w-m*Math.cos(o);return t[r]=[c*g+h*y,p*g+d*y,c*E+h*S,p*E+d*S,c*b+h*w,p*b+d*w],t[r]}var e={},t={},n=Array.prototype.join,r;fabric.util.drawArc=function(e,t,n,r){var s=r[0],u=r[1],a=r[2],f=r[3],l=r[4],c=r[5],h=r[6],p=i(c,h,s,u,f,l,a,t,n);for(var d=0;d=t})}function r(e,t){return i(e,t,function(e,t){return e>>0;if(n===0)return-1;var r=0;arguments.length>0&&(r=Number(arguments[1]),r!==r?r=0:r!==0&&r!==Number.POSITIVE_INFINITY&&r!==Number.NEGATIVE_INFINITY&&(r=(r>0||-1)*Math.floor(Math.abs(r))));if(r>=n)return-1;var i=r>=0?r:Math.max(n-Math.abs(r),0);for(;i>>0;n>>0;r>>0;n>>0;n>>0;i>>0,n=0,r;if(arguments.length>1)r=arguments[1];else do{if(n in this){r=this[n++];break}if(++n>=t)throw new TypeError}while(!0);for(;n/g,">")}String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^[\s\xA0]+/,"").replace(/[\s\xA0]+$/,"")}),fabric.util.string={camelize:e,capitalize:t,escapeXml:n}}(),function(){var e=Array.prototype.slice,t=Function.prototype.apply,n=function(){};Function.prototype.bind||(Function.prototype.bind=function(r){var i=this,s=e.call(arguments,1),o;return s.length?o=function(){return t.call(i,this instanceof n?this:r,s.concat(e.call(arguments)))}:o=function(){return t.call(i,this instanceof n?this:r,arguments)},n.prototype=this.prototype,o.prototype=new n,o})}(),function(){function i(){}function s(t){var n=this.constructor.superclass.prototype[t];return arguments.length>1?n.apply(this,e.call(arguments,1)):n.call(this)}function o(){function u(){this.initialize.apply(this,arguments)}var n=null,o=e.call(arguments,0);typeof o[0]=="function"&&(n=o.shift()),u.superclass=n,u.subclasses=[],n&&(i.prototype=n.prototype,u.prototype=new i,n.subclasses.push(u));for(var a=0,f=o.length;a-1?e.prototype[i]=function(e){return function(){var n=this.constructor.superclass;this.constructor.superclass=r;var i=t[e].apply(this,arguments);this.constructor.superclass=n;if(e!=="initialize")return i}}(i):e.prototype[i]=t[i],n&&(t.toString!==Object.prototype.toString&&(e.prototype.toString=t.toString),t.valueOf!==Object.prototype.valueOf&&(e.prototype.valueOf=t.valueOf))};fabric.util.createClass=o}(),function(){function t(e){var t=Array.prototype.slice.call(arguments,1),n,r,i=t.length;for(r=0;r-1?s(e,t.match(/opacity:\s*(\d?\.?\d*)/)[1]):e;for(var r in t)if(r==="opacity")s(e,t[r]);else{var i=r==="float"||r==="cssFloat"?typeof n.styleFloat=="undefined"?"cssFloat":"styleFloat":r;n[i]=t[r]}return e}var t=fabric.document.createElement("div"),n=typeof t.style.opacity=="string",r=typeof t.style.filter=="string",i=/alpha\s*\(\s*opacity\s*=\s*([^\)]+)\)/,s=function(e){return e};n?s=function(e,t){return e.style.opacity=t,e}:r&&(s=function(e,t){var n=e.style;return e.currentStyle&&!e.currentStyle.hasLayout&&(n.zoom=1),i.test(n.filter)?(t=t>=.9999?"":"alpha(opacity="+t*100+")",n.filter=n.filter.replace(i,t)):n.filter+=" alpha(opacity="+t*100+")",e}),fabric.util.setStyle=e}(),function(){function t(e){return typeof e=="string"?fabric.document.getElementById(e):e}function s(e,t){var n=fabric.document.createElement(e);for(var r in t)r==="class"?n.className=t[r]:r==="for"?n.htmlFor=t[r]:n.setAttribute(r,t[r]);return n}function o(e,t){e&&(" "+e.className+" ").indexOf(" "+t+" ")===-1&&(e.className+=(e.className?" ":"")+t)}function u(e,t,n){return typeof t=="string"&&(t=s(t,n)),e.parentNode&&e.parentNode.replaceChild(t,e),t.appendChild(e),t}function a(e,t){var n,r,i=0,s=0,o=fabric.document.documentElement,u=fabric.document.body||{scrollLeft:0,scrollTop:0};r=e;while(e&&e.parentNode&&!n)e=e.parentNode,e!==fabric.document&&fabric.util.getElementStyle(e,"position")==="fixed"&&(n=e),e!==fabric.document&&r!==t&&fabric.util.getElementStyle(e,"position")==="absolute"?(i=0,s=0):e===fabric.document?(i=u.scrollLeft||o.scrollLeft||0,s=u.scrollTop||o.scrollTop||0):(i+=e.scrollLeft||0,s+=e.scrollTop||0);return{left:i,top:s}}function f(e){var t,n=e&&e.ownerDocument,r={left:0,top:0},i={left:0,top:0},s,o={borderLeftWidth:"left",borderTopWidth:"top",paddingLeft:"left",paddingTop:"top"};if(!n)return{left:0,top:0};for(var u in o)i[o[u]]+=parseInt(l(e,u),10)||0;return t=n.documentElement,typeof e.getBoundingClientRect!="undefined"&&(r=e.getBoundingClientRect()),s=fabric.util.getScrollLeftTop(e,null),{left:r.left+s.left-(t.clientLeft||0)+i.left,top:r.top+s.top-(t.clientTop||0)+i.top}}var e=Array.prototype.slice,n,r=function(t){return e.call(t,0)};try{n=r(fabric.document.childNodes)instanceof Array}catch(i){}n||(r=function(e){var t=new Array(e.length),n=e.length;while(n--)t[n]=e[n];return t});var l;fabric.document.defaultView&&fabric.document.defaultView.getComputedStyle?l=function(e,t){return fabric.document.defaultView.getComputedStyle(e,null)[t]}:l=function(e,t){var n=e.style[t];return!n&&e.currentStyle&&(n=e.currentStyle[t]),n},function(){function n(e){return typeof e.onselectstart!="undefined"&&(e.onselectstart=fabric.util.falseFunction),t?e.style[t]="none":typeof e.unselectable=="string"&&(e.unselectable="on"),e}function r(e){return typeof e.onselectstart!="undefined"&&(e.onselectstart=null),t?e.style[t]="":typeof e.unselectable=="string"&&(e.unselectable=""),e}var e=fabric.document.documentElement.style,t="userSelect"in e?"userSelect":"MozUserSelect"in e?"MozUserSelect":"WebkitUserSelect"in e?"WebkitUserSelect":"KhtmlUserSelect"in e?"KhtmlUserSelect":"";fabric.util.makeElementUnselectable=n,fabric.util.makeElementSelectable=r}(),function(){function e(e,t){var n=fabric.document.getElementsByTagName("head")[0],r=fabric.document.createElement("script"),i=!0;r.onload=r.onreadystatechange=function(e){if(i){if(typeof this.readyState=="string"&&this.readyState!=="loaded"&&this.readyState!=="complete")return;i=!1,t(e||fabric.window.event),r=r.onload=r.onreadystatechange=null}},r.src=e,n.appendChild(r)}fabric.util.getScript=e}(),fabric.util.getById=t,fabric.util.toArray=r,fabric.util.makeElement=s,fabric.util.addClass=o,fabric.util.wrapElement=u,fabric.util.getScrollLeftTop=a,fabric.util.getElementOffset=f,fabric.util.getElementStyle=l}(),function(){function e(e,t){return e+(/\?/.test(e)?"&":"?")+t}function n(){}function r(r,i){i||(i={});var s=i.method?i.method.toUpperCase():"GET",o=i.onComplete||function(){},u=t(),a;return u.onreadystatechange=function(){u.readyState===4&&(o(u),u.onreadystatechange=n)},s==="GET"&&(a=null,typeof i.parameters=="string"&&(r=e(r,i.parameters))),u.open(s,r,!0),(s==="POST"||s==="PUT")&&u.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),u.send(a),u}var t=function(){var e=[function(){return new ActiveXObject("Microsoft.XMLHTTP")},function(){return new ActiveXObject("Msxml2.XMLHTTP")},function(){return new ActiveXObject("Msxml2.XMLHTTP.3.0")},function(){return new XMLHttpRequest}];for(var t=e.length;t--;)try{var n=e[t]();if(n)return e[t]}catch(r){}}();fabric.util.request=r}(),fabric.log=function(){},fabric.warn=function(){},typeof console!="undefined"&&["log","warn"].forEach(function(e){typeof console[e]!="undefined"&&console[e].apply&&(fabric[e]=function(){return console[e].apply(console,arguments)})}),function(){function e(e){n(function(t){e||(e={});var r=t||+(new Date),i=e.duration||500,s=r+i,o,u=e.onChange||function(){},a=e.abort||function(){return!1},f=e.easing||function(e,t,n,r){return-n*Math.cos(e/r*(Math.PI/2))+n+t},l="startValue"in e?e.startValue:0,c="endValue"in e?e.endValue:100,h=e.byValue||c-l;e.onStart&&e.onStart(),function p(t){o=t||+(new Date);var c=o>s?i:o-r;if(a()){e.onComplete&&e.onComplete();return}u(f(c,l,h,i));if(o>s){e.onComplete&&e.onComplete();return}n(p)}(r)})}function n(){return t.apply(fabric.window,arguments)}var t=fabric.window.requestAnimationFrame||fabric.window.webkitRequestAnimationFrame||fabric.window.mozRequestAnimationFrame||fabric.window.oRequestAnimationFrame||fabric.window.msRequestAnimationFrame||function(e){fabric.window.setTimeout(e,1e3/60)};fabric.util.animate=e,fabric.util.requestAnimFrame=n}(),function(){function e(e,t,n,r){return e','')}var t=e.fabric||(e.fabric={}),n=t.util.object.extend,r=t.util.string.capitalize,i=t.util.object.clone,s=t.util.toFixed,o=t.util.multiplyTransformMatrices,u={cx:"left",x:"left",r:"radius",cy:"top",y:"top",display:"visible",transform:"transformMatrix","fill-opacity":"fillOpacity","fill-rule":"fillRule","font-family":"fontFamily","font-size":"fontSize","font-style":"fontStyle","font-weight":"fontWeight","stroke-dasharray":"strokeDashArray","stroke-linecap":"strokeLineCap","stroke-linejoin":"strokeLineJoin","stroke-miterlimit":"strokeMiterLimit","stroke-opacity":"strokeOpacity","stroke-width":"strokeWidth","text-decoration":"textDecoration"},a={stroke:"strokeOpacity",fill:"fillOpacity"};t.parseTransformAttribute=function(){function e(e,t){var n=t[0];e[0]=Math.cos(n),e[1]=Math.sin(n),e[2]=-Math.sin(n),e[3]=Math.cos(n)}function n(e,t){var n=t[0],r=t.length===2?t[1]:t[0];e[0]=n,e[3]=r}function r(e,t){e[2]=t[0]}function i(e,t){e[1]=t[0]}function s(e,t){e[4]=t[0],t.length===2&&(e[5]=t[1])}var o=[1,0,0,1,0,0],u="(?:[-+]?\\d+(?:\\.\\d+)?(?:e[-+]?\\d+)?)",a="(?:\\s+,?\\s*|,\\s*)",f="(?:(skewX)\\s*\\(\\s*("+u+")\\s*\\))",l="(?:(skewY)\\s*\\(\\s*("+u+")\\s*\\))",c="(?:(rotate)\\s*\\(\\s*("+u+")(?:"+a+"("+u+")"+a+"("+u+"))?\\s*\\))",h="(?:(scale)\\s*\\(\\s*("+u+")(?:"+a+"("+u+"))?\\s*\\))",p="(?:(translate)\\s*\\(\\s*("+u+")(?:"+a+"("+u+"))?\\s*\\))",d="(?:(matrix)\\s*\\(\\s*("+u+")"+a+"("+u+")"+a+"("+u+")"+a+"("+u+")"+a+"("+u+")"+a+"("+u+")"+"\\s*\\))",v="(?:"+d+"|"+p+"|"+h+"|"+c+"|"+f+"|"+l+")",m="(?:"+v+"(?:"+a+v+")*"+")",g="^\\s*(?:"+m+"?)\\s*$",y=new RegExp(g),b=new RegExp(v,"g");return function(u){var a=o.concat(),f=[];if(!u||u&&!y.test(u))return a;u.replace(b,function(t){var u=(new RegExp(v)).exec(t).filter(function(e){return e!==""&&e!=null}),l=u[1],c=u.slice(2).map(parseFloat);switch(l){case"translate":s(a,c);break;case"rotate":e(a,c);break;case"scale":n(a,c);break;case"skewX":r(a,c);break;case"skewY":i(a,c);break;case"matrix":a=c}f.push(a.concat()),a=o.concat()});var l=f[0];while(f.length>1)f.shift(),l=t.util.multiplyTransformMatrices(l,f[0]);return l}}(),t.parseSVGDocument=function(){function s(e,t){while(e&&(e=e.parentNode))if(t.test(e.nodeName))return!0;return!1}var e=/^(path|circle|polygon|polyline|ellipse|rect|line|image|text)$/,n="(?:[-+]?\\d+(?:\\.\\d+)?(?:e[-+]?\\d+)?)",r=new RegExp("^\\s*("+n+"+)\\s*,?"+"\\s*("+n+"+)\\s*,?"+"\\s*("+n+"+)\\s*,?"+"\\s*("+n+"+)\\s*"+"$");return function(n,o,u){if(!n)return;var a=new Date,f=t.util.toArray(n.getElementsByTagName("*"));if(f.length===0){f=n.selectNodes('//*[name(.)!="svg"]');var l=[];for(var c=0,h=f.length;c-1;e=e.split(/\s+/);var n=[],r,i;if(t){r=0,i=e.length;for(;r/i,"")));if(!s||!s.documentElement)return;t.parseSVGDocument(s.documentElement,function(r,i){m.set(e,{objects:t.util.array.invoke(r,"toObject"),options:i}),n(r,i)},r)}e=e.replace(/^\n\s*/,"").trim(),m.has(e,function(r){r?m.get(e,function(e){var t=g(e);n(t.objects,t.options)}):new t.util.request(e,{method:"get",onComplete:i})})},loadSVGFromString:function(e,n,r){e=e.trim();var i;if(typeof DOMParser!="undefined"){var s=new DOMParser;s&&s.parseFromString&&(i=s.parseFromString(e,"text/xml"))}else t.window.ActiveXObject&&(i=new ActiveXObject("Microsoft.XMLDOM"),i.async="false",i.loadXML(e.replace(//i,"")));t.parseSVGDocument(i.documentElement,function(e,t){n(e,t)},r)},createSVGFontFacesMarkup:function(e){var t="";for(var n=0,r=e.length;n',"",""].join("")),t},createSVGRefElementsMarkup:function(e){var t=[];return y(t,e,"backgroundColor"),y(t,e,"overlayColor"),t.join("")}})}(typeof exports!="undefined"?exports:this),fabric.ElementsParser=function(e,t,n,r){this.elements=e,this.callback=t,this.options=n,this.reviver=r},fabric.ElementsParser.prototype.parse=function(){this.instances=new Array(this.elements.length),this.numElements=this.elements.length,this.createObjects()},fabric.ElementsParser.prototype.createObjects=function(){for(var e=0,t=this.elements.length;ee.x&&this.y>e.y},gte:function(e){return this.x>=e.x&&this.y>=e.y},lerp:function(e,t){return new n(this.x+(e.x-this.x)*t,this.y+(e.y-this.y)*t)},distanceFrom:function(e){var t=this.x-e.x,n=this.y-e.y;return Math.sqrt(t*t+n*n)},midPointFrom:function(e){return new n(this.x+(e.x-this.x)/2,this.y+(e.y-this.y)/2)},min:function(e){return new n(Math.min(this.x,e.x),Math.min(this.y,e.y))},max:function(e){return new n(Math.max(this.x,e.x),Math.max(this.y,e.y))},toString:function(){return this.x+","+this.y},setXY:function(e,t){this.x=e,this.y=t},setFromPoint:function(e){this.x=e.x,this.y=e.y},swap:function(e){var t=this.x,n=this.y;this.x=e.x,this.y=e.y,e.x=t,e.y=n}}}(typeof exports!="undefined"?exports:this),function(e){"use strict";function n(e){this.status=e,this.points=[]}var t=e.fabric||(e.fabric={});if(t.Intersection){t.warn("fabric.Intersection is already defined");return}t.Intersection=n,t.Intersection.prototype={appendPoint:function(e){this.points.push(e)},appendPoints:function(e){this.points=this.points.concat(e)}},t.Intersection.intersectLineLine=function(e,r,i,s){var o,u=(s.x-i.x)*(e.y-i.y)-(s.y-i.y)*(e.x-i.x),a=(r.x-e.x)*(e.y-i.y)-(r.y-e.y)*(e.x-i.x),f=(s.y-i.y)*(r.x-e.x)-(s.x-i.x)*(r.y-e.y);if(f!==0){var l=u/f,c=a/f;0<=l&&l<=1&&0<=c&&c<=1?(o=new n("Intersection"),o.points.push(new t.Point(e.x+l*(r.x-e.x),e.y+l*(r.y-e.y)))):o=new n}else u===0||a===0?o=new n("Coincident"):o=new n("Parallel");return o},t.Intersection.intersectLinePolygon=function(e,t,r){var i=new n,s=r.length;for(var o=0;o0&&(i.status="Intersection"),i},t.Intersection.intersectPolygonPolygon=function(e,t){var r=new n,i=e.length;for(var s=0;s0&&(r.status="Intersection"),r},t.Intersection.intersectPolygonRectangle=function(e,r,i){var s=r.min(i),o=r.max(i),u=new t.Point(o.x,s.y),a=new t.Point(s.x,o.y),f=n.intersectLinePolygon(s,u,e),l=n.intersectLinePolygon(u,o,e),c=n.intersectLinePolygon(o,a,e),h=n.intersectLinePolygon(a,s,e),p=new n;return p.appendPoints(f.points),p.appendPoints(l.points),p.appendPoints(c.points),p.appendPoints(h.points),p.points.length>0&&(p.status="Intersection"),p}}(typeof exports!="undefined"?exports:this),function(e){"use strict";function n(e){e?this._tryParsingColor(e):this.setSource([0,0,0,1])}function r(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*6*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}var t=e.fabric||(e.fabric={});if(t.Color){t.warn("fabric.Color is already defined.");return}t.Color=n,t.Color.prototype={_tryParsingColor:function(e){var t;e in n.colorNameMap&&(e=n.colorNameMap[e]),t=n.sourceFromHex(e),t||(t=n.sourceFromRgb(e)),t||(t=n.sourceFromHsl(e)),t&&this.setSource(t)},_rgbToHsl:function(e,n,r){e/=255,n/=255,r/=255;var i,s,o,u=t.util.array.max([e,n,r]),a=t.util.array.min([e,n,r]);o=(u+a)/2;if(u===a)i=s=0;else{var f=u-a;s=o>.5?f/(2-u-a):f/(u+a);switch(u){case e:i=(n-r)/f+(n']:this.type==="radial"&&(r=["']);for(var i=0;i');return r.push(this.type==="linear"?"":""),r.join("")},toLive:function(e){var t;if(!this.type)return;this.type==="linear"?t=e.createLinearGradient(this.coords.x1,this.coords.y1,this.coords.x2,this.coords.y2):this.type==="radial"&&(t=e.createRadialGradient(this.coords.x1,this.coords.y1,this.coords.r1,this.coords.x2,this.coords.y2,this.coords.r2));for(var n=0,r=this.colorStops.length;n'+''+""},toLive:function(e){var t=typeof this.source=="function"?this.source():this.source;if(!t)return"";if(typeof t.src!="undefined"){if(!t.complete)return"";if(t.naturalWidth===0||t.naturalHeight===0)return""}return e.createPattern(t,this.repeat)}}),function(e){"use strict";var t=e.fabric||(e.fabric={});if(t.Shadow){t.warn("fabric.Shadow is already defined.");return}t.Shadow=t.util.createClass({color:"rgb(0,0,0)",blur:0,offsetX:0,offsetY:0,affectStroke:!1,includeDefaultValues:!0,initialize:function(e){typeof e=="string"&&(e=this._parseShadow(e));for(var n in e)this[n]=e[n];this.id=t.Object.__uid++},_parseShadow:function(e){var n=e.trim(),r=t.Shadow.reOffsetsAndBlur.exec(n)||[],i=n.replace(t.Shadow.reOffsetsAndBlur,"")||"rgb(0,0,0)";return{color:i.trim(),offsetX:parseInt(r[1],10)||0,offsetY:parseInt(r[2],10)||0,blur:parseInt(r[3],10)||0}},toString:function(){return[this.offsetX,this.offsetY,this.blur,this.color].join("px ")},toSVG:function(e){var t="SourceAlpha";return e&&(e.fill===this.color||e.stroke===this.color)&&(t="SourceGraphic"),''+''+''+""+""+''+""+""},toObject:function(){if(this.includeDefaultValues)return{color:this.color,blur:this.blur,offsetX:this.offsetX,offsetY:this.offsetY};var e={},n=t.Shadow.prototype;return this.color!==n.color&&(e.color=this.color),this.blur!==n.blur&&(e.blur=this.blur),this.offsetX!==n.offsetX&&(e.offsetX=this.offsetX),this.offsetY!==n.offsetY&&(e.offsetY=this.offsetY),e}}),t.Shadow.reOffsetsAndBlur=/(?:\s|^)(-?\d+(?:px)?(?:\s?|$))?(-?\d+(?:px)?(?:\s?|$))?(\d+(?:px)?)?(?:\s?|$)(?:$|\s)/}(typeof exports!="undefined"?exports:this),function(){"use strict";if(fabric.StaticCanvas){fabric.warn("fabric.StaticCanvas is already defined.");return}var e=fabric.util.object.extend,t=fabric.util.getElementOffset,n=fabric.util.removeFromArray,r=new Error("Could not initialize `canvas` element");fabric.StaticCanvas=fabric.util.createClass({initialize:function(e,t){t||(t={}),this._initStatic(e,t),fabric.StaticCanvas.activeInstance=this},backgroundColor:"",backgroundImage:null,overlayColor:"",overlayImage:null,includeDefaultValues:!0,stateful:!0,renderOnAddRemove:!0,clipTo:null,controlsAboveOverlay:!1,allowTouchScrolling:!1,onBeforeScaleRotate:function(){},_initStatic:function(e,t){this._objects=[],this._createLowerCanvas(e),this._initOptions(t),t.overlayImage&&this.setOverlayImage(t.overlayImage,this.renderAll.bind(this)),t.backgroundImage&&this.setBackgroundImage(t.backgroundImage,this.renderAll.bind(this)),t.backgroundColor&&this.setBackgroundColor(t.backgroundColor,this.renderAll.bind(this)),t.overlayColor&&this.setOverlayColor(t.overlayColor,this.renderAll.bind(this)),this.calcOffset()},calcOffset:function(){return this._offset=t(this.lowerCanvasEl),this},setOverlayImage:function(e,t,n){return this.__setBgOverlayImage("overlayImage",e,t,n)},setBackgroundImage:function(e,t,n){return this.__setBgOverlayImage("backgroundImage",e,t,n)},setOverlayColor:function(e,t){return this.__setBgOverlayColor("overlayColor",e,t)},setBackgroundColor:function(e,t){return this.__setBgOverlayColor("backgroundColor",e,t)},__setBgOverlayImage:function(e,t,n,r){return typeof t=="string"?fabric.util.loadImage(t,function(t){this[e]=new fabric.Image(t,r),n&&n()},this):(this[e]=t,n&&n()),this},__setBgOverlayColor:function(e,t,n){if(t.source){var r=this;fabric.util.loadImage(t.source,function(i){r[e]=new fabric.Pattern({source:i,repeat:t.repeat,offsetX:t.offsetX,offsetY:t.offsetY}),n&&n()})}else this[e]=t,n&&n();return this},_createCanvasElement:function(){var e=fabric.document.createElement("canvas");e.style||(e.style={});if(!e)throw r;return this._initCanvasElement(e),e},_initCanvasElement:function(e){fabric.util.createCanvasElement(e);if(typeof e.getContext=="undefined")throw r},_initOptions:function(e){for(var t in e)this[t]=e[t];this.width=this.width||parseInt(this.lowerCanvasEl.width,10)||0,this.height=this.height||parseInt(this.lowerCanvasEl.height,10)||0;if(!this.lowerCanvasEl.style)return;this.lowerCanvasEl.width=this.width,this.lowerCanvasEl.height=this.height,this.lowerCanvasEl.style.width=this.width+"px",this.lowerCanvasEl.style.height=this.height+"px"},_createLowerCanvas:function(e){this.lowerCanvasEl=fabric.util.getById(e)||this._createCanvasElement(),this._initCanvasElement(this.lowerCanvasEl),fabric.util.addClass(this.lowerCanvasEl,"lower-canvas"),this.interactive&&this._applyCanvasStyle(this.lowerCanvasEl),this.contextContainer=this.lowerCanvasEl.getContext("2d")},getWidth:function(){return this.width},getHeight:function(){return this.height},setWidth:function(e){return this._setDimension("width",e)},setHeight:function(e){return this._setDimension("height",e)},setDimensions:function(e){for(var t in e)this._setDimension(t,e[t]);return this},_setDimension:function(e,t){return this.lowerCanvasEl[e]=t,this.lowerCanvasEl.style[e]=t+"px",this.upperCanvasEl&&(this.upperCanvasEl[e]=t,this.upperCanvasEl.style[e]=t+"px"),this.cacheCanvasEl&&(this.cacheCanvasEl[e]=t),this.wrapperEl&&(this.wrapperEl.style[e]=t+"px"),this[e]=t,this.calcOffset(),this.renderAll(),this},getElement:function(){return this.lowerCanvasEl},getActiveObject:function(){return null},getActiveGroup:function(){return null},_draw:function(e,t){if(!t)return;if(this.controlsAboveOverlay){var n=t.hasBorders,r=t.hasControls;t.hasBorders=t.hasControls=!1,t.render(e),t.hasBorders=n,t.hasControls=r}else t.render(e)},_onObjectAdded:function(e){this.stateful&&e.setupState(),e.setCoords(),e.canvas=this,this.fire("object:added",{target:e}),e.fire("added")},_onObjectRemoved:function(e){this.getActiveObject()===e&&(this.fire("before:selection:cleared",{target:e}),this._discardActiveObject(),this.fire("selection:cleared")),this.fire("object:removed",{target:e}),e.fire("removed")},clearContext:function(e){return e.clearRect(0,0,this.width,this.height),this},getContext:function(){return this.contextContainer},clear:function(){return this._objects.length=0,this.discardActiveGroup&&this.discardActiveGroup(),this.discardActiveObject&&this.discardActiveObject(),this.clearContext(this.contextContainer),this.contextTop&&this.clearContext(this.contextTop),this.fire("canvas:cleared"),this.renderAll(),this},renderAll:function(e){var t=this[e===!0&&this.interactive?"contextTop":"contextContainer"],n=this.getActiveGroup();return this.contextTop&&this.selection&&!this._groupSelector&&this.clearContext(this.contextTop),e||this.clearContext(t),this.fire("before:render"),this.clipTo&&fabric.util.clipContext(this,t),this._renderBackground(t),this._renderObjects(t,n),this._renderActiveGroup(t,n),this.clipTo&&t.restore(),this._renderOverlay(t),this.controlsAboveOverlay&&this.interactive&&this.drawControls(t),this.fire("after:render"),this},_renderObjects:function(e,t){var n,r;if(!t)for(n=0,r=this._objects.length;n"),n.join("")},_setSVGPreamble:function(e,t){t.suppressPreamble||e.push('','\n')},_setSVGHeader:function(e,t){e.push("',"Created with Fabric.js ",fabric.version,"","",fabric.createSVGFontFacesMarkup(this.getObjects()),fabric.createSVGRefElementsMarkup(this),"")},_setSVGObjects:function(e,t){var n=this.getActiveGroup();n&&this.discardActiveGroup();for(var r=0,i=this.getObjects(),s=i.length;r"):this[t]&&t==="overlayColor"&&e.push('")},sendToBack:function(e){return n(this._objects,e),this._objects.unshift(e),this.renderAll&&this.renderAll()},bringToFront:function(e){return n(this._objects,e),this._objects.push(e),this.renderAll&&this.renderAll()},sendBackwards:function(e,t){var r=this._objects.indexOf(e);if(r!==0){var i=this._findNewLowerIndex(e,r,t);n(this._objects,e),this._objects.splice(i,0,e),this.renderAll&&this.renderAll()}return this},_findNewLowerIndex:function(e,t,n){var r;if(n){r=t;for(var i=t-1;i>=0;--i){var s=e.intersectsWithObject(this._objects[i])||e.isContainedWithinObject(this._objects[i])||this._objects[i].isContainedWithinObject(e);if(s){r=i;break}}}else r=t-1;return r},bringForward:function(e,t){var r=this._objects.indexOf(e);if(r!==this._objects.length-1){var i=this._findNewUpperIndex(e,r,t);n(this._objects,e),this._objects.splice(i,0,e),this.renderAll&&this.renderAll()}return this},_findNewUpperIndex:function(e,t,n){var r;if(n){r=t;for(var i=t+1;i"}}),e(fabric.StaticCanvas.prototype,fabric.Observable),e(fabric.StaticCanvas.prototype,fabric.Collection),e(fabric.StaticCanvas.prototype,fabric.DataURLExporter),e(fabric.StaticCanvas,{EMPTY_JSON:'{"objects": [], "background": "white"}',supports:function(e){var t=fabric.util.createCanvasElement();if(!t||!t.getContext)return null;var n=t.getContext("2d");if(!n)return null;switch(e){case"getImageData":return typeof n.getImageData!="undefined";case"setLineDash":return typeof n.setLineDash!="undefined";case"toDataURL":return typeof t.toDataURL!="undefined";case"toDataURLWithQuality":try{return t.toDataURL("image/jpeg",0),!0}catch(r){}return!1;default:return null}}}),fabric.StaticCanvas.prototype.toJSON=fabric.StaticCanvas.prototype.toObject}(),fabric.BaseBrush=fabric.util.createClass({color:"rgb(0, 0, 0)",width:1,shadow:null,strokeLineCap:"round",strokeLineJoin:"round",setShadow:function(e){return this.shadow=new fabric.Shadow(e),this},_setBrushStyles:function(){var e=this.canvas.contextTop;e.strokeStyle=this.color,e.lineWidth=this.width,e.lineCap=this.strokeLineCap,e.lineJoin=this.strokeLineJoin},_setShadow:function(){if(!this.shadow)return;var e=this.canvas.contextTop;e.shadowColor=this.shadow.color,e.shadowBlur=this.shadow.blur,e.shadowOffsetX=this.shadow.offsetX,e.shadowOffsetY=this.shadow.offsetY},_resetShadow:function(){var e=this.canvas.contextTop;e.shadowColor="",e.shadowBlur=e.shadowOffsetX=e.shadowOffsetY=0}}),function(){var e=fabric.util.array.min,t=fabric.util.array.max;fabric.PencilBrush=fabric.util.createClass(fabric.BaseBrush,{initialize:function(e){this.canvas=e,this._points=[]},onMouseDown:function(e){this._prepareForDrawing(e),this._captureDrawingPath(e),this._render()},onMouseMove:function(e){this._captureDrawingPath(e),this.canvas.clearContext(this.canvas.contextTop),this._render()},onMouseUp:function(){this._finalizeAndAddPath()},_prepareForDrawing:function(e){var t=new fabric.Point(e.x,e.y);this._reset(),this._addPoint(t),this.canvas.contextTop.moveTo(t.x,t.y)},_addPoint:function(e){this._points.push(e)},_reset:function(){this._points.length=0,this._setBrushStyles(),this._setShadow()},_captureDrawingPath:function(e){var t=new fabric.Point(e.x,e.y);this._addPoint(t)},_render:function(){var e=this.canvas.contextTop;e.beginPath();var t=this._points[0],n=this._points[1];this._points.length===2&&t.x===n.x&&t.y===n.y&&(t.x-=.5,n.x+=.5),e.moveTo(t.x,t.y);for(var r=1,i=this._points.length;rn.padding?e.x<0?e.x+=n.padding:e.x-=n.padding:e.x=0,i(e.y)>n.padding?e.y<0?e.y+=n.padding:e.y-=n.padding:e.y=0},_rotateObject:function(e,t){var i=this._currentTransform;if(i.target.get("lockRotation"))return;var s=r(i.ey-i.top,i.ex-i.left),o=r(t-i.top,e-i.left),u=n(o-s+i.theta);u<0&&(u=360+u),i.target.angle=u},_setCursor:function(e){this.upperCanvasEl.style.cursor=e},_resetObjectTransform:function(e){e.scaleX=1,e.scaleY=1,e.setAngle(0)},_drawSelection:function(){var e=this.contextTop,t=this._groupSelector,n=t.left,r=t.top,o=i(n),u=i(r);e.fillStyle=this.selectionColor,e.fillRect(t.ex-(n>0?0:-n),t.ey-(r>0?0:-r),o,u),e.lineWidth=this.selectionLineWidth,e.strokeStyle=this.selectionBorderColor;if(this.selectionDashArray.length>1){var a=t.ex+s-(n>0?0:o),f=t.ey+s-(r>0?0:u);e.beginPath(),fabric.util.drawDashedLine(e,a,f,a+o,f,this.selectionDashArray),fabric.util.drawDashedLine(e,a,f+u-1,a+o,f+u-1,this.selectionDashArray),fabric.util.drawDashedLine(e,a,f,a,f+u,this.selectionDashArray),fabric.util.drawDashedLine(e,a+o-1,f,a+o-1,f+u,this.selectionDashArray),e.closePath(),e.stroke()}else e.strokeRect(t.ex+s-(n>0?0:o),t.ey+s-(r>0?0:u),o,u)},_isLastRenderedObject:function(e){return this.controlsAboveOverlay&&this.lastRenderedObjectWithControlsAboveOverlay&&this.lastRenderedObjectWithControlsAboveOverlay.visible&&this.containsPoint(e,this.lastRenderedObjectWithControlsAboveOverlay)&&this.lastRenderedObjectWithControlsAboveOverlay._findTargetCorner(this.getPointer(e))},findTarget:function(e,t){if(this.skipTargetFind)return;if(this._isLastRenderedObject(e))return this.lastRenderedObjectWithControlsAboveOverlay;var n=this.getActiveGroup();if(n&&!t&&this.containsPoint(e,n))return n;var r=this._searchPossibleTargets(e);return this._fireOverOutEvents(r),r},_fireOverOutEvents:function(e){e?this._hoveredTarget!==e&&(this.fire("mouse:over",{target:e}),e.fire("mouseover"),this._hoveredTarget&&(this.fire("mouse:out",{target:this._hoveredTarget}),this._hoveredTarget.fire("mouseout")),this._hoveredTarget=e):this._hoveredTarget&&(this.fire("mouse:out",{target:this._hoveredTarget}),this._hoveredTarget.fire("mouseout"),this._hoveredTarget=null)},_checkTarget:function(e,t,n){if(t&&t.visible&&t.evented&&this.containsPoint(e,t)){if(!this.perPixelTargetFind&&!t.perPixelTargetFind||!!t.isEditing)return!0;var r=this.isTargetTransparent(t,n.x,n.y);if(!r)return!0}},_searchPossibleTargets:function(e){var t,n=this.getPointer(e);if(this._activeObject&&this._checkTarget(e,this._activeObject,n))return this.relatedTarget=this._activeObject,this._activeObject;var r=this._objects.length;while(r--)if(this._checkTarget(e,this._objects[r],n)){this.relatedTarget=this._objects[r],t=this._objects[r];break}return t},getPointer:function(t){var n=e(t,this.upperCanvasEl),r=this.upperCanvasEl.getBoundingClientRect(),i;return r.width===0||r.height===0?i={width:1,height:1}:i={width:this.upperCanvasEl.width/r.width,height:this.upperCanvasEl.height/r.height},{x:(n.x-this._offset.left)*i.width,y:(n.y-this._offset.top)*i.height}},_createUpperCanvas:function(){var e=this.lowerCanvasEl.className.replace(/\s*lower-canvas\s*/,"");this.upperCanvasEl=this._createCanvasElement(),fabric.util.addClass(this.upperCanvasEl,"upper-canvas "+e),this.wrapperEl.appendChild(this.upperCanvasEl),this._copyCanvasStyle(this.lowerCanvasEl,this.upperCanvasEl),this._applyCanvasStyle(this.upperCanvasEl),this.contextTop=this.upperCanvasEl.getContext("2d")},_createCacheCanvas:function(){this.cacheCanvasEl=this._createCanvasElement(),this.cacheCanvasEl.setAttribute("width",this.width),this.cacheCanvasEl.setAttribute("height",this.height),this.contextCache=this.cacheCanvasEl.getContext("2d")},_initWrapperElement:function(){this.wrapperEl=fabric.util.wrapElement(this.lowerCanvasEl,"div",{"class":this.containerClass}),fabric.util.setStyle(this.wrapperEl,{width:this.getWidth()+"px",height:this.getHeight()+"px",position:"relative"}),fabric.util.makeElementUnselectable(this.wrapperEl)},_applyCanvasStyle:function(e){var t=this.getWidth()||e.width,n=this.getHeight()||e.height;fabric.util.setStyle(e,{position:"absolute",width:t+"px",height:n+"px",left:0,top:0}),e.width=t,e.height=n,fabric.util.makeElementUnselectable(e)},_copyCanvasStyle:function(e,t){t.style.cssText=e.style.cssText},getSelectionContext:function(){return this.contextTop},getSelectionElement:function(){return this.upperCanvasEl},_setActiveObject:function(e){this._activeObject&&this._activeObject.set("active",!1),this._activeObject=e,e.set("active",!0)},setActiveObject:function(e,t){return this._setActiveObject(e),this.renderAll(),this.fire("object:selected",{target:e,e:t}),e.fire("selected",{e:t}),this},getActiveObject:function(){return this._activeObject},_discardActiveObject:function(){this._activeObject&&this._activeObject.set("active",!1),this._activeObject=null},discardActiveObject:function(e){return this._discardActiveObject(),this.renderAll(),this.fire("selection:cleared",{e:e}),this},_setActiveGroup:function(e){this._activeGroup=e,e&&(e.canvas=this,e.set("active",!0))},setActiveGroup:function(e,t){return this._setActiveGroup(e),e&&(this.fire("object:selected",{target:e,e:t}),e.fire("selected",{e:t})),this},getActiveGroup:function(){return this._activeGroup},_discardActiveGroup:function(){var e=this.getActiveGroup();e&&e.destroy(),this.setActiveGroup(null)},discardActiveGroup:function(e){return this._discardActiveGroup(),this.fire("selection:cleared",{e:e}),this},deactivateAll:function(){var e=this.getObjects(),t=0,n=e.length;for(;t1&&(t=new fabric.Group(t.reverse(),{originX:"center",originY:"center"}),this.setActiveGroup(t,e),t.saveCoords(),this.fire("selection:created",{target:t}),this.renderAll())},_collectObjects:function(){var n=[],r,i=this._groupSelector.ex,s=this._groupSelector.ey,o=i+this._groupSelector.left,u=s+this._groupSelector.top,a=new fabric.Point(e(i,o),e(s,u)),f=new fabric.Point(t(i,o),t(s,u)),l=i===o&&s===u;for(var c=this._objects.length;c--;){r=this._objects[c];if(!r||!r.selectable||!r.visible)continue;if(r.intersectsWithRect(a,f)||r.isContainedWithinRect(a,f)||r.containsPoint(a)||r.containsPoint(f)){r.set("active",!0),n.push(r);if(l)break}}return n},_maybeGroupObjects:function(e){this.selection&&this._groupSelector&&this._groupSelectedObjects(e);var t=this.getActiveGroup();t&&(t.setObjectsCoords().setCoords(),t.isMoving=!1,this._setCursor(this.defaultCursor)),this._groupSelector=null,this._currentTransform=null}})}(),fabric.util.object.extend(fabric.StaticCanvas.prototype,{toDataURL:function(e){e||(e={});var t=e.format||"png",n=e.quality||1,r=e.multiplier||1,i={left:e.left,top:e.top,width:e.width,height:e.height};return r!==1?this.__toDataURLWithMultiplier(t,n,i,r):this.__toDataURL(t,n,i)},__toDataURL:function(e,t,n){this.renderAll(!0);var r=this.upperCanvasEl||this.lowerCanvasEl,i=this.__getCroppedCanvas(r,n);e==="jpg"&&(e="jpeg");var s=fabric.StaticCanvas.supports("toDataURLWithQuality")?(i||r).toDataURL("image/"+e,t):(i||r).toDataURL("image/"+e);return this.contextTop&&this.clearContext(this.contextTop),this.renderAll(),i&&(i=null),s},__getCroppedCanvas:function(e,t){var n,r,i="left"in t||"top"in t||"width"in t||"height"in t;return i&&(n=fabric.util.createCanvasElement(),r=n.getContext("2d"),n.width=t.width||this.width,n.height=t.height||this.height,r.drawImage(e,-t.left||0,-t.top||0)),n},__toDataURLWithMultiplier:function(e,t,n,r){var i=this.getWidth(),s=this.getHeight(),o=i*r,u=s*r,a=this.getActiveObject(),f=this.getActiveGroup(),l=this.contextTop||this.contextContainer;r>1&&this.setWidth(o).setHeight(u),l.scale(r,r),n.left&&(n.left*=r),n.top&&(n.top*=r),n.width?n.width*=r:r<1&&(n.width=o),n.height?n.height*=r:r<1&&(n.height=u),f?this._tempRemoveBordersControlsFromGroup(f):a&&this.deactivateAll&&this.deactivateAll(),this.renderAll(!0);var c=this.__toDataURL(e,t,n);return this.width=i,this.height=s,l.scale(1/r,1/r),this.setWidth(i).setHeight(s),f?this._restoreBordersControlsOnGroup(f):a&&this.setActiveObject&&this.setActiveObject(a),this.contextTop&&this.clearContext(this.contextTop),this.renderAll(),c},toDataURLWithMultiplier:function(e,t,n){return this.toDataURL({format:e,multiplier:t,quality:n})},_tempRemoveBordersControlsFromGroup:function(e){e.origHasControls=e.hasControls,e.origBorderColor=e.borderColor,e.hasControls=!0,e.borderColor="rgba(0,0,0,0)",e.forEachObject(function(e){e.origBorderColor=e.borderColor,e.borderColor="rgba(0,0,0,0)"})},_restoreBordersControlsOnGroup:function(e){e.hideControls=e.origHideControls,e.borderColor=e.origBorderColor,e.forEachObject(function(e){e.borderColor=e.origBorderColor,delete e.origBorderColor})}}),fabric.util.object.extend(fabric.StaticCanvas.prototype,{loadFromDatalessJSON:function(e,t,n){return this.loadFromJSON(e,t,n)},loadFromJSON:function(e,t,n){if(!e)return;var r=typeof e=="string"?JSON.parse(e):e;this.clear();var i=this;return this._enlivenObjects(r.objects,function(){i._setBgOverlay(r,t)},n),this},_setBgOverlay:function(e,t){var n=this,r={backgroundColor:!1,overlayColor:!1,backgroundImage:!1,overlayImage:!1};if(!e.backgroundImage&&!e.overlayImage&&!e.background&&!e.overlay){t&&t();return}var i=function(){r.backgroundImage&&r.overlayImage&&r.backgroundColor&&r.overlayColor&&(n.renderAll(),t&&t())};this.__setBgOverlay("backgroundImage",e.backgroundImage,r,i),this.__setBgOverlay("overlayImage",e.overlayImage,r,i),this.__setBgOverlay("backgroundColor",e.background,r,i),this.__setBgOverlay("overlayColor",e.overlay,r,i),i()},__setBgOverlay:function(e,t,n,r){var i=this;if(!t){n[e]=!0;return}e==="backgroundImage"||e==="overlayImage"?fabric.Image.fromObject(t,function(t){i[e]=t,n[e]=!0,r&&r()}):this["set"+fabric.util.string.capitalize(e,!0)](t,function(){n[e]=!0,r&&r()})},_enlivenObjects:function(e,t,n){var r=this;if(e.length===0){t&&t();return}var i=this.renderOnAddRemove;this.renderOnAddRemove=!1,fabric.util.enlivenObjects(e,function(e){e.forEach(function(e,t){r.insertAt(e,t,!0)}),r.renderOnAddRemove=i,t&&t()},null,n)},_toDataURL:function(e,t){this.clone(function(n){t(n.toDataURL(e))})},_toDataURLWithMultiplier:function(e,t,n){this.clone(function(r){n(r.toDataURLWithMultiplier(e,t))})},clone:function(e,t){var n=JSON.stringify(this.toJSON(t));this.cloneWithoutData(function(t){t.loadFromJSON(n,function(){e&&e(t)})})},cloneWithoutData:function(e){var t=fabric.document.createElement("canvas");t.width=this.getWidth(),t.height=this.getHeight();var n=new fabric.Canvas(t);n.clipTo=this.clipTo,this.backgroundImage?(n.setBackgroundImage(this.backgroundImage.src,function(){n.renderAll(),e&&e(n)}),n.backgroundImageOpacity=this.backgroundImageOpacity,n.backgroundImageStretch=this.backgroundImageStretch):e&&e(n)}}),function(e){"use strict";var t=e.fabric||(e.fabric={}),n=t.util.object.extend,r=t.util.toFixed,i=t.util.string.capitalize,s=t.util.degreesToRadians,o=t.StaticCanvas.supports("setLineDash");if(t.Object)return;t.Object=t.util.createClass({type:"object",originX:"left",originY:"top",top:0,left:0,width:0,height:0,scaleX:1,scaleY:1,flipX:!1,flipY:!1,opacity:1,angle:0,cornerSize:12,transparentCorners:!0,hoverCursor:null,padding:0,borderColor:"rgba(102,153,255,0.75)",cornerColor:"rgba(102,153,255,0.5)",centeredScaling:!1,centeredRotation:!0,fill:"rgb(0,0,0)",fillRule:"source-over",backgroundColor:"",stroke:null,strokeWidth:1,strokeDashArray:null,strokeLineCap:"butt",strokeLineJoin:"miter",strokeMiterLimit:10,shadow:null,borderOpacityWhenMoving:.4,borderScaleFactor:1,transformMatrix:null,minScaleLimit:.01,selectable:!0,evented:!0,visible:!0,hasControls:!0,hasBorders:!0,hasRotatingPoint:!0,rotatingPointOffset:40,perPixelTargetFind:!1,includeDefaultValues:!0,clipTo:null,lockMovementX:!1,lockMovementY:!1,lockRotation:!1,lockScalingX:!1,lockScalingY:!1,lockUniScaling:!1,stateProperties:"top left width height scaleX scaleY flipX flipY originX originY transformMatrix stroke strokeWidth strokeDashArray strokeLineCap strokeLineJoin strokeMiterLimit angle opacity fill fillRule shadow clipTo visible backgroundColor".split(" "),initialize:function(e){e&&this.setOptions(e)},_initGradient:function(e){e.fill&&e.fill.colorStops&&!(e.fill instanceof t.Gradient)&&this.set("fill",new t.Gradient(e.fill))},_initPattern:function(e){e.fill&&e.fill.source&&!(e.fill instanceof t.Pattern)&&this.set("fill",new t.Pattern(e.fill)),e.stroke&&e.stroke.source&&!(e.stroke instanceof t.Pattern)&&this.set("stroke",new t.Pattern(e.stroke))},_initClipping:function(e){if(!e.clipTo||typeof e.clipTo!="string")return;var n=t.util.getFunctionBody(e.clipTo);typeof n!="undefined"&&(this.clipTo=new Function("ctx",n))},setOptions:function(e){for(var t in e)this.set(t,e[t]);this._initGradient(e),this._initPattern(e),this._initClipping(e)},transform:function(e,t){e.globalAlpha=this.opacity;var n=t?this._getLeftTopCoords():this.getCenterPoint();e.translate(n.x,n.y),e.rotate(s(this.angle)),e.scale(this.scaleX*(this.flipX?-1:1),this.scaleY*(this.flipY?-1:1))},toObject:function(e){var n=t.Object.NUM_FRACTION_DIGITS,i={type:this.type,originX:this.originX,originY:this.originY,left:r(this.left,n),top:r(this.top,n),width:r(this.width,n),height:r(this.height,n),fill:this.fill&&this.fill.toObject?this.fill.toObject():this .fill,stroke:this.stroke&&this.stroke.toObject?this.stroke.toObject():this.stroke,strokeWidth:r(this.strokeWidth,n),strokeDashArray:this.strokeDashArray,strokeLineCap:this.strokeLineCap,strokeLineJoin:this.strokeLineJoin,strokeMiterLimit:r(this.strokeMiterLimit,n),scaleX:r(this.scaleX,n),scaleY:r(this.scaleY,n),angle:r(this.getAngle(),n),flipX:this.flipX,flipY:this.flipY,opacity:r(this.opacity,n),shadow:this.shadow&&this.shadow.toObject?this.shadow.toObject():this.shadow,visible:this.visible,clipTo:this.clipTo&&String(this.clipTo),backgroundColor:this.backgroundColor};return this.includeDefaultValues||(i=this._removeDefaultValues(i)),t.util.populateWithProperties(this,i,e),i},toDatalessObject:function(e){return this.toObject(e)},_removeDefaultValues:function(e){var n=t.util.getKlass(e.type).prototype,r=n.stateProperties;return r.forEach(function(t){e[t]===n[t]&&delete e[t]}),e},toString:function(){return"#"},get:function(e){return this[e]},_setObject:function(e){for(var t in e)this._set(t,e[t])},set:function(e,t){return typeof e=="object"?this._setObject(e):typeof t=="function"&&e!=="clipTo"?this._set(e,t(this.get(e))):this._set(e,t),this},_set:function(e,n){var i=e==="scaleX"||e==="scaleY";return i&&(n=this._constrainScale(n)),e==="scaleX"&&n<0?(this.flipX=!this.flipX,n*=-1):e==="scaleY"&&n<0?(this.flipY=!this.flipY,n*=-1):e==="width"||e==="height"?this.minScaleLimit=r(Math.min(.1,1/Math.max(this.width,this.height)),2):e==="shadow"&&n&&!(n instanceof t.Shadow)&&(n=new t.Shadow(n)),this[e]=n,this},toggle:function(e){var t=this.get(e);return typeof t=="boolean"&&this.set(e,!t),this},setSourcePath:function(e){return this.sourcePath=e,this},render:function(e,n){if(this.width===0||this.height===0||!this.visible)return;e.save(),this._setupFillRule(e),this._transform(e,n),this._setStrokeStyles(e),this._setFillStyles(e);var r=this.transformMatrix;r&&this.group&&(e.translate(-this.group.width/2,-this.group.height/2),e.transform(r[0],r[1],r[2],r[3],r[4],r[5])),this._setShadow(e),this.clipTo&&t.util.clipContext(this,e),this._render(e,n),this.clipTo&&e.restore(),this._removeShadow(e),this._restoreFillRule(e),this.active&&!n&&(this.drawBorders(e),this.drawControls(e)),e.restore()},_transform:function(e,t){var n=this.transformMatrix;n&&!this.group&&e.setTransform(n[0],n[1],n[2],n[3],n[4],n[5]),t||this.transform(e)},_setStrokeStyles:function(e){this.stroke&&(e.lineWidth=this.strokeWidth,e.lineCap=this.strokeLineCap,e.lineJoin=this.strokeLineJoin,e.miterLimit=this.strokeMiterLimit,e.strokeStyle=this.stroke.toLive?this.stroke.toLive(e):this.stroke)},_setFillStyles:function(e){this.fill&&(e.fillStyle=this.fill.toLive?this.fill.toLive(e):this.fill)},_setShadow:function(e){if(!this.shadow)return;e.shadowColor=this.shadow.color,e.shadowBlur=this.shadow.blur,e.shadowOffsetX=this.shadow.offsetX,e.shadowOffsetY=this.shadow.offsetY},_removeShadow:function(e){if(!this.shadow)return;e.shadowColor="",e.shadowBlur=e.shadowOffsetX=e.shadowOffsetY=0},_renderFill:function(e){if(!this.fill)return;this.fill.toLive&&(e.save(),e.translate(-this.width/2+this.fill.offsetX||0,-this.height/2+this.fill.offsetY||0)),e.fill(),this.fill.toLive&&e.restore(),this.shadow&&!this.shadow.affectStroke&&this._removeShadow(e)},_renderStroke:function(e){if(!this.stroke)return;e.save(),this.strokeDashArray?(1&this.strokeDashArray.length&&this.strokeDashArray.push.apply(this.strokeDashArray,this.strokeDashArray),o?(e.setLineDash(this.strokeDashArray),this._stroke&&this._stroke(e)):this._renderDashedStroke&&this._renderDashedStroke(e),e.stroke()):this._stroke?this._stroke(e):e.stroke(),this._removeShadow(e),e.restore()},clone:function(e,n){return this.constructor.fromObject?this.constructor.fromObject(this.toObject(n),e):new t.Object(this.toObject(n))},cloneAsImage:function(e){var n=this.toDataURL();return t.util.loadImage(n,function(n){e&&e(new t.Image(n))}),this},toDataURL:function(e){e||(e={});var n=t.util.createCanvasElement(),r=this.getBoundingRect();n.width=r.width,n.height=r.height,t.util.wrapElement(n,"div");var i=new t.Canvas(n);e.format==="jpg"&&(e.format="jpeg"),e.format==="jpeg"&&(i.backgroundColor="#fff");var s={active:this.get("active"),left:this.getLeft(),top:this.getTop()};this.set("active",!1),this.setPositionByOrigin(new t.Point(n.width/2,n.height/2),"center","center");var o=this.canvas;i.add(this);var u=i.toDataURL(e);return this.set(s).setCoords(),this.canvas=o,i.dispose(),i=null,u},isType:function(e){return this.type===e},complexity:function(){return 0},toJSON:function(e){return this.toObject(e)},setGradient:function(e,n){n||(n={});var r={colorStops:[]};r.type=n.type||(n.r1||n.r2?"radial":"linear"),r.coords={x1:n.x1,y1:n.y1,x2:n.x2,y2:n.y2};if(n.r1||n.r2)r.coords.r1=n.r1,r.coords.r2=n.r2;for(var i in n.colorStops){var s=new t.Color(n.colorStops[i]);r.colorStops.push({offset:i,color:s.toRgb(),opacity:s.getAlpha()})}return this.set(e,t.Gradient.forObject(this,r))},setPatternFill:function(e){return this.set("fill",new t.Pattern(e))},setShadow:function(e){return this.set("shadow",new t.Shadow(e))},setColor:function(e){return this.set("fill",e),this},centerH:function(){return this.canvas.centerObjectH(this),this},centerV:function(){return this.canvas.centerObjectV(this),this},center:function(){return this.canvas.centerObject(this),this},remove:function(){return this.canvas.remove(this),this},getLocalPointer:function(e,t){t=t||this.canvas.getPointer(e);var n=this.translateToOriginPoint(this.getCenterPoint(),"left","top");return{x:t.x-n.x,y:t.y-n.y}},_setupFillRule:function(e){this.fillRule&&(this._prevFillRule=e.globalCompositeOperation,e.globalCompositeOperation=this.fillRule)},_restoreFillRule:function(e){this.fillRule&&this._prevFillRule&&(e.globalCompositeOperation=this._prevFillRule)}}),t.util.createAccessors(t.Object),t.Object.prototype.rotate=t.Object.prototype.setAngle,n(t.Object.prototype,t.Observable),t.Object.NUM_FRACTION_DIGITS=2,t.Object.__uid=0}(typeof exports!="undefined"?exports:this),function(){var e=fabric.util.degreesToRadians;fabric.util.object.extend(fabric.Object.prototype,{translateToCenterPoint:function(t,n,r){var i=t.x,s=t.y,o=this.stroke?this.strokeWidth:0;return n==="left"?i=t.x+(this.getWidth()+o*this.scaleX)/2:n==="right"&&(i=t.x-(this.getWidth()+o*this.scaleX)/2),r==="top"?s=t.y+(this.getHeight()+o*this.scaleY)/2:r==="bottom"&&(s=t.y-(this.getHeight()+o*this.scaleY)/2),fabric.util.rotatePoint(new fabric.Point(i,s),t,e(this.angle))},translateToOriginPoint:function(t,n,r){var i=t.x,s=t.y,o=this.stroke?this.strokeWidth:0;return n==="left"?i=t.x-(this.getWidth()+o*this.scaleX)/2:n==="right"&&(i=t.x+(this.getWidth()+o*this.scaleX)/2),r==="top"?s=t.y-(this.getHeight()+o*this.scaleY)/2:r==="bottom"&&(s=t.y+(this.getHeight()+o*this.scaleY)/2),fabric.util.rotatePoint(new fabric.Point(i,s),t,e(this.angle))},getCenterPoint:function(){var e=new fabric.Point(this.left,this.top);return this.translateToCenterPoint(e,this.originX,this.originY)},getPointByOrigin:function(e,t){var n=this.getCenterPoint();return this.translateToOriginPoint(n,e,t)},toLocalPoint:function(t,n,r){var i=this.getCenterPoint(),s=this.stroke?this.strokeWidth:0,o,u;return n&&r?(n==="left"?o=i.x-(this.getWidth()+s*this.scaleX)/2:n==="right"?o=i.x+(this.getWidth()+s*this.scaleX)/2:o=i.x,r==="top"?u=i.y-(this.getHeight()+s*this.scaleY)/2:r==="bottom"?u=i.y+(this.getHeight()+s*this.scaleY)/2:u=i.y):(o=this.left,u=this.top),fabric.util.rotatePoint(new fabric.Point(t.x,t.y),i,-e(this.angle)).subtractEquals(new fabric.Point(o,u))},setPositionByOrigin:function(e,t,n){var r=this.translateToCenterPoint(e,t,n),i=this.translateToOriginPoint(r,this.originX,this.originY);this.set("left",i.x),this.set("top",i.y)},adjustPosition:function(t){var n=e(this.angle),r=this.getWidth()/2,i=Math.cos(n)*r,s=Math.sin(n)*r,o=this.getWidth(),u=Math.cos(n)*o,a=Math.sin(n)*o;this.originX==="center"&&t==="left"||this.originX==="right"&&t==="center"?(this.left-=i,this.top-=s):this.originX==="left"&&t==="center"||this.originX==="center"&&t==="right"?(this.left+=i,this.top+=s):this.originX==="left"&&t==="right"?(this.left+=u,this.top+=a):this.originX==="right"&&t==="left"&&(this.left-=u,this.top-=a),this.setCoords(),this.originX=t},_getLeftTopCoords:function(){return this.translateToOriginPoint(this.getCenterPoint(),"left","center")}})}(),function(){var e=fabric.util.degreesToRadians;fabric.util.object.extend(fabric.Object.prototype,{oCoords:null,intersectsWithRect:function(e,t){var n=this.oCoords,r=new fabric.Point(n.tl.x,n.tl.y),i=new fabric.Point(n.tr.x,n.tr.y),s=new fabric.Point(n.bl.x,n.bl.y),o=new fabric.Point(n.br.x,n.br.y),u=fabric.Intersection.intersectPolygonRectangle([r,i,o,s],e,t);return u.status==="Intersection"},intersectsWithObject:function(e){function t(e){return{tl:new fabric.Point(e.tl.x,e.tl.y),tr:new fabric.Point(e.tr.x,e.tr.y),bl:new fabric.Point(e.bl.x,e.bl.y),br:new fabric.Point(e.br.x,e.br.y)}}var n=t(this.oCoords),r=t(e.oCoords),i=fabric.Intersection.intersectPolygonPolygon([n.tl,n.tr,n.br,n.bl],[r.tl,r.tr,r.br,r.bl]);return i.status==="Intersection"},isContainedWithinObject:function(e){var t=e.getBoundingRect(),n=new fabric.Point(t.left,t.top),r=new fabric.Point(t.left+t.width,t.top+t.height);return this.isContainedWithinRect(n,r)},isContainedWithinRect:function(e,t){var n=this.getBoundingRect();return n.left>=e.x&&n.left+n.width<=t.x&&n.top>=e.y&&n.top+n.height<=t.y},containsPoint:function(e){var t=this._getImageLines(this.oCoords),n=this._findCrossPoints(e,t);return n!==0&&n%2===1},_getImageLines:function(e){return{topline:{o:e.tl,d:e.tr},rightline:{o:e.tr,d:e.br},bottomline:{o:e.br,d:e.bl},leftline:{o:e.bl,d:e.tl}}},_findCrossPoints:function(e,t){var n,r,i,s,o,u,a=0,f;for(var l in t){f=t[l];if(f.o.y=e.y&&f.d.y>=e.y)continue;f.o.x===f.d.x&&f.o.x>=e.x?(o=f.o.x,u=e.y):(n=0,r=(f.d.y-f.o.y)/(f.d.x-f.o.x),i=e.y-n*e.x,s=f.o.y-r*f.o.x,o=-(i-s)/(n-r),u=i+n*o),o>=e.x&&(a+=1);if(a===2)break}return a},getBoundingRectWidth:function(){return this.getBoundingRect().width},getBoundingRectHeight:function(){return this.getBoundingRect().height},getBoundingRect:function(){this.oCoords||this.setCoords();var e=[this.oCoords.tl.x,this.oCoords.tr.x,this.oCoords.br.x,this.oCoords.bl.x],t=fabric.util.array.min(e),n=fabric.util.array.max(e),r=Math.abs(t-n),i=[this.oCoords.tl.y,this.oCoords.tr.y,this.oCoords.br.y,this.oCoords.bl.y],s=fabric.util.array.min(i),o=fabric.util.array.max(i),u=Math.abs(s-o);return{left:t,top:s,width:r,height:u}},getWidth:function(){return this.width*this.scaleX},getHeight:function(){return this.height*this.scaleY},_constrainScale:function(e){return Math.abs(e)1?this.strokeWidth:0,n=this.padding,r=e(this.angle);this.currentWidth=(this.width+t)*this.scaleX+n*2,this.currentHeight=(this.height+t)*this.scaleY+n*2,this.currentWidth<0&&(this.currentWidth=Math.abs(this.currentWidth));var i=Math.sqrt(Math.pow(this.currentWidth/2,2)+Math.pow(this.currentHeight/2,2)),s=Math.atan(isFinite(this.currentHeight/this.currentWidth)?this.currentHeight/this.currentWidth:0),o=Math.cos(s+r)*i,u=Math.sin(s+r)*i,a=Math.sin(r),f=Math.cos(r),l=this.getCenterPoint(),c={x:l.x-o,y:l.y-u},h={x:c.x+this.currentWidth*f,y:c.y+this.currentWidth*a},p={x:h.x-this.currentHeight*a,y:h.y+this.currentHeight*f},d={x:c.x-this.currentHeight*a,y:c.y+this.currentHeight*f},v={x:c.x-this.currentHeight/2*a,y:c.y+this.currentHeight/2*f},m={x:c.x+this.currentWidth/2*f,y:c.y+this.currentWidth/2*a},g={x:h.x-this.currentHeight/2*a,y:h.y+this.currentHeight/2*f},y={x:d.x+this.currentWidth/2*f,y:d.y+this.currentWidth/2*a},b={x:m.x,y:m.y};return this.oCoords={tl:c,tr:h,br:p,bl:d,ml:v,mt:m,mr:g,mb:y,mtr:b},this._setCornerCoords&&this._setCornerCoords(),this}})}(),fabric.util.object.extend(fabric.Object.prototype,{sendToBack:function(){return this.group?fabric.StaticCanvas.prototype.sendToBack.call(this.group,this):this.canvas.sendToBack(this),this},bringToFront:function(){return this.group?fabric.StaticCanvas.prototype.bringToFront.call(this.group,this):this.canvas.bringToFront(this),this},sendBackwards:function(e){return this.group?fabric.StaticCanvas.prototype.sendBackwards.call(this.group,this,e):this.canvas.sendBackwards(this,e),this},bringForward:function(e){return this.group?fabric.StaticCanvas.prototype.bringForward.call(this.group,this,e):this.canvas.bringForward(this,e),this},moveTo:function(e){return this.group?fabric.StaticCanvas.prototype.moveTo.call(this.group,this,e):this.canvas.moveTo(this,e),this}}),fabric.util.object.extend(fabric.Object.prototype,{getSvgStyles:function(){var e=this.fill?this.fill.toLive?"url(#SVGID_"+this.fill.id+")":this.fill:"none",t=this.stroke?this.stroke.toLive?"url(#SVGID_"+this.stroke.id+")":this.stroke:"none",n=this.strokeWidth?this.strokeWidth:"0",r=this.strokeDashArray?this.strokeDashArray.join(" "):"",i=this.strokeLineCap?this.strokeLineCap:"butt",s=this.strokeLineJoin?this.strokeLineJoin:"miter",o=this.strokeMiterLimit?this.strokeMiterLimit:"4",u=typeof this.opacity!="undefined"?this.opacity:"1",a=this.visible?"":" visibility: hidden;",f=this.shadow&&this.type!=="text"?"filter: url(#SVGID_"+this.shadow.id+");":"";return["stroke: ",t,"; ","stroke-width: ",n,"; ","stroke-dasharray: ",r,"; ","stroke-linecap: ",i,"; ","stroke-linejoin: ",s,"; ","stroke-miterlimit: ",o,"; ","fill: ",e,"; ","opacity: ",u,";",f,a].join("")},getSvgTransform:function(){var e=fabric.util.toFixed,t=this.getAngle(),n=this.getCenterPoint(),r=fabric.Object.NUM_FRACTION_DIGITS,i="translate("+e(n.x,r)+" "+e(n.y,r)+")",s=t!==0?" rotate("+e(t,r)+")":"",o=this.scaleX===1&&this.scaleY===1?"":" scale("+e(this.scaleX,r)+" "+e(this.scaleY,r)+")",u=this.flipX?"matrix(-1 0 0 1 0 0) ":"",a=this.flipY?"matrix(1 0 0 -1 0 0)":"";return[i,s,o,u,a].join("")},_createBaseSVGMarkup:function(){var e=[];return this.fill&&this.fill.toLive&&e.push(this.fill.toSVG(this,!1)),this.stroke&&this.stroke.toLive&&e.push(this.stroke.toSVG(this,!1)),this.shadow&&e.push(this.shadow.toSVG(this)),e}}),fabric.util.object.extend(fabric.Object.prototype,{hasStateChanged:function(){return this.stateProperties.some(function(e){return this.get(e)!==this.originalState[e]},this)},saveState:function(e){return this.stateProperties.forEach(function(e){this.originalState[e]=this.get(e)},this),e&&e.stateProperties&&e.stateProperties.forEach(function(e){this.originalState[e]=this.get(e)},this),this},setupState:function(){return this.originalState={},this.saveState(),this}}),function(){var e=fabric.util.degreesToRadians,t=typeof G_vmlCanvasManager!="undefined";fabric.util.object.extend(fabric.Object.prototype,{_controlsVisibility:null,_findTargetCorner:function(e){if(!this.hasControls||!this.active)return!1;var t=e.x,n=e.y,r,i;for(var s in this.oCoords){if(!this.isControlVisible(s))continue;if(s==="mtr"&&!this.hasRotatingPoint)continue;if(!(!this.get("lockUniScaling")||s!=="mt"&&s!=="mr"&&s!=="mb"&&s!=="ml"))continue;i=this._getImageLines(this.oCoords[s].corner),r=this._findCrossPoints({x:t,y:n},i);if(r!==0&&r%2===1)return this.__corner=s,s}return!1},_setCornerCoords:function(){var t=this.oCoords,n=e(this.angle),r=e(45-this.angle),i=Math.sqrt(2*Math.pow(this.cornerSize,2))/2,s=i*Math.cos(r),o=i*Math.sin(r),u=Math.sin(n),a=Math.cos(n);t.tl.corner={tl:{x:t.tl.x-o,y:t.tl.y-s},tr:{x:t.tl.x+s,y:t.tl.y-o},bl:{x:t.tl.x-s,y:t.tl.y+o},br:{x:t.tl.x+o,y:t.tl.y+s}},t.tr.corner={tl:{x:t.tr.x-o,y:t.tr.y-s},tr:{x:t.tr.x+s,y:t.tr.y-o},br:{x:t.tr.x+o,y:t.tr.y+s},bl:{x:t.tr.x-s,y:t.tr.y+o}},t.bl.corner={tl:{x:t.bl.x-o,y:t.bl.y-s},bl:{x:t.bl.x-s,y:t.bl.y+o},br:{x:t.bl.x+o,y:t.bl.y+s},tr:{x:t.bl.x+s,y:t.bl.y-o}},t.br.corner={tr:{x:t.br.x+s,y:t.br.y-o},bl:{x:t.br.x-s,y:t.br.y+o},br:{x:t.br.x+o,y:t.br.y+s},tl:{x:t.br.x-o,y:t.br.y-s}},t.ml.corner={tl:{x:t.ml.x-o,y:t.ml.y-s},tr:{x:t.ml.x+s,y:t.ml.y-o},bl:{x:t.ml.x-s,y:t.ml.y+o},br:{x:t.ml.x+o,y:t.ml.y+s}},t.mt.corner={tl:{x:t.mt.x-o,y:t.mt.y-s},tr:{x:t.mt.x+s,y:t.mt.y-o},bl:{x:t.mt.x-s,y:t.mt.y+o},br:{x:t.mt.x+o,y:t.mt.y+s}},t.mr.corner={tl:{x:t.mr.x-o,y:t.mr.y-s},tr:{x:t.mr.x+s,y:t.mr.y-o},bl:{x:t.mr.x-s,y:t.mr.y+o},br:{x:t.mr.x+o,y:t.mr.y+s}},t.mb.corner={tl:{x:t.mb.x-o,y:t.mb.y-s},tr:{x:t.mb.x+s,y:t.mb.y-o},bl:{x:t.mb.x-s,y:t.mb.y+o},br:{x:t.mb.x+o,y:t.mb.y+s}},t.mtr.corner={tl:{x:t.mtr.x-o+u*this.rotatingPointOffset,y:t.mtr.y-s-a*this.rotatingPointOffset},tr:{x:t.mtr.x+s+u*this.rotatingPointOffset,y:t.mtr.y-o-a*this.rotatingPointOffset},bl:{x:t.mtr.x-s+u*this.rotatingPointOffset,y:t.mtr.y+o-a*this.rotatingPointOffset},br:{x:t.mtr.x+o+u*this.rotatingPointOffset,y:t.mtr.y+s-a*this.rotatingPointOffset}}},drawBorders:function(e){if(!this.hasBorders)return this;var t=this.padding,n=t*2,r=~~(this.strokeWidth/2)*2;e.save(),e.globalAlpha=this.isMoving?this.borderOpacityWhenMoving:1,e.strokeStyle=this.borderColor;var i=1/this._constrainScale(this.scaleX),s=1/this._constrainScale(this.scaleY);e.lineWidth=1/this.borderScaleFactor,e.scale(i,s);var o=this.getWidth(),u=this.getHeight();e.strokeRect(~~(-(o/2)-t-r/2*this.scaleX)-.5,~~(-(u/2)-t-r/2*this.scaleY)-.5,~~(o+n+r*this.scaleX)+1,~~(u+n+r*this.scaleY)+1);if(this.hasRotatingPoint&&this.isControlVisible("mtr")&&!this.get("lockRotation")&&this.hasControls){var a=(this.flipY?u+r*this.scaleY+t*2:-u-r*this.scaleY-t*2)/2;e.beginPath(),e.moveTo(0,a),e.lineTo(0,a+(this.flipY?this.rotatingPointOffset:-this.rotatingPointOffset)),e.closePath(),e.stroke()}return e.restore(),this},drawControls:function(e){if(!this.hasControls)return this;var t=this.cornerSize,n=t/2,r=~~(this.strokeWidth/2),i=-(this.width/2),s=-(this.height/2),o=this.padding/this.scaleX,u=this.padding/this.scaleY,a=n/this.scaleY,f=n/this.scaleX,l=(n-t)/this.scaleX,c=(n-t)/this.scaleY,h=this.height,p=this.width,d=this.transparentCorners?"strokeRect":"fillRect";return e.save(),e.lineWidth=1/Math.max(this.scaleX,this.scaleY),e.globalAlpha=this.isMoving?this.borderOpacityWhenMoving:1,e.strokeStyle=e.fillStyle=this.cornerColor,this._drawControl("tl",e,d,i-f-r-o,s-a-r-u),this._drawControl("tr",e,d,i+p-f+r+o,s-a-r-u),this._drawControl("bl",e,d,i-f-r-o,s+h+c+r+u),this._drawControl("br",e,d,i+p+l+r+o,s+h+c+r+u),this.get("lockUniScaling")||(this._drawControl("mt",e,d,i+p/2-f,s-a-r-u),this._drawControl("mb",e,d,i+p/2-f,s+h+c+r+u),this._drawControl("mr",e,d,i+p+l+r+o,s+h/2-a),this._drawControl("ml",e,d,i-f-r-o,s+h/2-a)),this.hasRotatingPoint&&this._drawControl("mtr",e,d,i+p/2-f,this.flipY?s+h+this.rotatingPointOffset/this.scaleY-this.cornerSize/this.scaleX/2+r+u:s-this.rotatingPointOffset/this.scaleY-this.cornerSize/this.scaleY/2-r-u),e.restore(),this},_drawControl:function(e,n,r,i,s){var o=this.cornerSize/this.scaleX,u=this.cornerSize/this.scaleY;this.isControlVisible(e)&&(t||this.transparentCorners||n.clearRect(i,s,o,u),n[r](i,s,o,u))},isControlVisible:function(e){return this._getControlsVisibility()[e]},setControlVisible:function(e,t){return this._getControlsVisibility()[e]=t,this},setControlsVisibility:function(e){e||(e={});for(var t in e)this.setControlVisible(t,e[t]);return this},_getControlsVisibility:function(){return this._controlsVisibility||(this._controlsVisibility={tl:!0,tr:!0,br:!0,bl:!0,ml:!0,mt:!0,mr:!0,mb:!0,mtr:!0}),this._controlsVisibility}})}(),fabric.util.object.extend(fabric.StaticCanvas.prototype,{FX_DURATION:500,fxCenterObjectH:function(e,t){t=t||{};var n=function(){},r=t.onComplete||n,i=t.onChange||n,s=this;return fabric.util.animate({startValue:e.get("left"),endValue:this.getCenter().left,duration:this.FX_DURATION,onChange:function(t){e.set("left",t),s.renderAll(),i()},onComplete:function(){e.setCoords(),r()}}),this},fxCenterObjectV:function(e,t){t=t||{};var n=function(){},r=t.onComplete||n,i=t.onChange||n,s=this;return fabric.util.animate({startValue:e.get("top"),endValue:this.getCenter().top,duration:this.FX_DURATION,onChange:function(t){e.set("top",t),s.renderAll(),i()},onComplete:function(){e.setCoords(),r()}}),this},fxRemove:function(e,t){t=t||{};var n=function(){},r=t.onComplete||n,i=t.onChange||n,s=this;return fabric.util.animate({startValue:e.get("opacity"),endValue:0,duration:this.FX_DURATION,onStart:function(){e.set("active",!1)},onChange:function(t){e.set("opacity",t),s.renderAll(),i()},onComplete:function(){s.remove(e),r()}}),this}}),fabric.util.object.extend(fabric.Object.prototype,{animate:function(){if(arguments[0]&&typeof arguments[0]=="object"){var e=[],t,n;for(t in arguments[0])e.push(t);for(var r=0,i=e.length;r'),e?e(t.join("")):t.join("")},complexity:function(){return 1}}),t.Line.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat("x1 y1 x2 y2".split(" ")),t.Line.fromElement=function(e,r){var i=t.parseAttributes(e,t.Line.ATTRIBUTE_NAMES),s=[i.x1||0,i.y1||0,i.x2||0,i.y2||0];return new t.Line(s,n(i,r))},t.Line.fromObject=function(e){var n=[e.x1,e.y1,e.x2,e.y2];return new t.Line(n,e)}}(typeof exports!="undefined"?exports:this),function(e){"use strict";function i(e){return"radius"in e&&e.radius>0}var t=e.fabric||(e.fabric={}),n=Math.PI*2,r=t.util.object.extend;if(t.Circle){t.warn("fabric.Circle is already defined.");return}t.Circle=t.util.createClass(t.Object,{type:"circle",radius:0,initialize:function(e){e=e||{},this.set("radius",e.radius||0),this.callSuper("initialize",e)},_set:function(e,t){return this.callSuper("_set",e,t),e==="radius"&&this.setRadius(t),this},toObject:function(e){return r(this.callSuper("toObject",e),{radius:this.get("radius")})},toSVG:function(e){var t=this._createBaseSVGMarkup();return t.push("'),e?e(t.join("")):t.join("")},_render:function(e,t){e.beginPath(),e.globalAlpha=this.group?e.globalAlpha*this.opacity:this.opacity,e.arc(t?this.left:0,t?this.top:0,this.radius,0,n,!1),e.closePath(),this._renderFill(e),this.stroke&&this._renderStroke(e)},getRadiusX:function(){return this.get("radius")*this.get("scaleX")},getRadiusY:function(){return this.get("radius")*this.get("scaleY")},setRadius:function(e){this.radius=e,this.set("width",e*2).set("height",e*2)},complexity:function(){return 1}}),t.Circle.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat("cx cy r".split(" ")),t.Circle.fromElement=function(e,n){n||(n={});var s=t.parseAttributes(e,t.Circle.ATTRIBUTE_NAMES);if(!i(s))throw new Error("value of `r` attribute is required and can not be negative");"left"in s&&(s.left-=n.width/2||0),"top"in s&&(s.top-=n.height/2||0);var o=new t.Circle(r(s,n));return o.cx=parseFloat(e.getAttribute("cx"))||0,o.cy=parseFloat(e.getAttribute("cy"))||0,o},t.Circle.fromObject=function(e){return new t.Circle(e)}}(typeof exports!="undefined"?exports:this),function(e){"use strict";var t=e.fabric||(e.fabric={});if(t.Triangle){t.warn("fabric.Triangle is already defined");return}t.Triangle=t.util.createClass(t.Object,{type:"triangle",initialize:function(e){e=e||{},this.callSuper("initialize",e),this.set("width",e.width||100).set("height",e.height||100)},_render:function(e){var t=this.width/2,n=this.height/2;e.beginPath(),e.moveTo(-t,n),e.lineTo(0,-n),e.lineTo(t,n),e.closePath(),this._renderFill(e),this._renderStroke(e)},_renderDashedStroke:function(e){var n=this.width/2,r=this.height/2;e.beginPath(),t.util.drawDashedLine(e,-n,r,0,-r,this.strokeDashArray),t.util.drawDashedLine(e,0,-r,n,r,this.strokeDashArray),t.util.drawDashedLine(e,n,r,-n,r,this.strokeDashArray),e.closePath()},toSVG:function(e){var t=this._createBaseSVGMarkup(),n=this.width/2,r=this.height/2,i=[-n+" "+r,"0 "+ -r,n+" "+r].join(",");return t.push("'),e?e(t.join("")):t.join("")},complexity:function(){return 1}}),t.Triangle.fromObject=function(e){return new t.Triangle(e)}}(typeof exports!="undefined"?exports:this),function(e){"use strict";var t=e.fabric||(e.fabric={}),n=Math.PI*2,r=t.util.object.extend;if(t.Ellipse){t.warn("fabric.Ellipse is already defined.");return}t.Ellipse=t.util.createClass(t.Object,{type:"ellipse",rx:0,ry:0,initialize:function(e){e=e||{},this.callSuper("initialize",e),this.set("rx",e.rx||0),this.set("ry",e.ry||0),this.set("width",this.get("rx")*2),this.set("height",this.get("ry")*2)},toObject:function(e){return r(this.callSuper("toObject",e),{rx:this.get("rx"),ry:this.get("ry")})},toSVG:function(e){var t=this._createBaseSVGMarkup();return t.push("'),e?e(t.join("")):t.join("")},render:function(e,t){if(this.rx===0||this.ry===0)return;return this.callSuper("render",e,t)},_render:function(e,t){e.beginPath(),e.save(),e.globalAlpha=this.group?e.globalAlpha*this.opacity:this.opacity,this.transformMatrix&&this.group&&e.translate(this.cx,this.cy),e.transform(1,0,0,this.ry/this.rx,0,0),e.arc(t?this.left:0,t?this.top:0,this.rx,0,n,!1),e.restore(),this._renderFill(e),this._renderStroke(e)},complexity:function(){return 1}}),t.Ellipse.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat("cx cy rx ry".split(" ")),t.Ellipse.fromElement=function(e,n){n||(n={});var i=t.parseAttributes(e,t.Ellipse.ATTRIBUTE_NAMES),s=i.left,o=i.top;"left"in i&&(i.left-=n.width/2||0),"top"in i&&(i.top-=n.height/2||0);var u=new t.Ellipse(r(i,n));return u.cx=s||0,u.cy=o||0,u},t.Ellipse.fromObject=function(e){return new t.Ellipse(e)}}(typeof exports!="undefined"?exports:this),function(e){"use strict";function i(e){return e.left=e.left||0,e.top=e.top||0,e}var t=e.fabric||(e.fabric={}),n=t.util.object.extend;if(t.Rect){console.warn("fabric.Rect is already defined");return}var r=t.Object.prototype.stateProperties.concat();r.push("rx","ry","x","y"),t.Rect=t.util.createClass(t.Object,{stateProperties:r,type:"rect",rx:0,ry:0,x:0,y:0,strokeDashArray:null,initialize:function(e){e=e||{},this.callSuper("initialize",e),this._initRxRy(),this.x=e.x||0,this.y=e.y||0},_initRxRy:function(){this.rx&&!this.ry?this.ry=this.rx:this.ry&&!this.rx&&(this.rx=this.ry)},_render:function(e){if(this.width===1&&this.height===1){e.fillRect(0,0,1,1);return}var t=this.rx||0,n=this.ry||0,r=this.width,i=this.height,s=-r/2,o=-i/2,u=this.group&&this.group.type==="path-group",a=t!==0||n!==0;e.beginPath(),e.globalAlpha=u?e.globalAlpha*this.opacity:this.opacity,this.transformMatrix&&u&&e.translate(this.width/2+this.x,this.height/2+this.y),!this.transformMatrix&&u&&e.translate(-this.group.width/2+this.width/2+this.x,-this.group.height/2+this.height/2+this.y),e.moveTo(s+t,o),e.lineTo(s+r-t,o),a&&e.quadraticCurveTo(s+r,o,s+r,o+n,s+r,o+n),e.lineTo(s+r,o+i-n),a&&e.quadraticCurveTo(s+r,o+i,s+r-t,o+i,s+r-t,o+i),e.lineTo(s+t,o+i),a&&e.quadraticCurveTo(s,o+i,s,o+i-n,s,o+i-n),e.lineTo(s,o+n),a&&e.quadraticCurveTo(s,o,s+t,o,s+t,o),e.closePath(),this._renderFill(e),this._renderStroke(e)},_renderDashedStroke:function(e){var n=-this.width/2,r=-this.height/2,i=this.width,s=this.height;e.beginPath(),t.util.drawDashedLine(e,n,r,n+i,r,this.strokeDashArray),t.util.drawDashedLine(e,n+i,r,n+i,r+s,this.strokeDashArray),t.util.drawDashedLine(e,n+i,r+s,n,r+s,this.strokeDashArray),t.util.drawDashedLine(e,n,r+s,n,r,this.strokeDashArray),e.closePath()},_normalizeLeftTopProperties:function(e){return"left"in e&&this.set("left",e.left+this.getWidth()/2),this.set("x",e.left||0),"top"in e&&this.set("top",e.top+this.getHeight()/2),this.set("y",e.top||0),this},toObject:function(e){var t=n(this.callSuper("toObject",e),{rx:this.get("rx")||0,ry:this.get("ry")||0,x:this.get("x"),y:this.get("y")});return this.includeDefaultValues||this._removeDefaultValues(t),t},toSVG:function(e){var t=this._createBaseSVGMarkup();return t.push("'),e?e(t.join("")):t.join("")},complexity:function(){return 1}}),t.Rect.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat("x y rx ry width height".split(" ")),t.Rect.fromElement=function(e,r){if(!e)return null;var s=t.parseAttributes(e,t.Rect.ATTRIBUTE_NAMES);s=i(s);var o=new t.Rect(n(r?t.util.object.clone(r):{},s));return o._normalizeLeftTopProperties(s),o},t.Rect.fromObject=function(e){return new t.Rect(e)}}(typeof exports!="undefined"?exports:this),function(e){"use strict";var t=e.fabric||(e.fabric={}),n=t.util.toFixed;if(t.Polyline){t.warn("fabric.Polyline is already defined");return}t.Polyline=t.util.createClass(t.Object,{type:"polyline",points:null,initialize:function(e,t,n){t=t||{},this.set("points",e),this.callSuper("initialize",t),this._calcDimensions(n)},_calcDimensions:function(e){return t.Polygon.prototype._calcDimensions.call(this,e)},toObject:function(e){return t.Polygon.prototype.toObject.call(this,e)},toSVG:function(e){var t=[],r=this._createBaseSVGMarkup();for(var i=0,s=this.points.length;i'),e?e(r.join("")):r.join("")},_render:function(e){var t;e.beginPath(),e.moveTo(this.points[0].x,this.points[0].y);for(var n=0,r=this diff --git a/dist/fabric.min.js.gz b/dist/fabric.min.js.gz index ee4d5f3f33c780368f2273f9fbe8d3572305decd..640430562a37679c7af5993bb869f53df794d980 100644 GIT binary patch literal 54289 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 literal 54289 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 a2Lm({kP!}~c?Y!P-x>fqywBIEF#`aa{~R>{ diff --git a/dist/fabric.require.js b/dist/fabric.require.js index cdcafde3..4a9d5d66 100644 --- a/dist/fabric.require.js +++ b/dist/fabric.require.js @@ -1,7 +1,7 @@ /* build: `node build.js modules=ALL exclude=gestures,cufon,json minifier=uglifyjs` */ /*! Fabric.js Copyright 2008-2014, Printio (Juriy Zaytsev, Maxim Chernyak) */ -var fabric = fabric || { version: "1.4.4" }; +var fabric = fabric || { version: "1.4.5" }; if (typeof exports !== 'undefined') { exports.fabric = fabric; } diff --git a/package.json b/package.json index 88a6bc68..5fb92502 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "fabric", "description": "Object model for HTML5 canvas, and SVG-to-canvas parser. Backed by jsdom and node-canvas.", "homepage": "http://fabricjs.com/", - "version": "1.4.4", + "version": "1.4.5", "author": "Juriy Zaytsev ", "keywords": [ "canvas",