A music player that connects to your cloud/distributed storage.

feat: implement opensubsonic artwork action

+11 -2
+11 -2
src/components/input/opensubsonic/worker.js
··· 32 32 /** 33 33 * @type {Actions['artwork']} 34 34 */ 35 - export async function artwork(_uri) { 36 - return null; 35 + export async function artwork(uri) { 36 + const parsed = parseURI(uri); 37 + if (!parsed?.songId) return null; 38 + 39 + const client = createClient(parsed.server); 40 + const response = await client.getCoverArt({ id: parsed.songId }).catch( 41 + () => null, 42 + ); 43 + if (!response?.ok) return null; 44 + 45 + return new Uint8Array(await response.arrayBuffer()); 37 46 } 38 47 39 48 /**