shadow$provide.module$node_modules$pixi_DOT_js$lib$scene$view$ViewContainer = function(global, require, module, exports) {
  var Bounds = require("module$node_modules$pixi_DOT_js$lib$scene$container$bounds$Bounds");
  global = require("module$node_modules$pixi_DOT_js$lib$scene$container$Container");
  "use strict";
  class ViewContainer extends global.Container {
    constructor(options) {
      super(options);
      this.canBundle = !0;
      this.allowChildren = !1;
      this._roundPixels = 0;
      this._lastUsed = -1;
      this._gpuData = Object.create(null);
      this.autoGarbageCollect = !0;
      this._gcLastUsed = -1;
      this._bounds = new Bounds.Bounds(0, 1, 0, 0);
      this._boundsDirty = !0;
      this.autoGarbageCollect = options.autoGarbageCollect ?? !0;
    }
    get bounds() {
      if (!this._boundsDirty) {
        return this._bounds;
      }
      this.updateBounds();
      this._boundsDirty = !1;
      return this._bounds;
    }
    get roundPixels() {
      return !!this._roundPixels;
    }
    set roundPixels(value) {
      this._roundPixels = value ? 1 : 0;
    }
    containsPoint(point) {
      const bounds = this.bounds, {x, y} = point;
      return x >= bounds.minX && x <= bounds.maxX && y >= bounds.minY && y <= bounds.maxY;
    }
    onViewUpdate() {
      this._didViewChangeTick++;
      this._boundsDirty = !0;
      if (!this.didViewUpdate) {
        this.didViewUpdate = !0;
        var renderGroup = this.renderGroup || this.parentRenderGroup;
        if (renderGroup) {
          renderGroup.onChildViewUpdate(this);
        }
      }
    }
    unload() {
      this.emit("unload", this);
      for (const key in this._gpuData) {
        this._gpuData[key]?.destroy();
      }
      this._gpuData = Object.create(null);
      this.onViewUpdate();
    }
    destroy(options) {
      this.unload();
      super.destroy(options);
      this._bounds = null;
    }
    collectRenderablesSimple(instructionSet, renderer, currentLayer) {
      const {renderPipes} = renderer;
      renderPipes.blendMode.pushBlendMode(this, this.groupBlendMode, instructionSet);
      var pipe = renderPipes[this.renderPipeId];
      pipe?.addRenderable && pipe.addRenderable(this, instructionSet);
      this.didViewUpdate = !1;
      pipe = this.children;
      const length = pipe.length;
      for (let i = 0; i < length; i++) {
        pipe[i].collectRenderables(instructionSet, renderer, currentLayer);
      }
      renderPipes.blendMode.popBlendMode(instructionSet);
    }
  }
  exports.ViewContainer = ViewContainer;
};

//# sourceMappingURL=module$node_modules$pixi_DOT_js$lib$scene$view$ViewContainer.js.map
