{"version":3,"file":"testImageFormat.mjs","sources":["../../../../src/assets/detections/utils/testImageFormat.ts"],"sourcesContent":["/**\n * @param imageData\n * @internal\n */\nexport async function testImageFormat(imageData: string): Promise<boolean>\n{\n    // Some browsers currently do not support createImageBitmap with Blob, so new Image() is preferred when exist.\n    // See https://caniuse.com/createimagebitmap for more information.\n\n    if ('Image' in globalThis)\n    {\n        return new Promise<boolean>((resolve) =>\n        {\n            // eslint-disable-next-line no-restricted-globals\n            const image = new Image();\n\n            image.onload = () =>\n            {\n                resolve(true);\n            };\n            image.onerror = () =>\n            {\n                resolve(false);\n            };\n            image.src = imageData;\n        });\n    }\n\n    if ('createImageBitmap' in globalThis && 'fetch' in globalThis)\n    {\n        try\n        {\n            const blob = await (await fetch(imageData)).blob();\n\n            await createImageBitmap(blob);\n        }\n        catch (_e)\n        {\n            return false;\n        }\n\n        return true;\n    }\n\n    return false;\n}\n"],"names":[],"mappings":";AAIA,eAAsB,gBAAgB,SAAA,EACtC;AAII,EAAA,IAAI,WAAW,UAAA,EACf;AACI,IAAA,OAAO,IAAI,OAAA,CAAiB,CAAC,OAAA,KAC7B;AAEI,MAAA,MAAM,KAAA,GAAQ,IAAI,KAAA,EAAM;AAExB,MAAA,KAAA,CAAM,SAAS,MACf;AACI,QAAA,OAAA,CAAQ,IAAI,CAAA;AAAA,MAChB,CAAA;AACA,MAAA,KAAA,CAAM,UAAU,MAChB;AACI,QAAA,OAAA,CAAQ,KAAK,CAAA;AAAA,MACjB,CAAA;AACA,MAAA,KAAA,CAAM,GAAA,GAAM,SAAA;AAAA,IAChB,CAAC,CAAA;AAAA,EACL;AAEA,EAAA,IAAI,mBAAA,IAAuB,UAAA,IAAc,OAAA,IAAW,UAAA,EACpD;AACI,IAAA,IACA;AACI,MAAA,MAAM,OAAO,MAAA,CAAO,MAAM,KAAA,CAAM,SAAS,GAAG,IAAA,EAAK;AAEjD,MAAA,MAAM,kBAAkB,IAAI,CAAA;AAAA,IAChC,SACO,EAAA,EACP;AACI,MAAA,OAAO,KAAA;AAAA,IACX;AAEA,IAAA,OAAO,IAAA;AAAA,EACX;AAEA,EAAA,OAAO,KAAA;AACX;;;;"}