-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbzd3panel.min.js
More file actions
1 lines (1 loc) · 2.13 KB
/
bzd3panel.min.js
File metadata and controls
1 lines (1 loc) · 2.13 KB
1
!function(){"use strict";angular.module("bzD3",[])}(),function(){"use strict";function a(a,b,c){function d(){c.$apply(function(){e.resolve(window.d3)})}var e=b.defer(),f=a[0].createElement("script");f.type="text/javascript",f.async=!0,f.src="http://d3js.org/d3.v3.min.js",f.onload=d,f.onreadystatechange=function(){"complete"==this.readyState&&d()};var g=a.prop("body");return g.appendChild(f),{d3:function(){return e.promise}}}angular.module("bzD3").factory("d3Service",a),a.$inject=["$document","$q","$rootScope"]}(),function(){"use strict";function a(a,b){return{restrict:"EA",template:"<div ng-transclude></div>",transclude:!0,scope:{counter:"=",bzD3Render:"=",content:"=",render:"=",redraw:"="},link:function(c,d,e){function f(){e.height?l=parseInt(e.height):(l=$(d).parent().height(),e.height=l),e.width?m=parseInt(e.width):(m=$(d).parent().width(),e.width=m)}function g(a){if(c.bzD3Render.render)a&&c.bzD3Render.render(d3,k,a,d,e);else{var b=[0];i(d3,k,b,d,e)}c.content&&c.bzD3Render.doRedraw(c.content)}function h(a){if(c.bzD3Render.redraw)a&&c.bzD3Render.redraw(d3,k,a,d,e);else{var b=[0];j(d3,k,b,d,e)}}function i(a,b,c,d,e){b.style("stroke-width","0px").style("background-color","#bf8ea6")}function j(a,b,d,e,f){var g=b.selectAll("g").data(d).enter().append("g");g.append("circle").style("fill","red").style("stroke","black").style("stroke-width","2").attr("cx",m/2).attr("cy",l/2).attr("r",40),g.append("text").attr("x",m/2-30).attr("y",l/2).text("LOL WUT"),g.append("text").attr("x",30).attr("y",20).text("Number of insert events: "+ ++c.counter)}c.bzD3Render={render:c.render,redraw:c.redraw,doRender:g,doRedraw:h};{var k,l,m;parseInt(e.margin)||20,parseInt(e.padding)||5}f(),a.d3().then(function(a){k=a.select(d[0]).insert("svg",":first-child").style("height",l+"px").style("width",m+"px"),b.onresize=function(){c.$apply},c.$watch(function(){return d[0].firstElementChild.clientWidth},function(){c.content&&(f(),c.bzD3Render.doRedraw(c.content))}),c.$watchCollection("content",function(a,b){c.content&&(f(),c.bzD3Render.doRedraw(c.content))},!0),c.bzD3Render.doRender(c.content)})}}}angular.module("bzD3").directive("bzD3Panel",a),a.$inject=["d3Service","$window"]}();