feat: add PWA support and bump project version to 0.3.59
Integrate vite-plugin-pwa to enable service worker generation, offline caching, and standalone display mode. Configure manifest metadata, 192px/512px icons, theme color, and iOS status bar styling. Bump project version to 0.3.59 across Cargo.toml, Cargo.lock, and version.txt, and regenerate package-lock.json.
This commit is contained in:
2
Cargo.lock
generated
2
Cargo.lock
generated
@@ -4,7 +4,7 @@ version = 4
|
||||
|
||||
[[package]]
|
||||
name = "PMOMusic"
|
||||
version = "0.3.56"
|
||||
version = "0.3.59"
|
||||
dependencies = [
|
||||
"axum 0.8.7",
|
||||
"console-subscriber",
|
||||
|
||||
BIN
PMOMusic-A-192.png
Normal file
BIN
PMOMusic-A-192.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 45 KiB |
BIN
PMOMusic-A-512.png
Normal file
BIN
PMOMusic-A-512.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 228 KiB |
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "PMOMusic"
|
||||
version = "0.3.56"
|
||||
version = "0.3.59"
|
||||
edition = "2024"
|
||||
|
||||
[dependencies]
|
||||
|
||||
@@ -2,9 +2,15 @@
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
|
||||
<link rel="icon" type="image/png" sizes="192x192" href="/app/icons/icon-192.png" />
|
||||
<link rel="apple-touch-icon" href="/app/icons/icon-192.png" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
||||
<title>webapp</title>
|
||||
<meta name="theme-color" content="#111827" />
|
||||
<meta name="mobile-web-app-capable" content="yes" />
|
||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
||||
<meta name="apple-mobile-web-app-title" content="PMOMusic" />
|
||||
<title>PMOMusic</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
|
||||
4858
pmoapp/webapp/package-lock.json
generated
4858
pmoapp/webapp/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -25,6 +25,7 @@
|
||||
"@vue/tsconfig": "^0.8.1",
|
||||
"typescript": "~5.8.3",
|
||||
"vite": "^7.1.7",
|
||||
"vite-plugin-pwa": "^1.3.0",
|
||||
"vue-tsc": "^3.0.7"
|
||||
}
|
||||
}
|
||||
|
||||
BIN
pmoapp/webapp/public/icons/icon-192.png
Normal file
BIN
pmoapp/webapp/public/icons/icon-192.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 45 KiB |
BIN
pmoapp/webapp/public/icons/icon-512.png
Normal file
BIN
pmoapp/webapp/public/icons/icon-512.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 228 KiB |
@@ -1,10 +1,58 @@
|
||||
import { defineConfig } from 'vite'
|
||||
import vue from '@vitejs/plugin-vue'
|
||||
import { VitePWA } from 'vite-plugin-pwa'
|
||||
import { fileURLToPath, URL } from 'node:url'
|
||||
|
||||
// https://vite.dev/config/
|
||||
export default defineConfig({
|
||||
plugins: [vue()],
|
||||
plugins: [
|
||||
vue(),
|
||||
VitePWA({
|
||||
registerType: 'autoUpdate',
|
||||
base: '/app/',
|
||||
manifest: {
|
||||
name: 'PMOMusic',
|
||||
short_name: 'PMOMusic',
|
||||
description: 'Contrôleur UPnP/DLNA pour votre musique',
|
||||
start_url: '/app/',
|
||||
display: 'standalone',
|
||||
orientation: 'any',
|
||||
theme_color: '#111827',
|
||||
background_color: '#111827',
|
||||
icons: [
|
||||
{
|
||||
src: '/app/icons/icon-192.png',
|
||||
sizes: '192x192',
|
||||
type: 'image/png',
|
||||
},
|
||||
{
|
||||
src: '/app/icons/icon-512.png',
|
||||
sizes: '512x512',
|
||||
type: 'image/png',
|
||||
purpose: 'any maskable',
|
||||
},
|
||||
],
|
||||
},
|
||||
workbox: {
|
||||
navigateFallback: '/app/index.html',
|
||||
globPatterns: ['**/*.{js,css,html,ico,png,svg,woff2}'],
|
||||
runtimeCaching: [
|
||||
{
|
||||
urlPattern: /^\/api\//,
|
||||
handler: 'NetworkFirst',
|
||||
options: {
|
||||
cacheName: 'api-cache',
|
||||
networkTimeoutSeconds: 5,
|
||||
},
|
||||
},
|
||||
{
|
||||
urlPattern: /^\/audio\//,
|
||||
handler: 'NetworkOnly',
|
||||
},
|
||||
],
|
||||
},
|
||||
}),
|
||||
],
|
||||
base: '/app/', // Base path pour le déploiement
|
||||
resolve: {
|
||||
alias: {
|
||||
|
||||
@@ -1 +1 @@
|
||||
0.3.56
|
||||
0.3.59
|
||||
|
||||
Reference in New Issue
Block a user