position-edge-labels.js 526 B

123456789101112131415161718192021
  1. import * as d3 from 'd3'
  2. import _ from 'lodash'
  3. import util from './util'
  4. function positionEdgeLabels (selection, g) {
  5. const created = selection.filter(function () { return !d3.select(this).classed('update') })
  6. function translate (e) {
  7. const edge = g.edge(e)
  8. return _.has(edge, 'x') ? 'translate(' + edge.x + ',' + edge.y + ')' : ''
  9. }
  10. created.attr('transform', translate)
  11. util.applyTransition(selection, g)
  12. .style('opacity', 1)
  13. .attr('transform', translate)
  14. }
  15. export default positionEdgeLabels