JSFiddle - React, Tailwind, and code Playground

HTML

<title>JS Bin</title>
  <script src="http://snapsvg.io/assets/js/snap.svg-min.js"></script>
  <script src="http://snapsvg.io/assets/js/prism.js"></script>

<body>
  <svg id="svg" width="400" height="400"></svg>

</body>

JavaScript

var lx = 0,
  ly = 0,
  ox = 0,
  oy = 0;
  moveFnc = function(dx, dy, x, y) {
      var thisBox = this.getBBox();
      console.log(thisBox.x, thisBox.y, thisBox);
      lx = dx + ox;
      ly = dy + oy;
      this.transform('t' + lx + ',' + ly);
  }
  startFnc = function(x, y, e) {  }
  endFnc = function() {
      ox = lx;
      oy = ly;  
      console.log(this.getBBox());
  };

var s = Snap("#svg");
var tgroup = s.group();
tgroup.add(s.circle(100, 150, 70), s.circle(200, 150, 70));
tgroup.drag(moveFnc, startFnc, endFnc);