'use strict';

Object.defineProperty(exports, '__esModule', { value: true });

var EventEmitter = require('eventemitter3');
var uid = require('../../../utils/data/uid.js');

function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }

var EventEmitter__default = /*#__PURE__*/_interopDefaultLegacy(EventEmitter);

class ProxyRenderable extends EventEmitter__default["default"] {
  constructor({ original, view }) {
    super();
    this.uid = uid.uid("renderable");
    this.didViewUpdate = false;
    this.view = view;
    if (original) {
      this.init(original);
    }
  }
  init(original) {
    this._original = original;
    this.layerTransform = original.layerTransform;
  }
  get layerColor() {
    return this._original.layerColor;
  }
  get layerBlendMode() {
    return this._original.layerBlendMode;
  }
  get layerVisibleRenderable() {
    return this._original.layerVisibleRenderable;
  }
  get isRenderable() {
    return this._original.isRenderable;
  }
}

exports.ProxyRenderable = ProxyRenderable;
//# sourceMappingURL=ProxyRenderable.js.map
