码桶
发现社区成员的开源项目
vite.config.js1.4 KB
import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
import { VitePWA } from 'vite-plugin-pwa'
import { visualizer } from 'rollup-plugin-visualizer'
// https://vitejs.dev/config/
export default defineConfig({
plugins: [
react(),
process.env.ANALYZE && visualizer({ open: false, filename: 'dist/stats.html', gzipSize: true }),
VitePWA({
registerType: 'autoUpdate',
workbox: {
skipWaiting: true,
clientsClaim: true,
globPatterns: ['**/*.{js,css,html,svg,png,ico}'],
runtimeCaching: [
{
urlPattern: /^https:\/\/api\.cloudflare\.com\/.*/i,
handler: 'NetworkFirst',
options: {
cacheName: 'cf-api-cache',
expiration: { maxEntries: 50, maxAgeSeconds: 300 }
}
}
]
},
manifest: {
name: 'CF DNS Manager',
short_name: 'DNS Manager',
description: 'Cloudflare DNS Management Panel',
theme_color: '#f48120',
background_color: '#ffffff',
display: 'standalone',
start_url: '/',
icons: [
{ src: '/logo.svg', sizes: 'any', type: 'image/svg+xml', purpose: 'any maskable' }
]
}
})
].filter(Boolean),
test: {
globals: true,
environment: 'jsdom',
setupFiles: './tests/setup.js',
include: ['tests/**/*.test.{js,jsx}'],
},
})