A music player that connects to your cloud/distributed storage.
1import { defineElement, DiffuseElement } from "~/common/element.js";
2
3/**
4 * @import {ProxiedActions} from "~/common/worker.d.ts"
5 * @import {Actions} from "~/components/artwork/types.d.ts"
6 */
7
8////////////////////////////////////////////
9// ELEMENT
10////////////////////////////////////////////
11
12/**
13 * @implements {ProxiedActions<Actions>}
14 */
15class LastFmArtwork extends DiffuseElement {
16 static NAME = "diffuse/artwork/last.fm";
17 static WORKER_URL = "components/artwork/last.fm/worker.js";
18
19 constructor() {
20 super();
21
22 /** @type {ProxiedActions<Actions>} */
23 const p = this.workerProxy();
24
25 this.get = p.get;
26 }
27}
28
29export default LastFmArtwork;
30
31////////////////////////////////////////////
32// REGISTER
33////////////////////////////////////////////
34
35export const CLASS = LastFmArtwork;
36export const NAME = "da-lastfm";
37
38defineElement(NAME, LastFmArtwork);