Liferay.Loader.define("commerce-dashboard-web$d3-zoom@1.7.3/src/transform", ['module', 'exports', 'require'], function (module, exports, require) {
  var define = undefined;
  var global = window;
  {
    export function Transform(k, x, y) {
      this.k = k;
      this.x = x;
      this.y = y;
    }

    Transform.prototype = {
      constructor: Transform,
      scale: function (k) {
        return k === 1 ? this : new Transform(this.k * k, this.x, this.y);
      },
      translate: function (x, y) {
        return x === 0 & y === 0 ? this : new Transform(this.k, this.x + this.k * x, this.y + this.k * y);
      },
      apply: function (point) {
        return [point[0] * this.k + this.x, point[1] * this.k + this.y];
      },
      applyX: function (x) {
        return x * this.k + this.x;
      },
      applyY: function (y) {
        return y * this.k + this.y;
      },
      invert: function (location) {
        return [(location[0] - this.x) / this.k, (location[1] - this.y) / this.k];
      },
      invertX: function (x) {
        return (x - this.x) / this.k;
      },
      invertY: function (y) {
        return (y - this.y) / this.k;
      },
      rescaleX: function (x) {
        return x.copy().domain(x.range().map(this.invertX, this).map(x.invert, x));
      },
      rescaleY: function (y) {
        return y.copy().domain(y.range().map(this.invertY, this).map(y.invert, y));
      },
      toString: function () {
        return "translate(" + this.x + "," + this.y + ") scale(" + this.k + ")";
      }
    };

    export var identity = new Transform(1, 0, 0);

    transform.prototype = Transform.prototype;

    export default function transform(node) {
      return node.__zoom || identity;
    }
  }
});
//# sourceMappingURL=transform.js.map