{"version":3,"file":"testImageFormat.mjs","sources":["../../../src/detections/utils/testImageFormat.ts"],"sourcesContent":["export 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            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":"AAAA,eAAsB,gBAAgB,WACtC;AAII,MAAI,WAAW;AAEJ,WAAA,IAAI,QAAiB,CAAC,YAC7B;AACU,YAAA,QAAQ,IAAI;AAElB,YAAM,SAAS,MACf;AACI,gBAAQ,EAAI;AAAA,MAAA,GAEhB,MAAM,UAAU,MAChB;AACI,gBAAQ,EAAK;AAAA,MAAA,GAEjB,MAAM,MAAM;AAAA,IAAA,CACf;AAGD,MAAA,uBAAuB,cAAc,WAAW,YACpD;AAEI,QAAA;AACI,YAAM,OAAO,OAAO,MAAM,MAAM,SAAS,GAAG;AAE5C,YAAM,kBAAkB,IAAI;AAAA,IAAA,QAGhC;AACW,aAAA;AAAA,IACX;AAEO,WAAA;AAAA,EACX;AAEO,SAAA;AACX;"}