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>
100 lines
3.3 KiB
Text
100 lines
3.3 KiB
Text
block vars
|
|
|
|
block loadClientEntry
|
|
- const clientEntry = config.clientEntry;
|
|
|
|
doctype html
|
|
|
|
//
|
|
-
|
|
_____ _ _
|
|
/ ___| | | |
|
|
\ `--.| |__ __ _ _ __| | _____ _ _
|
|
`--. \ '_ \ / _` | '__| |/ / _ \ | | |
|
|
/\__/ / | | | (_| | | | < __/ |_| |
|
|
\____/|_| |_|\__,_|_| |_|\_\___|\__, |
|
|
__/ |
|
|
|___/
|
|
|
|
Thank you for using Sharkey!
|
|
If you are reading this message... how about joining the development?
|
|
https://git.joinsharkey.org/Sharkey/Sharkey
|
|
|
|
|
|
html
|
|
|
|
head
|
|
meta(charset='utf-8')
|
|
meta(name='application-name' content='Sharkey')
|
|
meta(name='referrer' content='origin')
|
|
meta(name='theme-color' content= themeColor || '#86b300')
|
|
meta(name='theme-color-orig' content= themeColor || '#86b300')
|
|
meta(property='og:site_name' content= instanceName || 'Sharkey')
|
|
meta(property='instance_url' content= instanceUrl)
|
|
meta(name='viewport' content='width=device-width, initial-scale=1')
|
|
link(rel='icon' href= icon || '/favicon.ico')
|
|
link(rel='apple-touch-icon' href= appleTouchIcon || '/apple-touch-icon.png')
|
|
link(rel='manifest' href='/manifest.json')
|
|
link(rel='search' type='application/opensearchdescription+xml' title=(title || "Sharkey") href=`${url}/opensearch.xml`)
|
|
link(rel='prefetch' href=serverErrorImageUrl)
|
|
link(rel='prefetch' href=infoImageUrl)
|
|
link(rel='prefetch' href=notFoundImageUrl)
|
|
//- https://github.com/misskey-dev/misskey/issues/9842
|
|
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}`)
|
|
|
|
if !config.clientManifestExists
|
|
script(type="module" src="/vite/@vite/client")
|
|
|
|
if Array.isArray(clientEntry.css)
|
|
each href in clientEntry.css
|
|
link(rel='stylesheet' href=`/vite/${href}`)
|
|
|
|
title
|
|
block title
|
|
= title || 'Sharkey'
|
|
|
|
block desc
|
|
meta(name='description' content= desc || '✨🌎✨ A interplanetary communication platform ✨🚀✨')
|
|
|
|
block meta
|
|
|
|
block og
|
|
meta(property='og:title' content= title || 'Sharkey')
|
|
meta(property='og:description' content= desc || '✨🌎✨ A interplanetary communication platform ✨🚀✨')
|
|
meta(property='og:image' content= img)
|
|
meta(property='twitter:card' content='summary')
|
|
|
|
style
|
|
include ../style.css
|
|
|
|
script.
|
|
var VERSION = "#{version}";
|
|
var CLIENT_ENTRY = "#{clientEntry.file}";
|
|
|
|
script
|
|
include ../boot.js
|
|
|
|
body
|
|
noscript: p
|
|
| JavaScriptを有効にしてください
|
|
br
|
|
| Please turn on your JavaScript
|
|
div#splash
|
|
img#splashIcon(src= icon || '/static-assets/splash.png')
|
|
span#splashText
|
|
block randomMOTD
|
|
= randomMOTD
|
|
div#splashSpinner
|
|
<svg class="spinner bg" viewBox="0 0 152 152" xmlns="http://www.w3.org/2000/svg">
|
|
<g transform="matrix(1,0,0,1,12,12)">
|
|
<circle cx="64" cy="64" r="64" style="fill:none;stroke:currentColor;stroke-width:24px;"/>
|
|
</g>
|
|
</svg>
|
|
<svg class="spinner fg" viewBox="0 0 152 152" xmlns="http://www.w3.org/2000/svg">
|
|
<g transform="matrix(1,0,0,1,12,12)">
|
|
<path d="M128,64C128,28.654 99.346,0 64,0C99.346,0 128,28.654 128,64Z" style="fill:none;stroke:currentColor;stroke-width:24px;"/>
|
|
</g>
|
|
</svg>
|
|
block content
|