Remove deprecated root-level files after Vite migration
app.js replaced by src/ modules; sw.js, manifest.json, icon.svg moved to public/ — root copies were duplicates. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
9aded56713
commit
655cbe6893
4 files changed
-1943
No files matched your search
@@ -1,22 +0,0 @@
|
|||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
|
|
||||||
<rect width="512" height="512" rx="90" fill="#07070f"/>
|
|
||||||
<rect width="512" height="512" rx="90" fill="url(#bg)"/>
|
|
||||||
<defs>
|
|
||||||
<radialGradient id="bg" cx="30%" cy="40%" r="80%">
|
|
||||||
<stop offset="0%" stop-color="#1a1a2e"/>
|
|
||||||
<stop offset="100%" stop-color="#07070f"/>
|
|
||||||
</radialGradient>
|
|
||||||
</defs>
|
|
||||||
<!-- Music note -->
|
|
||||||
<g fill="#e8a020">
|
|
||||||
<!-- Note head 1 -->
|
|
||||||
<ellipse cx="180" cy="340" rx="48" ry="36" transform="rotate(-15 180 340)"/>
|
|
||||||
<!-- Note head 2 -->
|
|
||||||
<ellipse cx="332" cy="300" rx="48" ry="36" transform="rotate(-15 332 300)"/>
|
|
||||||
<!-- Stem -->
|
|
||||||
<rect x="218" y="160" width="18" height="185" rx="9"/>
|
|
||||||
<rect x="370" y="120" width="18" height="185" rx="9"/>
|
|
||||||
<!-- Beam -->
|
|
||||||
<rect x="218" y="160" width="170" height="22" rx="11"/>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 855 B |
@@ -1,25 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "NovaSonic",
|
|
||||||
"short_name": "NovaSonic",
|
|
||||||
"description": "Self-hosted music streaming PWA",
|
|
||||||
"start_url": "/",
|
|
||||||
"scope": "/",
|
|
||||||
"display": "standalone",
|
|
||||||
"orientation": "portrait-primary",
|
|
||||||
"background_color": "#07070f",
|
|
||||||
"theme_color": "#07070f",
|
|
||||||
"icons": [
|
|
||||||
{
|
|
||||||
"src": "icon.svg",
|
|
||||||
"sizes": "any",
|
|
||||||
"type": "image/svg+xml",
|
|
||||||
"purpose": "any"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"src": "icon.svg",
|
|
||||||
"sizes": "any",
|
|
||||||
"type": "image/svg+xml",
|
|
||||||
"purpose": "maskable"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,40 +0,0 @@
|
|||||||
const CACHE = 'ns-v37';
|
|
||||||
const PRECACHE = ['/', 'index.html', 'styles.css', 'app.js', 'manifest.json', 'icon.svg'];
|
|
||||||
const SKIP_PATHS = ['/rest/stream', '/rest/download', '/config.js'];
|
|
||||||
|
|
||||||
self.addEventListener('install', e => {
|
|
||||||
e.waitUntil(caches.open(CACHE).then(c => c.addAll(PRECACHE)));
|
|
||||||
self.skipWaiting();
|
|
||||||
});
|
|
||||||
|
|
||||||
self.addEventListener('activate', e => {
|
|
||||||
e.waitUntil(
|
|
||||||
caches.keys()
|
|
||||||
.then(keys => Promise.all(keys.filter(k => k !== CACHE).map(k => caches.delete(k))))
|
|
||||||
.then(() => self.clients.claim())
|
|
||||||
.then(() => self.clients.matchAll({ type: 'window', includeUncontrolled: true }))
|
|
||||||
.then(clients => clients.forEach(c => c.postMessage({ type: 'SW_UPDATED', version: CACHE })))
|
|
||||||
);
|
|
||||||
});
|
|
||||||
|
|
||||||
self.addEventListener('message', e => {
|
|
||||||
if (e.data?.type === 'GET_VERSION') {
|
|
||||||
e.source.postMessage({ type: 'VERSION', version: CACHE });
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
self.addEventListener('fetch', e => {
|
|
||||||
if (!e.request.url.startsWith(self.location.origin)) return;
|
|
||||||
if (SKIP_PATHS.some(p => e.request.url.includes(p))) return;
|
|
||||||
e.respondWith(
|
|
||||||
fetch(e.request)
|
|
||||||
.then(res => {
|
|
||||||
if (res.status === 200 && e.request.method === 'GET') {
|
|
||||||
const clone = res.clone();
|
|
||||||
caches.open(CACHE).then(c => c.put(e.request, clone));
|
|
||||||
}
|
|
||||||
return res;
|
|
||||||
})
|
|
||||||
.catch(() => caches.match(e.request).then(r => r || Response.error()))
|
|
||||||
);
|
|
||||||
});
|
|
||||||
Reference in new issue
Block a user