{"version":3,"file":"settings.mjs","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":[],"mappings":"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"}