{"version":3,"file":"settings.js","sources":["../src/settings.ts"],"sourcesContent":["import { ENV } from '@pixi/constants';\nimport { settings } from '@pixi/settings';\nimport { deprecation } from '@pixi/utils';\nimport { BatchRenderer } from './batch/BatchRenderer';\nimport { Filter } from './filters/Filter';\nimport { Program } from './shader/Program';\nimport { BackgroundSystem, ContextSystem, StartupSystem, TextureGCSystem, ViewSystem } from './systems';\nimport { BaseTexture } from './textures/BaseTexture';\n\nimport type { GC_MODES, MIPMAP_MODES, MSAA_QUALITY, PRECISION, SCALE_MODES, WRAP_MODES } from '@pixi/constants';\n\n/**\n * The maximum support for using WebGL. If a device does not\n * support WebGL version, for instance WebGL 2, it will still\n * attempt to fallback support to WebGL 1. If you want to\n * explicitly remove feature support to target a more stable\n * baseline, prefer a lower environment.\n * @static\n * @name PREFER_ENV\n * @memberof PIXI.settings\n * @type {number}\n * @default PIXI.ENV.WEBGL2\n */\nsettings.PREFER_ENV = ENV.WEBGL2;\n\n/**\n * If set to `true`, *only* Textures and BaseTexture objects stored\n * in the caches ({@link PIXI.utils.TextureCache TextureCache} and\n * {@link PIXI.utils.BaseTextureCache BaseTextureCache}) can be\n * used when calling {@link PIXI.Texture.from Texture.from} or\n * {@link PIXI.BaseTexture.from BaseTexture.from}.\n * Otherwise, these `from` calls throw an exception. Using this property\n * can be useful if you want to enforce preloading all assets with\n * {@link PIXI.Assets Loader}.\n * @static\n * @name STRICT_TEXTURE_CACHE\n * @memberof PIXI.settings\n * @type {boolean}\n * @default false\n */\nsettings.STRICT_TEXTURE_CACHE = false;\n\n/**\n * The default render options if none are supplied to {@link PIXI.Renderer}\n * or {@link PIXI.CanvasRenderer}.\n * @static\n * @name RENDER_OPTIONS\n * @memberof PIXI.settings\n * @type {PIXI.IRendererOptions}\n */\nsettings.RENDER_OPTIONS = {\n    ...ContextSystem.defaultOptions,\n    ...BackgroundSystem.defaultOptions,\n    ...ViewSystem.defaultOptions,\n    ...StartupSystem.defaultOptions,\n};\n\nObject.defineProperties(settings, {\n    /**\n     * @static\n     * @name WRAP_MODE\n     * @memberof PIXI.settings\n     * @type {PIXI.WRAP_MODES}\n     * @deprecated since 7.1.0\n     * @see PIXI.BaseTexture.defaultOptions.wrapMode\n     */\n    WRAP_MODE: {\n        get()\n        {\n            return BaseTexture.defaultOptions.wrapMode;\n        },\n        set(value: WRAP_MODES)\n        {\n            if (process.env.DEBUG)\n            {\n                deprecation('7.1.0', 'settings.WRAP_MODE is deprecated, use BaseTexture.defaultOptions.wrapMode');\n            }\n            BaseTexture.defaultOptions.wrapMode = value;\n        },\n    },\n\n    /**\n     * @static\n     * @name SCALE_MODE\n     * @memberof PIXI.settings\n     * @type {PIXI.SCALE_MODES}\n     * @deprecated since 7.1.0\n     * @see PIXI.BaseTexture.defaultOptions.scaleMode\n     */\n    SCALE_MODE: {\n        get()\n        {\n            return BaseTexture.defaultOptions.scaleMode;\n        },\n        set(value: SCALE_MODES)\n        {\n            if (process.env.DEBUG)\n            {\n                deprecation('7.1.0', 'settings.SCALE_MODE is deprecated, use BaseTexture.defaultOptions.scaleMode');\n            }\n            BaseTexture.defaultOptions.scaleMode = value;\n        },\n    },\n\n    /**\n     * @static\n     * @name MIPMAP_TEXTURES\n     * @memberof PIXI.settings\n     * @type {PIXI.MIPMAP_MODES}\n     * @deprecated since 7.1.0\n     * @see PIXI.BaseTexture.defaultOptions.mipmap\n     */\n    MIPMAP_TEXTURES:\n    {\n        get()\n        {\n            return BaseTexture.defaultOptions.mipmap;\n        },\n        set(value: MIPMAP_MODES)\n        {\n            if (process.env.DEBUG)\n            {\n                deprecation('7.1.0', 'settings.MIPMAP_TEXTURES is deprecated, use BaseTexture.defaultOptions.mipmap');\n            }\n            BaseTexture.defaultOptions.mipmap = value;\n        },\n        // MIPMAP_MODES.POW2,\n    },\n\n    /**\n     * @static\n     * @name ANISOTROPIC_LEVEL\n     * @memberof PIXI.settings\n     * @type {number}\n     * @deprecated since 7.1.0\n     * @see PIXI.BaseTexture.defaultOptions.anisotropicLevel\n     */\n    ANISOTROPIC_LEVEL:\n    {\n        get()\n        {\n            return BaseTexture.defaultOptions.anisotropicLevel;\n        },\n        set(value: number)\n        {\n            if (process.env.DEBUG)\n            {\n                deprecation(\n                    '7.1.0', 'settings.ANISOTROPIC_LEVEL is deprecated, use BaseTexture.defaultOptions.anisotropicLevel');\n            }\n            BaseTexture.defaultOptions.anisotropicLevel = value;\n        },\n\n    },\n    /**\n     * Default filter resolution.\n     * @static\n     * @name FILTER_RESOLUTION\n     * @memberof PIXI.settings\n     * @deprecated since 7.1.0\n     * @type {number|null}\n     * @see PIXI.Filter.defaultResolution\n     */\n    FILTER_RESOLUTION: {\n        get()\n        {\n            if (process.env.DEBUG)\n            {\n                deprecation('7.1.0', 'settings.FILTER_RESOLUTION is deprecated, use Filter.defaultResolution');\n            }\n\n            return Filter.defaultResolution;\n        },\n        set(value)\n        {\n            Filter.defaultResolution = value;\n        },\n    },\n\n    /**\n     * Default filter samples.\n     * @static\n     * @name FILTER_MULTISAMPLE\n     * @memberof PIXI.settings\n     * @deprecated since 7.1.0\n     * @type {PIXI.MSAA_QUALITY}\n     * @see PIXI.Filter.defaultMultisample\n     */\n    FILTER_MULTISAMPLE: {\n        get()\n        {\n            if (process.env.DEBUG)\n            {\n                deprecation('7.1.0', 'settings.FILTER_MULTISAMPLE is deprecated, use Filter.defaultMultisample');\n            }\n\n            return Filter.defaultMultisample;\n        },\n        set(value: MSAA_QUALITY)\n        {\n            Filter.defaultMultisample = value;\n        },\n    },\n\n    /**\n     * The maximum textures that this device supports.\n     * @static\n     * @name SPRITE_MAX_TEXTURES\n     * @memberof PIXI.settings\n     * @deprecated since 7.1.0\n     * @see PIXI.BatchRenderer.defaultMaxTextures\n     * @type {number}\n     */\n    SPRITE_MAX_TEXTURES: {\n        get()\n        {\n            return BatchRenderer.defaultMaxTextures;\n        },\n        set(value: number)\n        {\n            if (process.env.DEBUG)\n            {\n                deprecation('7.1.0', 'settings.SPRITE_MAX_TEXTURES is deprecated, use BatchRenderer.defaultMaxTextures');\n            }\n            BatchRenderer.defaultMaxTextures = value;\n        },\n    },\n\n    /**\n     * The default sprite batch size.\n     *\n     * The default aims to balance desktop and mobile devices.\n     * @static\n     * @name SPRITE_BATCH_SIZE\n     * @memberof PIXI.settings\n     * @see PIXI.BatchRenderer.defaultBatchSize\n     * @deprecated since 7.1.0\n     * @type {number}\n     */\n    SPRITE_BATCH_SIZE: {\n        get()\n        {\n            return BatchRenderer.defaultBatchSize;\n        },\n        set(value: number)\n        {\n            if (process.env.DEBUG)\n            {\n                deprecation('7.1.0', 'settings.SPRITE_BATCH_SIZE is deprecated, use BatchRenderer.defaultBatchSize');\n            }\n            BatchRenderer.defaultBatchSize = value;\n        },\n    },\n\n    /**\n     * Can we upload the same buffer in a single frame?\n     * @static\n     * @name CAN_UPLOAD_SAME_BUFFER\n     * @memberof PIXI.settings\n     * @see PIXI.BatchRenderer.canUploadSameBuffer\n     * @deprecated since 7.1.0\n     * @type {boolean}\n     */\n    CAN_UPLOAD_SAME_BUFFER: {\n        get()\n        {\n            return BatchRenderer.canUploadSameBuffer;\n        },\n        set(value: boolean)\n        {\n            if (process.env.DEBUG)\n            {\n                // eslint-disable-next-line max-len\n                deprecation('7.1.0', 'settings.CAN_UPLOAD_SAME_BUFFER is deprecated, use BatchRenderer.canUploadSameBuffer');\n            }\n            BatchRenderer.canUploadSameBuffer = value;\n        },\n    },\n\n    /**\n     * Default Garbage Collection mode.\n     * @static\n     * @name GC_MODE\n     * @memberof PIXI.settings\n     * @type {PIXI.GC_MODES}\n     * @deprecated since 7.1.0\n     * @see PIXI.TextureGCSystem.defaultMode\n     */\n    GC_MODE: {\n        get()\n        {\n            return TextureGCSystem.defaultMode;\n        },\n        set(value: GC_MODES)\n        {\n            if (process.env.DEBUG)\n            {\n                deprecation('7.1.0', 'settings.GC_MODE is deprecated, use TextureGCSystem.defaultMode');\n            }\n            TextureGCSystem.defaultMode = value;\n        },\n    },\n\n    /**\n     * Default Garbage Collection max idle.\n     * @static\n     * @name GC_MAX_IDLE\n     * @memberof PIXI.settings\n     * @type {number}\n     * @deprecated since 7.1.0\n     * @see PIXI.TextureGCSystem.defaultMaxIdle\n     */\n    GC_MAX_IDLE: {\n        get()\n        {\n            return TextureGCSystem.defaultMaxIdle;\n        },\n        set(value: number)\n        {\n            if (process.env.DEBUG)\n            {\n                deprecation('7.1.0', 'settings.GC_MAX_IDLE is deprecated, use TextureGCSystem.defaultMaxIdle');\n            }\n            TextureGCSystem.defaultMaxIdle = value;\n        },\n    },\n\n    /**\n     * Default Garbage Collection maximum check count.\n     * @static\n     * @name GC_MAX_CHECK_COUNT\n     * @memberof PIXI.settings\n     * @type {number}\n     * @deprecated since 7.1.0\n     * @see PIXI.TextureGCSystem.defaultCheckCountMax\n     */\n    GC_MAX_CHECK_COUNT: {\n        get()\n        {\n            return TextureGCSystem.defaultCheckCountMax;\n        },\n        set(value: number)\n        {\n            if (process.env.DEBUG)\n            {\n                deprecation('7.1.0', 'settings.GC_MAX_CHECK_COUNT is deprecated, use TextureGCSystem.defaultCheckCountMax');\n            }\n            TextureGCSystem.defaultCheckCountMax = value;\n        },\n    },\n\n    /**\n     * Default specify float precision in vertex shader.\n     * @static\n     * @name PRECISION_VERTEX\n     * @memberof PIXI.settings\n     * @type {PIXI.PRECISION}\n     * @deprecated since 7.1.0\n     * @see PIXI.Program.defaultVertexPrecision\n     */\n    PRECISION_VERTEX: {\n        get()\n        {\n            return Program.defaultVertexPrecision;\n        },\n        set(value: PRECISION)\n        {\n            if (process.env.DEBUG)\n            {\n                deprecation('7.1.0', 'settings.PRECISION_VERTEX is deprecated, use Program.defaultVertexPrecision');\n            }\n            Program.defaultVertexPrecision = value;\n        },\n    },\n\n    /**\n     * Default specify float precision in fragment shader.\n     * @static\n     * @name PRECISION_FRAGMENT\n     * @memberof PIXI.settings\n     * @type {PIXI.PRECISION}\n     * @deprecated since 7.1.0\n     * @see PIXI.Program.defaultFragmentPrecision\n     */\n    PRECISION_FRAGMENT: {\n        get()\n        {\n            return Program.defaultFragmentPrecision;\n        },\n        set(value: PRECISION)\n        {\n            if (process.env.DEBUG)\n            {\n                deprecation('7.1.0', 'settings.PRECISION_FRAGMENT is deprecated, use Program.defaultFragmentPrecision');\n            }\n            Program.defaultFragmentPrecision = value;\n        },\n    },\n});\n"],"names":["settings","ENV","ContextSystem","BackgroundSystem","ViewSystem","StartupSystem","BaseTexture","deprecation","Filter","BatchRenderer","TextureGCSystem","Program"],"mappings":";;;;AAuBAA,SAAAA,SAAS,aAAaC,UAAI,IAAA;AAiB1BD,SAAAA,SAAS,uBAAuB;AAUhCA,SAAA,SAAS,iBAAiB;AAAA,EACtB,GAAGE,cAAc,cAAA;AAAA,EACjB,GAAGC,iBAAiB,iBAAA;AAAA,EACpB,GAAGC,WAAW,WAAA;AAAA,EACd,GAAGC,cAAc,cAAA;AACrB;AAEA,OAAO,iBAAiBL,SAAAA,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAS9B,WAAW;AAAA,IACP,MACA;AACI,aAAOM,wBAAY,eAAe;AAAA,IACtC;AAAA,IACA,IAAI,OACJ;AAGQC,YAAA,YAAY,SAAS,2EAA2E,GAEpGD,YAAA,YAAY,eAAe,WAAW;AAAA,IAC1C;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,YAAY;AAAA,IACR,MACA;AACI,aAAOA,wBAAY,eAAe;AAAA,IACtC;AAAA,IACA,IAAI,OACJ;AAGQC,YAAA,YAAY,SAAS,6EAA6E,GAEtGD,YAAA,YAAY,eAAe,YAAY;AAAA,IAC3C;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,iBACA;AAAA,IACI,MACA;AACI,aAAOA,wBAAY,eAAe;AAAA,IACtC;AAAA,IACA,IAAI,OACJ;AAGQC,YAAA,YAAY,SAAS,+EAA+E,GAExGD,YAAA,YAAY,eAAe,SAAS;AAAA,IACxC;AAAA;AAAA,EAEJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,mBACA;AAAA,IACI,MACA;AACI,aAAOA,wBAAY,eAAe;AAAA,IACtC;AAAA,IACA,IAAI,OACJ;AAGQC,YAAA;AAAA,QACI;AAAA,QAAS;AAAA,MAA2F,GAE5GD,wBAAY,eAAe,mBAAmB;AAAA,IAClD;AAAA,EAEJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,mBAAmB;AAAA,IACf,MACA;AAGoB,aAAAC,MAAA,YAAA,SAAS,wEAAwE,GAG1FC,OAAAA,OAAO;AAAA,IAClB;AAAA,IACA,IAAI,OACJ;AACIA,aAAA,OAAO,oBAAoB;AAAA,IAC/B;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,oBAAoB;AAAA,IAChB,MACA;AAGoB,aAAAD,MAAA,YAAA,SAAS,0EAA0E,GAG5FC,OAAAA,OAAO;AAAA,IAClB;AAAA,IACA,IAAI,OACJ;AACIA,aAAA,OAAO,qBAAqB;AAAA,IAChC;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,qBAAqB;AAAA,IACjB,MACA;AACI,aAAOC,cAAAA,cAAc;AAAA,IACzB;AAAA,IACA,IAAI,OACJ;AAGQF,YAAA,YAAY,SAAS,kFAAkF,GAE3GE,cAAAA,cAAc,qBAAqB;AAAA,IACvC;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaA,mBAAmB;AAAA,IACf,MACA;AACI,aAAOA,cAAAA,cAAc;AAAA,IACzB;AAAA,IACA,IAAI,OACJ;AAGQF,YAAA,YAAY,SAAS,8EAA8E,GAEvGE,cAAAA,cAAc,mBAAmB;AAAA,IACrC;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,wBAAwB;AAAA,IACpB,MACA;AACI,aAAOA,cAAAA,cAAc;AAAA,IACzB;AAAA,IACA,IAAI,OACJ;AAIQF,YAAA,YAAY,SAAS,sFAAsF,GAE/GE,cAAAA,cAAc,sBAAsB;AAAA,IACxC;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,SAAS;AAAA,IACL,MACA;AACI,aAAOC,gBAAAA,gBAAgB;AAAA,IAC3B;AAAA,IACA,IAAI,OACJ;AAGQH,YAAA,YAAY,SAAS,iEAAiE,GAE1FG,gBAAAA,gBAAgB,cAAc;AAAA,IAClC;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,aAAa;AAAA,IACT,MACA;AACI,aAAOA,gBAAAA,gBAAgB;AAAA,IAC3B;AAAA,IACA,IAAI,OACJ;AAGQH,YAAA,YAAY,SAAS,wEAAwE,GAEjGG,gBAAAA,gBAAgB,iBAAiB;AAAA,IACrC;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,oBAAoB;AAAA,IAChB,MACA;AACI,aAAOA,gBAAAA,gBAAgB;AAAA,IAC3B;AAAA,IACA,IAAI,OACJ;AAGQH,YAAA,YAAY,SAAS,qFAAqF,GAE9GG,gBAAAA,gBAAgB,uBAAuB;AAAA,IAC3C;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,kBAAkB;AAAA,IACd,MACA;AACI,aAAOC,QAAAA,QAAQ;AAAA,IACnB;AAAA,IACA,IAAI,OACJ;AAGQJ,YAAA,YAAY,SAAS,6EAA6E,GAEtGI,QAAAA,QAAQ,yBAAyB;AAAA,IACrC;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,oBAAoB;AAAA,IAChB,MACA;AACI,aAAOA,QAAAA,QAAQ;AAAA,IACnB;AAAA,IACA,IAAI,OACJ;AAGQJ,YAAA,YAAY,SAAS,iFAAiF,GAE1GI,QAAAA,QAAQ,2BAA2B;AAAA,IACvC;AAAA,EACJ;AACJ,CAAC;"}