Files
open-lovable/components/shared/pixi/PixiAssetManager.ts
T
Developers Digest 836b085f75 continue re-design
2025-09-05 13:06:17 -04:00

28 lines
680 B
TypeScript

import { Assets } from "pixi.js";
class PixiAssetManager {
/**
* Loads assets from the given sources
* @param sources The source URLs of the assets
* @returns A promise that resolves with the loaded asset(s)
*/
public static load<T = any>(...sources: string[]): Promise<T> {
if (sources.length === 0) {
return Promise.reject(new Error("No sources provided"));
}
if (sources.length === 1) {
const src = sources[0];
return Assets.load(src) as Promise<T>;
}
// Handle multiple sources
return Promise.all(
sources.map((src) => this.load(src)),
) as unknown as Promise<T>;
}
}
export default PixiAssetManager;