AmCharts.translations["export"]||(AmCharts.translations["export"]={}),AmCharts.translations["export"].en||(AmCharts.translations["export"].en={"fallback.save.text":"CTRL + C to copy the data into the clipboard.","fallback.save.image":"Rightclick -> Save picture as... to save the image.","capturing.delayed.menu.label":"{{duration}}","capturing.delayed.menu.title":"Click to cancel","menu.label.print":"Print","menu.label.undo":"Undo","menu.label.redo":"Redo","menu.label.cancel":"Cancel","menu.label.save.image":"Download as ...","menu.label.save.data":"Save as ...","menu.label.draw":"Annotate ...","menu.label.draw.change":"Change ...","menu.label.draw.add":"Add ...","menu.label.draw.shapes":"Shape ...","menu.label.draw.colors":"Color ...","menu.label.draw.widths":"Size ...","menu.label.draw.opacities":"Opacity ...","menu.label.draw.text":"Text","menu.label.draw.modes":"Mode ...","menu.label.draw.modes.pencil":"Pencil","menu.label.draw.modes.line":"Line","menu.label.draw.modes.arrow":"Arrow"}),function(){AmCharts["export"]=function(a,b){var c={name:"export",version:"1.4.13",libs:{async:!0,autoLoad:!0,reload:!1,resources:[{"pdfmake/pdfmake.js":["pdfmake/vfs_fonts.js"],"jszip/jszip.js":["xlsx/xlsx.js"]},"fabric.js/fabric.js","FileSaver.js/FileSaver.js"],namespaces:{"pdfmake.js":"pdfMake","jszip.js":"JSZip","xlsx.js":"XLSX","fabric.js":"fabric","FileSaver.js":"saveAs"}},config:{},setup:{chart:a,hasBlob:!1,wrapper:!1},drawing:{enabled:!1,undos:[],redos:[],buffer:{position:{x1:0,y1:0,x2:0,y2:0,xD:0,yD:0}},handler:{undo:function(a,b){var d=c.drawing.undos.pop();if(d){d.selectable=!0,c.drawing.redos.push(d),"added"==d.action&&c.setup.fabric.remove(d.target);var e=JSON.parse(d.state);d.target.set(e),d.target instanceof fabric.Group&&c.drawing.handler.change({color:e.cfg.color,width:e.cfg.width,opacity:e.cfg.opacity},!0,d.target),c.setup.fabric.renderAll(),d.state!=d.target.recentState||b||c.drawing.handler.undo(d,!0)}},redo:function(a,b){var d=c.drawing.redos.pop();if(d){d.selectable=!0,c.drawing.undos.push(d),"added"==d.action&&c.setup.fabric.add(d.target);var e=JSON.parse(d.state);d.target.recentState=d.state,d.target.set(e),d.target instanceof fabric.Group&&c.drawing.handler.change({color:e.cfg.color,width:e.cfg.width,opacity:e.cfg.opacity},!0,d.target),c.setup.fabric.renderAll(),"addified"==d.action&&c.drawing.handler.redo()}},done:function(a){c.drawing.buffer.enabled=!1,c.drawing.undos=[],c.drawing.redos=[],c.createMenu(c.config.menu),c.setup.fabric.deactivateAll(),c.setup.wrapper&&(c.setup.chart.containerDiv.removeChild(c.setup.wrapper),c.setup.wrapper=!1)},add:function(a){var b=c.deepMerge({top:c.setup.fabric.height/2,left:c.setup.fabric.width/2},a||{}),d=-1!=b.url.indexOf(".svg")?fabric.loadSVGFromURL:fabric.Image.fromURL;d(b.url,function(a,d){var e=void 0!==d?fabric.util.groupSVGElements(a,d):a,f=!1;(e.height>c.setup.fabric.height||e.width>c.setup.fabric.width)&&(f=c.setup.fabric.height/2/e.height),b.top>c.setup.fabric.height&&(b.top=c.setup.fabric.height/2),b.left>c.setup.fabric.width&&(b.left=c.setup.fabric.width/2),e.set({originX:"center",originY:"center",top:b.top,left:b.left,width:f?e.width*f:e.width,height:f?e.height*f:e.height,fill:c.drawing.color}),c.setup.fabric.add(e)})},change:function(a,b,d){var f,g,h,e=c.deepMerge({},a||{}),i=d||c.drawing.buffer.target,j=i?i._objects?i._objects:[i]:null;if(e.mode&&(c.drawing.mode=e.mode),e.width&&(c.drawing.width=e.width,c.drawing.fontSize=3*e.width),e.fontSize&&(c.drawing.fontSize=e.fontSize),e.color&&(c.drawing.color=e.color),e.opacity&&(c.drawing.opacity=e.opacity),h=new fabric.Color(c.drawing.color).getSource(),h.pop(),h.push(c.drawing.opacity),c.drawing.color="rgba("+h.join()+")",c.setup.fabric.freeDrawingBrush.color=c.drawing.color,c.setup.fabric.freeDrawingBrush.width=c.drawing.width,i){for(f=JSON.parse(i.recentState).cfg,f&&(e.color=e.color||f.color,e.width=e.width||f.width,e.opacity=e.opacity||f.opacity,e.fontSize=e.fontSize||3*e.width,h=new fabric.Color(e.color).getSource(),h.pop(),h.push(e.opacity),e.color="rgba("+h.join()+")"),g=0;g0?Math.PI/2:3*Math.PI/2:0==f?e>0?0:Math.PI:0>e?Math.atan(f/e)+Math.PI:0>f?Math.atan(f/e)+2*Math.PI:Math.atan(f/e),180*g/Math.PI},gatherAttribute:function(a,b,d,e){var f,e=e?e:0,d=d?d:3;return a&&(f=a.getAttribute(b),!f&&d>e)?c.gatherAttribute(a.parentNode,b,d,e+1):f},gatherClassName:function(a,b,d,e){var f,e=e?e:0,d=d?d:3;if(c.isElement(a)){if(f=-1!=(a.getAttribute("class")||"").split(" ").indexOf(b),!f&&d>e)return c.gatherClassName(a.parentNode,b,d,e+1);f&&(f=a)}return f},gatherElements:function(a,b,d){var e,f;for(e=0;eg.height?j.legend.height:g.height):-1!=["top","bottom"].indexOf(j.legend.position)&&(g.height+=j.legend.height),j=c.gatherElements(j,e,h),f[j.legend.type](j)}if(c.drawing.buffer.enabled="draw"==e.action,c.setup.wrapper=document.createElement("div"),c.setup.wrapper.setAttribute("class",c.setup.chart.classNamePrefix+"-export-canvas"),c.setup.chart.containerDiv.appendChild(c.setup.wrapper),"stock"==c.setup.chart.type){var k={top:0,right:0,bottom:0,left:0};c.setup.chart.leftContainer&&(g.width-=c.setup.chart.leftContainer.offsetWidth,k.left=c.setup.chart.leftContainer.offsetWidth+2*c.setup.chart.panelsSettings.panelSpacing),c.setup.chart.rightContainer&&(g.width-=c.setup.chart.rightContainer.offsetWidth,k.right=c.setup.chart.rightContainer.offsetWidth+2*c.setup.chart.panelsSettings.panelSpacing),c.setup.chart.periodSelector&&-1!=["top","bottom"].indexOf(c.setup.chart.periodSelector.position)&&(g.height-=c.setup.chart.periodSelector.offsetHeight+c.setup.chart.panelsSettings.panelSpacing,k[c.setup.chart.periodSelector.position]+=c.setup.chart.periodSelector.offsetHeight+c.setup.chart.panelsSettings.panelSpacing),c.setup.chart.dataSetSelector&&-1!=["top","bottom"].indexOf(c.setup.chart.dataSetSelector.position)&&(g.height-=c.setup.chart.dataSetSelector.offsetHeight,k[c.setup.chart.dataSetSelector.position]+=c.setup.chart.dataSetSelector.offsetHeight),c.setup.wrapper.style.paddingTop=c.numberToPx(k.top),c.setup.wrapper.style.paddingRight=c.numberToPx(k.right),c.setup.wrapper.style.paddingBottom=c.numberToPx(k.bottom),c.setup.wrapper.style.paddingLeft=c.numberToPx(k.left)}for(c.setup.canvas=document.createElement("canvas"),c.setup.wrapper.appendChild(c.setup.canvas),c.setup.fabric=new fabric.Canvas(c.setup.canvas,c.deepMerge({width:g.width,height:g.height,isDrawingMode:!0},e)),c.deepMerge(c.setup.fabric,e),c.deepMerge(c.setup.fabric.freeDrawingBrush,e.drawing),c.deepMerge(c.drawing,e.drawing),c.drawing.handler.change(e.drawing),c.setup.fabric.on("mouse:down",function(a){c.gatherPosition(a.e,1);c.drawing.buffer.pressedTS=Number(new Date),c.isPressed(a.e)}),c.setup.fabric.on("mouse:move",function(a){var b=c.gatherPosition(a.e,2);if(c.isPressed(a.e),c.drawing.buffer.isPressed&&!c.drawing.buffer.line&&!c.drawing.buffer.isSelected&&"pencil"!=c.drawing.mode&&(b.xD>5||b.xD>5)&&(c.drawing.buffer.hasLine=!0,c.setup.fabric.isDrawingMode=!1,c.setup.fabric._onMouseUpInDrawingMode(a),c.drawing.buffer.line=c.drawing.handler.line({x1:b.x1,y1:b.y1,x2:b.x2,y2:b.y2,arrow:"line"==c.drawing.mode?!1:c.drawing.arrow,action:"config"})),c.drawing.buffer.line){var e,f,g,h=c.drawing.buffer.line;for(h.x2=b.x2,h.y2=b.y2,d=0;d1&&(b.TSPANWORKAROUND=!0),"hidden"==g)b.opacity=0;else{var i=["fill","stroke"];for(d=0;d"!=n&&(m=3,n=a.slice(-m));var o=a.slice(0,a.length-m),p=' clip-path="url(#'+b.svg.id+')" ',q=(new XMLSerializer).serializeToString(b.svg);a=o+p+n,d.push(q)}return a}},a||{}),f=c.setup.fabric.toSVG(e,e.reviver);if(d.length){var g=f.slice(0,f.length-6),h=f.slice(-6);f=g+d.join("")+h}return e.getBase64&&(f="data:image/svg+xml;base64,"+btoa(f)),c.handleCallback(b,f),f},toPDF:function(a,b){var d=c.deepMerge(c.deepMerge({multiplier:2},c.config.pdfMake),a||{},!0);d.images.reference=c.toPNG(d);var e=new pdfMake.createPdf(d);return b&&e.getDataUrl(function(a){return function(){a.apply(c,arguments)}}(b)),e},toPRINT:function(a,b){var d,e=c.deepMerge({delay:1,lossless:!1},a||{}),f=c.toImage(e),g=[],h=document.body.childNodes;for(f.setAttribute("style","width: 100%; max-height: 100%;"),d=0;de&&(d.s.r=e),d.s.c>f&&(d.s.c=f),d.e.rb?-1:h+10>b?b-h+26+26:j+26>b?b-j:i+26>b?b-i+26:void 0}function m(a){function k(a){h[j++]=a}var b,c,d,f,g,h;if(a.length%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var i=a.length;g="="===a.charAt(i-2)?2:"="===a.charAt(i-1)?1:0,h=new e(3*a.length/4-g),d=g>0?a.length-4:a.length; var j=0;for(b=0,c=0;d>b;b+=4,c+=3)f=l(a.charAt(b))<<18|l(a.charAt(b+1))<<12|l(a.charAt(b+2))<<6|l(a.charAt(b+3)),k((16711680&f)>>16),k((65280&f)>>8),k(255&f);return 2===g?(f=l(a.charAt(b))<<2|l(a.charAt(b+1))>>4,k(255&f)):1===g&&(f=l(a.charAt(b))<<10|l(a.charAt(b+1))<<4|l(a.charAt(b+2))>>2,k(f>>8&255),k(255&f)),h}var d=c.deepMerge({},a||{}),e="undefined"!=typeof Uint8Array?Uint8Array:Array,f="+".charCodeAt(0),g="/".charCodeAt(0),h="0".charCodeAt(0),i="a".charCodeAt(0),j="A".charCodeAt(0),k=m(d.data);return c.handleCallback(b,k),k},handleCallback:function(a){var b,d=Array();if(a&&a instanceof Function){for(b=0;b0&&d.push(arguments[b]);a.apply(c,d)}},handleDropbox:function(a){if(c.drawing.buffer.enabled)if(a.preventDefault(),a.stopPropagation(),"dragover"==a.type)c.setup.wrapper.setAttribute("class",c.setup.chart.classNamePrefix+"-export-canvas active dropbox");else if(c.setup.wrapper.setAttribute("class",c.setup.chart.classNamePrefix+"-export-canvas active"),"drop"==a.type&&a.dataTransfer.files.length)for(var b=0;ba.endDate)&&(i=!0):(ea.endIndex)&&(i=!0)),d.dateFormat&&"dateObject"!=d.dateFormat&&m instanceof Date&&(m=AmCharts.formatDate(m,d.dateFormat))),h[l]=m}i||g.push(h)}d.data=g}return d.data},capitalize:function(a){return a.charAt(0).toUpperCase()+a.slice(1).toLowerCase()},createMenu:function(b,d){function f(b,d){var e,g,h=document.createElement("ul");for(e=0;e=a?(clearTimeout(e),"draw"!=d.action&&c.createMenu(c.config.menu)):i&&(i.innerHTML=c.i18l("capturing.delayed.menu.label").replace("{{duration}}",AmCharts.toFixed(a,2)))},10),f=setTimeout(function(){b.apply(c,arguments)},1e3*d.delay)},migrateSetup:function(a){function c(a){var d;for(d in a){var e=a[d];"export"==d.slice(0,6)&&e?b.menu.push(d.slice(6)):"userCFG"==d?c(e):"menuItems"==d?b.menu=e:"libs"==d?b.libs=e:"string"==typeof d&&(b[d]=e)}}var b={enabled:!0,migrated:!0,libs:{autoLoad:!0},menu:[]};return c(a),b},loadListeners:function(){function a(a){a&&(a.set({top:a.top+10,left:a.left+10}),c.setup.fabric.add(a))}c.config.keyListener&&"attached"!=c.config.keyListener&&(c.config.keyListener="attached",document.addEventListener("keydown",function(b){var d=c.drawing.buffer.target;8!=b.keyCode&&46!=b.keyCode||!d?27==b.keyCode&&c.drawing.enabled?(b.preventDefault(),c.drawing.handler.done()):67==b.keyCode&&(b.metaKey||b.ctrlKey)&&d?c.drawing.buffer.copy=d:88==b.keyCode&&(b.metaKey||b.ctrlKey)&&d?(c.drawing.buffer.copy=d,c.setup.fabric.remove(d)):86==b.keyCode&&(b.metaKey||b.ctrlKey)?c.drawing.buffer.copy&&a(c.drawing.buffer.copy.clone(a)):90==b.keyCode&&(b.metaKey||b.ctrlKey)&&(b.preventDefault(),b.shiftKey?c.drawing.handler.redo():c.drawing.handler.undo()):(b.preventDefault(),c.setup.fabric.remove(d))})),c.config.fileListener&&(c.setup.chart.containerDiv.addEventListener("dragover",c.handleDropbox),c.setup.chart.containerDiv.addEventListener("dragleave",c.handleDropbox),c.setup.chart.containerDiv.addEventListener("drop",c.handleDropbox))},init:function(){clearTimeout(c.timer),c.timer=setInterval(function(){c.setup.chart.containerDiv&&(clearTimeout(c.timer),c.config.enabled&&(c.setup.chart.AmExport=c,c.config.overflow&&(c.setup.chart.div.style.overflow="visible"),c.loadListeners(),c.createMenu(c.config.menu)))},AmCharts.updateRate)},construct:function(){c.drawing.handler.cancel=c.drawing.handler.done;try{c.setup.hasBlob=!!new Blob}catch(a){}window.safari=window.safari?window.safari:{},c.defaults.fabric.drawing.fontSize=c.setup.chart.fontSize||11,c.config.drawing=c.deepMerge(c.defaults.fabric.drawing,c.config.drawing||{},!0),c.deepMerge(c.defaults.fabric,c.config,!0),c.deepMerge(c.defaults.fabric,c.config.fabric||{},!0),c.deepMerge(c.defaults.pdfMake,c.config,!0),c.deepMerge(c.defaults.pdfMake,c.config.pdfMake||{},!0),c.deepMerge(c.libs,c.config.libs||{},!0),c.config.drawing=c.defaults.fabric.drawing,c.config.fabric=c.defaults.fabric,c.config.pdfMake=c.defaults.pdfMake,c.config=c.deepMerge(c.defaults,c.config,!0),c.config.fabric.drawing.enabled&&void 0===c.config.fabric.drawing.menu&&(c.config.fabric.drawing.menu=[],c.deepMerge(c.config.fabric.drawing.menu,[{"class":"export-drawing",menu:[{label:c.i18l("menu.label.draw.add"),menu:[{label:c.i18l("menu.label.draw.shapes"),action:"draw.shapes"},{label:c.i18l("menu.label.draw.text"),action:"text"}]},{label:c.i18l("menu.label.draw.change"),menu:[{label:c.i18l("menu.label.draw.modes"),action:"draw.modes"},{label:c.i18l("menu.label.draw.colors"),action:"draw.colors"},{label:c.i18l("menu.label.draw.widths"),action:"draw.widths"},{label:c.i18l("menu.label.draw.opacities"),action:"draw.opacities"},"UNDO","REDO"]},{label:c.i18l("menu.label.save.image"),menu:["PNG","JPG","SVG","PDF"]},"PRINT","CANCEL"]}])),void 0===c.config.menu&&(c.config.menu=[],c.deepMerge(c.config,{menu:[{"class":"export-main",menu:[{label:c.i18l("menu.label.save.image"),menu:["PNG","JPG","SVG","PDF"]},{label:c.i18l("menu.label.save.data"),menu:["CSV","XLSX","JSON"]},{label:c.i18l("menu.label.draw"),action:"draw",menu:c.config.fabric.drawing.menu},{format:"PRINT",label:c.i18l("menu.label.print")}]}]})),c.libs.path||(c.libs.path=c.config.path+"libs/"),c.isSupported()&&(c.loadDependencies(c.libs.resources,c.libs.reload),c.setup.chart.addClassNames=!0,c.setup.chart[c.name]=c,c.init())}};if(b)c.config=b;else if(c.setup.chart[c.name])c.config=c.setup.chart[c.name];else{if(!c.setup.chart.amExport&&!c.setup.chart.exportConfig)return;c.config=c.migrateSetup(c.setup.chart.amExport||c.setup.chart.exportConfig)}return c.construct(),c.deepMerge(this,c)}}(),AmCharts.addInitHandler(function(a){new AmCharts["export"](a)},["pie","serial","xy","funnel","radar","gauge","stock","map","gantt"]);