shadow$provide.module$node_modules$pixi_DOT_js$lib$rendering$renderers$shared$view$ViewSystem = function(global, require, module, exports) {
  var adapter = require("module$node_modules$pixi_DOT_js$lib$environment$adapter");
  global = require("module$node_modules$pixi_DOT_js$lib$extensions$Extensions");
  var Rectangle = require("module$node_modules$pixi_DOT_js$lib$maths$shapes$Rectangle"), deprecation = require("module$node_modules$pixi_DOT_js$lib$utils$logging$deprecation"), RenderTarget = require("module$node_modules$pixi_DOT_js$lib$rendering$renderers$shared$renderTarget$RenderTarget"), getCanvasTexture = require("module$node_modules$pixi_DOT_js$lib$rendering$renderers$shared$texture$utils$getCanvasTexture");
  "use strict";
  const node_modules$pixi_DOT_js$lib$rendering$renderers$shared$view$ViewSystem$classdecl$var22 = class {
    get autoDensity() {
      return this.texture.source.autoDensity;
    }
    set autoDensity(value) {
      this.texture.source.autoDensity = value;
    }
    get resolution() {
      return this.texture.source._resolution;
    }
    set resolution(value) {
      this.texture.source.resize(this.texture.source.width, this.texture.source.height, value);
    }
    init(options) {
      options = {...node_modules$pixi_DOT_js$lib$rendering$renderers$shared$view$ViewSystem$classdecl$var22.defaultOptions, ...options};
      options.view && (deprecation.deprecation(deprecation.v8_0_0, "ViewSystem.view has been renamed to ViewSystem.canvas"), options.canvas = options.view);
      this.screen = new Rectangle.Rectangle(0, 0, options.width, options.height);
      this.canvas = options.canvas || adapter.DOMAdapter.get().createCanvas();
      this.antialias = !!options.antialias;
      this.texture = getCanvasTexture.getCanvasTexture(this.canvas, options);
      this.renderTarget = new RenderTarget.RenderTarget({colorTextures:[this.texture], depth:!!options.depth, isRoot:!0});
      this.texture.source.transparent = 1 > options.backgroundAlpha;
      this.resolution = options.resolution;
    }
    resize(desiredScreenWidth, desiredScreenHeight, resolution) {
      this.texture.source.resize(desiredScreenWidth, desiredScreenHeight, resolution);
      this.screen.width = this.texture.frame.width;
      this.screen.height = this.texture.frame.height;
    }
    destroy(options = !1) {
      ("boolean" === typeof options ? options : options?.removeView) && this.canvas.parentNode && this.canvas.parentNode.removeChild(this.canvas);
      this.texture.destroy();
    }
  };
  require = node_modules$pixi_DOT_js$lib$rendering$renderers$shared$view$ViewSystem$classdecl$var22;
  require.extension = {type:[global.ExtensionType.WebGLSystem, global.ExtensionType.WebGPUSystem, global.ExtensionType.CanvasSystem], name:"view", priority:0};
  require.defaultOptions = {width:800, height:600, autoDensity:!1, antialias:!1};
  exports.ViewSystem = require;
};

//# sourceMappingURL=module$node_modules$pixi_DOT_js$lib$rendering$renderers$shared$view$ViewSystem.js.map
