Files
nothoughts/node_modules/pixi.js/lib/scene/text-html/utils/loadSVGImage.mjs.map
2025-08-04 18:57:35 +02:00

1 line
1.8 KiB
Plaintext

{"version":3,"file":"loadSVGImage.mjs","sources":["../../../../src/scene/text-html/utils/loadSVGImage.ts"],"sourcesContent":["/**\n * This function loads an SVG image into an HTMLImageElement.\n * The image can then be uploaded as texture to the GPU.\n * iOS has a bug where embedded fonts are not available immediately after the image loads,\n * so we wait an arbitrary amount of time before resolving the promise.\n * @param image - The image to load the SVG into\n * @param url - The url to load the SVG from\n * @param delay - Whether to delay the load\n * @returns - A promise that resolves when the image has loaded\n */\nexport function loadSVGImage(image: HTMLImageElement, url: string, delay: boolean)\n{\n return new Promise<void>(async (resolve) =>\n {\n // Safari has a known bug where embedded fonts are not available\n // immediately after the image loads, to compensate we wait an\n // arbitrary amount of time\n // @see https://bugs.webkit.org/show_bug.cgi?id=219770\n if (delay)\n {\n await new Promise<void>((resolve) => setTimeout(resolve, 100));\n }\n\n image.onload = () =>\n {\n resolve();\n };\n\n image.src = `data:image/svg+xml;charset=utf8,${encodeURIComponent(url)}`;\n image.crossOrigin = 'anonymous';\n });\n}\n"],"names":["resolve"],"mappings":";AAUgB,SAAA,YAAA,CAAa,KAAyB,EAAA,GAAA,EAAa,KACnE,EAAA;AACI,EAAO,OAAA,IAAI,OAAc,CAAA,OAAO,OAChC,KAAA;AAKI,IAAA,IAAI,KACJ,EAAA;AACI,MAAA,MAAM,IAAI,OAAc,CAAA,CAACA,aAAY,UAAWA,CAAAA,QAAAA,EAAS,GAAG,CAAC,CAAA,CAAA;AAAA,KACjE;AAEA,IAAA,KAAA,CAAM,SAAS,MACf;AACI,MAAQ,OAAA,EAAA,CAAA;AAAA,KACZ,CAAA;AAEA,IAAA,KAAA,CAAM,GAAM,GAAA,CAAA,gCAAA,EAAmC,kBAAmB,CAAA,GAAG,CAAC,CAAA,CAAA,CAAA;AACtE,IAAA,KAAA,CAAM,WAAc,GAAA,WAAA,CAAA;AAAA,GACvB,CAAA,CAAA;AACL;;;;"}