2024-10-30 15:06:21 +08:00
|
|
|
import process from "node:process"
|
|
|
|
import type { VitePWAOptions } from "vite-plugin-pwa"
|
|
|
|
import { VitePWA } from "vite-plugin-pwa"
|
|
|
|
|
|
|
|
const pwaOption: Partial<VitePWAOptions> = {
|
|
|
|
includeAssets: ["icon.svg", "apple-touch-icon.png"],
|
2024-11-24 23:37:23 +08:00
|
|
|
filename: "swx.js",
|
2024-10-30 15:06:21 +08:00
|
|
|
manifest: {
|
|
|
|
name: "NewsNow",
|
|
|
|
short_name: "NewsNow",
|
|
|
|
description: "Elegant reading of real-time and hottest news",
|
|
|
|
theme_color: "#F14D42",
|
|
|
|
icons: [
|
|
|
|
{
|
|
|
|
src: "pwa-192x192.png",
|
|
|
|
sizes: "192x192",
|
|
|
|
type: "image/png",
|
|
|
|
},
|
|
|
|
{
|
|
|
|
src: "pwa-512x512.png",
|
|
|
|
sizes: "512x512",
|
|
|
|
type: "image/png",
|
|
|
|
},
|
|
|
|
{
|
|
|
|
src: "pwa-512x512.png",
|
|
|
|
sizes: "512x512",
|
|
|
|
type: "image/png",
|
|
|
|
purpose: "any",
|
|
|
|
},
|
|
|
|
{
|
|
|
|
src: "pwa-512x512.png",
|
|
|
|
sizes: "512x512",
|
|
|
|
type: "image/png",
|
|
|
|
purpose: "maskable",
|
|
|
|
},
|
|
|
|
],
|
|
|
|
},
|
|
|
|
workbox: {
|
|
|
|
navigateFallbackDenylist: [/^\/api/],
|
|
|
|
},
|
|
|
|
devOptions: {
|
|
|
|
enabled: process.env.SW_DEV === "true",
|
|
|
|
type: "module",
|
|
|
|
navigateFallback: "index.html",
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
export default function pwa() {
|
|
|
|
return VitePWA(pwaOption)
|
|
|
|
}
|