/*! * chartjs-plugin-style v0.5.0 * https://nagix.github.io/chartjs-plugin-style * (c) 2019 Akihiko Kusanagi * Released under the MIT license */ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("chart.js")):"function"==typeof define&&define.amd?define(["chart.js"],t):(e=e||self).ChartStyle=t(e.Chart)}(this,function(e){"use strict";var t=(e=e&&e.hasOwnProperty("default")?e.default:e).helpers,o=t.options||{},r=t.extend(o,{resolve:o.resolve||function(e,o,r){var l,n,a;for(l=0,n=e.length;l0?s:0)*a/2,left:l,bottom:l,right:l}:{top:d,left:d,bottom:d,right:d},n.save(),this.setPath(n,o),n.clip(),n.translate(-1e6,0),this.setPath(n,o),n.rect(0,0,e.width,e.height),n.fillStyle="black",n.shadowOffsetX=1e6*a-r.right,n.shadowOffsetY=-r.bottom,n.shadowBlur=d,n.shadowColor=t.bevelShadowColor,navigator&&navigator.userAgent.match("Windows.+Firefox")||(n.globalCompositeOperation="source-atop"),n.fill("evenodd"),n.shadowOffsetX=1e6*a+r.left,n.shadowOffsetY=r.top,n.shadowColor=t.bevelHighlightColor,n.fill("evenodd"),n.restore())},drawGlow:function(e,t,o,r){var l=e.ctx,n=r?t.outerGlowWidth:t.innerGlowWidth,a=t.borderWidth,i=e.currentDevicePixelRatio;n&&(l.save(),this.setPath(l,o),r&&l.rect(0,0,e.width,e.height),l.clip("evenodd"),l.translate(-1e6,0),this.setPath(l,o),r||l.rect(0,0,e.width,e.height),l.lineWidth=a,l.strokeStyle="black",l.fillStyle="black",l.shadowOffsetX=1e6*i,l.shadowBlur=n*i,l.shadowColor=r?t.outerGlowColor:t.innerGlowColor,l.fill("evenodd"),a&&l.stroke(),l.restore())},drawInnerGlow:function(e,t,o){this.drawGlow(e,t,o)},drawOuterGlow:function(e,t,o){this.drawGlow(e,t,o,!0)},drawBackgroundOverlay:function(e,t,o){var r=e.ctx,l=t.backgroundOverlayColor;l&&(r.save(),this.setPath(r,o),r.fillStyle=l,r.globalCompositeOperation=t.backgroundOverlayMode,r.fill(),r.restore())},opaque:function(e){return l.color(e).alpha()>0},getHoverColor:function(e){return void 0!==e?l.getHoverColor(e):e},mergeStyle:function(e,t){if(void 0!==e&&void 0!==t)return this.styleKeys.forEach(function(o){e[o]=t[o]}),e},setHoverStyle:function(e,t){var o,r,l=this.styleKeys,n=this.hoverStyleKeys;if(void 0!==e&&void 0!==t){for(o=0,r=l.length;oe.x&&(t=y(t,"left","right")):e.baseo?o:r,right:d.right||l<0?0:l>t?t:l,bottom:d.bottom||n<0?0:n>o?o:n,left:d.left||a<0?0:a>t?t:a}}var g=e.controllers.bar,w=g.extend({dataElementType:c,updateElement:function(e,t){var o=i.resolveStyle(this,e,t,this.chart.options.elements.rectangle),r={};Object.defineProperty(e,"_model",{configurable:!0,get:function(){return r},set:function(e){v(r,e,o)}}),g.prototype.updateElement.apply(this,arguments),delete e._model,e._model=v(r,{parsedBorderWidth:f(r)}),e._styleOptions=o},setHoverStyle:function(e){g.prototype.setHoverStyle.apply(this,arguments),i.saveStyle(e),i.setHoverStyle(e._model,e._styleOptions)},removeHoverStyle:function(e){e.$previousStyle||i.mergeStyle(e._model,e._styleOptions),g.prototype.removeHoverStyle.apply(this,arguments)}}),b=e.helpers.canvas._isPointInArea||function(e,t){return e.x>t.left-1e-6&&e.xt.top-1e-6&&e.y