{"version":3,"file":"cacheTextureArray.mjs","sources":["../../../../src/assets/cache/parsers/cacheTextureArray.ts"],"sourcesContent":["import { ExtensionType } from '../../../extensions/Extensions';\nimport { Texture } from '../../../rendering/renderers/shared/texture/Texture';\n\nimport type { CacheParser } from '../CacheParser';\n\n/**\n * Returns an object of textures from an array of textures to be cached\n * @category assets\n * @internal\n */\nexport const cacheTextureArray: CacheParser<Texture[]> = {\n    extension: {\n        type: ExtensionType.CacheParser,\n        name: 'cacheTextureArray',\n    },\n\n    test: (asset: any[]) => Array.isArray(asset) && asset.every((t) => t instanceof Texture),\n\n    getCacheableAssets: (keys: string[], asset: Texture[]) =>\n    {\n        const out: Record<string, Texture> = {};\n\n        keys.forEach((key: string) =>\n        {\n            asset.forEach((item: Texture, i: number) =>\n            {\n                out[key + (i === 0 ? '' : i + 1)] = item;\n            });\n        });\n\n        return out;\n    }\n};\n"],"names":[],"mappings":";;;;AAUO,MAAM,iBAAA,GAA4C;AAAA,EACrD,SAAA,EAAW;AAAA,IACP,MAAM,aAAA,CAAc,WAAA;AAAA,IACpB,IAAA,EAAM;AAAA,GACV;AAAA,EAEA,IAAA,EAAM,CAAC,KAAA,KAAiB,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAA,IAAK,KAAA,CAAM,KAAA,CAAM,CAAC,CAAA,KAAM,CAAA,YAAa,OAAO,CAAA;AAAA,EAEvF,kBAAA,EAAoB,CAAC,IAAA,EAAgB,KAAA,KACrC;AACI,IAAA,MAAM,MAA+B,EAAC;AAEtC,IAAA,IAAA,CAAK,OAAA,CAAQ,CAAC,GAAA,KACd;AACI,MAAA,KAAA,CAAM,OAAA,CAAQ,CAAC,IAAA,EAAe,CAAA,KAC9B;AACI,QAAA,GAAA,CAAI,OAAO,CAAA,KAAM,CAAA,GAAI,EAAA,GAAK,CAAA,GAAI,EAAE,CAAA,GAAI,IAAA;AAAA,MACxC,CAAC,CAAA;AAAA,IACL,CAAC,CAAA;AAED,IAAA,OAAO,GAAA;AAAA,EACX;AACJ;;;;"}