upd: Refactor mod player

Imports parts of the reworked mod player code from Firefish, mainly
replacing the canvas based renderer with a DOM based one, and lazily
loading libopenmpt only when needed.

Notably does not fix the mod player not working on dev mode. The vite dev
server doesn't seem to like how libopenmpt loads it's wasm binary.

I reverted all the styling changes that weren't necessary for the DOM
renderer due to the pending media UI changes[1] from upstream. I'd like
to attempt to make the mod player consistent with *that* once it's merged.

I also went ahead and module-ified the CSS classes to be more in line with
latest Misskey coding practices.

[1]: https://github.com/misskey-dev/misskey/pull/12925

Co-authored-by: Essem <smswessem@gmail.com>
This commit is contained in:
ShittyKopper 2024-01-10 16:56:43 +03:00
parent 6cc81b6a9a
commit af3065f315
10 changed files with 423 additions and 267 deletions

View file

@ -43,7 +43,6 @@ html
link(rel='stylesheet' href='/assets/phosphor-icons/bold/style.css')
link(rel='stylesheet' href='/static-assets/fonts/sharkey-icons/style.css')
link(rel='modulepreload' href=`/vite/${clientEntry.file}`)
script(src='/client-assets/libopenmpt.js')
if !config.clientManifestExists
script(type="module" src="/vite/@vite/client")
@ -73,7 +72,6 @@ html
script.
var VERSION = "#{version}";
var CLIENT_ENTRY = "#{clientEntry.file}";
window.libopenmpt = window.Module;
script
include ../boot.js