dagre-d3-es
Version:
<p align="center"> <a href="https://www.npmjs.com/dagre-d3-es"><img src="https://img.shields.io/npm/v/dagre-d3-es.svg?logo=npm&logoColor=fff&label=NPM+package&color=limegreen" alt="dagre-d3-es on npm" /></a> <a href="https://www.npmjs.com/dagre-
37 lines (30 loc) • 872 B
JavaScript
import * as d3 from 'd3';
import * as util from './util.js';
export { positionClusters };
function positionClusters(selection, g) {
var created = selection.filter(function () {
return !d3.select(this).classed('update');
});
function translate(v) {
var node = g.node(v);
return 'translate(' + node.x + ',' + node.y + ')';
}
created.attr('transform', translate);
util.applyTransition(selection, g).style('opacity', 1).attr('transform', translate);
util
.applyTransition(created.selectAll('rect'), g)
.attr('width', function (v) {
return g.node(v).width;
})
.attr('height', function (v) {
return g.node(v).height;
})
.attr('x', function (v) {
var node = g.node(v);
return -node.width / 2;
})
.attr('y', function (v) {
var node = g.node(v);
return -node.height / 2;
});
}