mirror of
https://github.com/gesellix/Bose-SoundTouch.git
synced 2026-08-18 16:46:17 +00:00
Prepare soundtouch-web to be folded into soundtouch-service as an additive mount. Two changes, no behaviour change for the standalone binary: - Move the embedded assets from /static/* to /app/static/*, so the whole web UI lives under /api/control + /app and nothing contends with a host router's own /static (e.g. the optional Stockholm bridge's root catch-all). index.html and app.js asset references are updated in lockstep. - Split Mount into a portable core and a standalone wrapper. MountWeb registers only the portable surface (/app/static/*, /api/control/*, /app/*) and nothing outside those subtrees (no /, no /health), so it can be mounted into another router additively. Mount (used by cmd/soundtouch-web) now calls MountWeb and adds the standalone-only /health and /->/app redirect. mount_test.go exercises MountWeb (asserts the portable surface owns nothing outside /api/control + /app) and Mount (asserts it adds / and /health). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
27 lines
1.0 KiB
HTML
27 lines
1.0 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<title>AfterTouch</title>
|
|
<meta name="description" content="AfterTouch — A replacement for Bose SoundTouch cloud services. Control your speakers after the cloud shutdown." />
|
|
<script type="importmap">
|
|
{
|
|
"imports": {
|
|
"preact": "/app/static/lib/preact.module.js",
|
|
"preact/hooks": "/app/static/lib/preact-hooks.module.js",
|
|
"htm": "/app/static/lib/htm.module.js"
|
|
}
|
|
}
|
|
</script>
|
|
<link rel="icon" type="image/svg+xml" href="/app/static/img/favicon.svg" />
|
|
<link rel="alternate icon" href="/app/static/img/favicon.ico" />
|
|
<link rel="stylesheet" href="/app/static/css/app.css" />
|
|
</head>
|
|
<body>
|
|
<div id="app"></div>
|
|
<p style="display:none">Bose SoundTouch Toolkit</p>
|
|
<script type="module" src="/app/static/js/app.js"></script>
|
|
</body>
|
|
</html>
|