Files
Foundry-VTT-Docker/resources/app/node_modules/@pixi/basis/lib/Basis.mjs.map

1 line
5.8 KiB
Plaintext
Raw Normal View History

2025-01-04 00:34:03 +01:00
{"version":3,"file":"Basis.mjs","sources":["../src/Basis.ts"],"sourcesContent":["import { INTERNAL_FORMATS } from '@pixi/compressed-textures';\nimport { TYPES } from '@pixi/core';\n\n/**\n * The transcoding formats provided by basis_universal.\n *\n * NOTE: Not all of these formats are supported on WebGL!\n * @ignore\n */\n/* eslint-disable camelcase, @typescript-eslint/indent */\nexport enum BASIS_FORMATS\n{\n cTFETC1 = 0,\n cTFETC2 = 1,\n cTFBC1 = 2,\n cTFBC3 = 3,\n cTFBC4 = 4,\n cTFBC5 = 5,\n cTFBC7 = 6,\n cTFPVRTC1_4_RGB = 8,\n cTFPVRTC1_4_RGBA = 9,\n cTFASTC_4x4 = 10,\n cTFATC_RGB = 11,\n cTFATC_RGBA_INTERPOLATED_ALPHA = 12,\n cTFRGBA32 = 13,\n cTFRGB565 = 14,\n cTFBGR565 = 15,\n cTFRGBA4444 = 16,\n}\n/* eslint-enable camelcase, @typescript-eslint/indent */\n\n/**\n * Maps {@link BASIS_FORMATS} to {@link PIXI.INTERNAL_FORMATS}\n * @ignore\n */\nexport const BASIS_FORMAT_TO_INTERNAL_FORMAT: { [id: number]: INTERNAL_FORMATS } = {\n [BASIS_FORMATS.cTFETC1]: INTERNAL_FORMATS.COMPRESSED_RGB_ETC1_WEBGL,\n [BASIS_FORMATS.cTFBC1]: INTERNAL_FORMATS.COMPRESSED_RGB_S3TC_DXT1_EXT,\n [BASIS_FORMATS.cTFBC3]: INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT5_EXT,\n [BASIS_FORMATS.cTFPVRTC1_4_RGB]: INTERNAL_FORMATS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG,\n [BASIS_FORMATS.cTFPVRTC1_4_RGBA]: INTERNAL_FORMATS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,\n [BASIS_FORMATS.cTFATC_RGB]: INTERNAL_FORMATS.COMPRESSED_RGB_ATC_WEBGL,\n [BASIS_FORMATS.cTFASTC_4x4]: INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_4x4_KHR,\n [BASIS_FORMATS.cTFBC7]: INTERNAL_FORMATS.COMPRESSED_RGBA_BPTC_UNORM_EXT,\n};\n\n/**\n * Maps {@link BASIS_FORMATS} to {@link PIXI.TYPES}. These formats are a fallback when the basis file cannot be transcoded\n * to a valid compressed texture format.\n *\n * NOTE: {@link BASIS_FORMATS.cTFBGR565} is not supported, while {@link BASIS_FORMATS.cTFRGBA4444} is not implemented by\n * [at]pixi/basis.\n * @ignore\n */\nexport const BASIS_FORMAT_TO_TYPE: { [id: number]: TYPES } = {\n [BASIS_FORMATS.cTFRGBA32]: TYPES.UNSIGNED_BYTE,\n [BASIS_FORMATS.cTFRGB565]: TYPES.UNSIGNED_SHORT_5_6_5,\n [BASIS_FORMATS.cTFRGBA4444]: TYPES.UNSIGNED_SHORT_4_4_4_4,\n};\n\n/**\n * Maps {@link PIXI.INTERNAL_FORMATS} to {@link BASIS_FORMATS}\n * @ignore\n */\nexport const INTERNAL_FORMAT_TO_BASIS_FORMAT: { [id: number]: number }\n = (Object.keys(BASIS_FORMAT_TO_INTERNAL_FORMAT) as string[])\n .map((key: string) => Number(key))\n .reduce((reverseMap: any, basisFormat: any) =>\n {\n reverseMap[(BASIS_FORMAT_TO_INTERNAL_FORMAT as any)[basisFormat]] = basisFormat;\n\n return reverseMap;\n }, {});\n\n/**\n * Enumerates the basis formats with alpha components\n * @ignore\n */\nexport const BASIS_FORMATS_ALPHA: { [id: number]: boolean } = {\n [BASIS_FORMATS.cTFBC3]: true,\n [BASIS_FORMATS.cTFPVRTC1_4_RGBA]: true,\n [BASIS_FORMATS.cTFASTC_4x4]: true,\n [BASIS_FORMATS.cTFBC7]: true,\n};\n\n/**\n * Binding to C++ {@code BasisFile} wrapper class.\n * @see https://github.com/BinomialLLC/basis_universal/blob/master/webgl/transcoder/basis_wrappers.cpp\n * @private\n */\nexport declare class BasisFile\n{\n constructor(buffer: Uint8Array);\n getNumImages(): number;\n getNumLevels(imageId: number): number;\n getImageWidth(imageId: number, level: number): number;\n getImageHeight(imageId: number, level: number): number;\n getHasAlpha(): boolean;\n startTranscoding(): boolean;\n getImageTranscodedSizeInBytes(\n imageId: number,\n level: number,\n basisFormat: number): number;\n transcodeImage(dstBuff: Uint8Array,\n imageId: number,\n level: number,\n basisFormat: BASIS_FORMATS,\n pvrtcWrapAddressing: boolean,\n getAlphaForOpaqueFormats: boolean): number;\n close(): void;\n delete(): void;\n}\n\n// Missing typings? - https://github.com/microsoft/TypeScript/issues/39655\n/**\n * Compressed texture extensions relevant to the formats into which Basis can decompress into.\n * @ignor