shadow$provide.module$node_modules$pixi_DOT_js$lib$rendering$renderers$shared$texture$TextureStyle = function(global, require, module, exports) { global = require("module$node_modules$eventemitter3$index"); var uid = require("module$node_modules$pixi_DOT_js$lib$utils$data$uid"), deprecation = require("module$node_modules$pixi_DOT_js$lib$utils$logging$deprecation"); "use strict"; const idHash = Object.create(null), node_modules$pixi_DOT_js$lib$rendering$renderers$shared$texture$TextureStyle$classdecl$var1 = class extends global { constructor(options = {}) { super(); this._resourceType = "textureSampler"; this._touched = 0; this._maxAnisotropy = 1; this.destroyed = !1; options = {...node_modules$pixi_DOT_js$lib$rendering$renderers$shared$texture$TextureStyle$classdecl$var1.defaultOptions, ...options}; this.addressMode = options.addressMode; this.addressModeU = options.addressModeU ?? this.addressModeU; this.addressModeV = options.addressModeV ?? this.addressModeV; this.addressModeW = options.addressModeW ?? this.addressModeW; this.scaleMode = options.scaleMode; this.magFilter = options.magFilter ?? this.magFilter; this.minFilter = options.minFilter ?? this.minFilter; this.mipmapFilter = options.mipmapFilter ?? this.mipmapFilter; this.lodMinClamp = options.lodMinClamp; this.lodMaxClamp = options.lodMaxClamp; this.compare = options.compare; this.maxAnisotropy = options.maxAnisotropy ?? 1; } set addressMode(value) { this.addressModeW = this.addressModeV = this.addressModeU = value; } get addressMode() { return this.addressModeU; } set wrapMode(value) { deprecation.deprecation(deprecation.v8_0_0, "TextureStyle.wrapMode is now TextureStyle.addressMode"); this.addressMode = value; } get wrapMode() { return this.addressMode; } set scaleMode(value) { this.mipmapFilter = this.minFilter = this.magFilter = value; } get scaleMode() { return this.magFilter; } set maxAnisotropy(value) { this._maxAnisotropy = Math.min(value, 16); 1 < this._maxAnisotropy && (this.scaleMode = "linear"); } get maxAnisotropy() { return this._maxAnisotropy; } get _resourceId() { return this._sharedResourceId || this._generateResourceId(); } update() { this._sharedResourceId = null; this.emit("change", this); } _generateResourceId() { const bigKey = `${this.addressModeU}-${this.addressModeV}-${this.addressModeW}-${this.magFilter}-${this.minFilter}-${this.mipmapFilter}-${this.lodMinClamp}-${this.lodMaxClamp}-${this.compare}-${this._maxAnisotropy}`, id = idHash[bigKey]; void 0 === id && (idHash[bigKey] = uid.uid("resource")); this._sharedResourceId = id; return this._resourceId; } destroy() { this.destroyed = !0; this.emit("destroy", this); this.emit("change", this); this.removeAllListeners(); } }; require = node_modules$pixi_DOT_js$lib$rendering$renderers$shared$texture$TextureStyle$classdecl$var1; require.defaultOptions = {addressMode:"clamp-to-edge", scaleMode:"linear"}; exports.TextureStyle = require; }; //# sourceMappingURL=module$node_modules$pixi_DOT_js$lib$rendering$renderers$shared$texture$TextureStyle.js.map