88 lines
1.7 KiB
JSON
88 lines
1.7 KiB
JSON
{
|
|
"hosting": {
|
|
"public": "dist",
|
|
"ignore": [
|
|
"firebase.json",
|
|
"**/.*",
|
|
"**/node_modules/**",
|
|
"src/**",
|
|
"*.test.ts",
|
|
"*.test.js",
|
|
"jest.config.js",
|
|
"tsconfig.json",
|
|
".eslintrc.js",
|
|
"vite.config.ts",
|
|
"tailwind.config.js",
|
|
"postcss.config.js"
|
|
],
|
|
"headers": [
|
|
{
|
|
"source": "**/*.js",
|
|
"headers": [
|
|
{
|
|
"key": "Cache-Control",
|
|
"value": "public, max-age=31536000, immutable"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"source": "**/*.css",
|
|
"headers": [
|
|
{
|
|
"key": "Cache-Control",
|
|
"value": "public, max-age=31536000, immutable"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"source": "**/*.html",
|
|
"headers": [
|
|
{
|
|
"key": "Cache-Control",
|
|
"value": "no-cache, no-store, must-revalidate"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"source": "/",
|
|
"headers": [
|
|
{
|
|
"key": "Cache-Control",
|
|
"value": "no-cache, no-store, must-revalidate"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"source": "**/*.@(jpg|jpeg|gif|png|svg|webp|ico)",
|
|
"headers": [
|
|
{
|
|
"key": "Cache-Control",
|
|
"value": "public, max-age=31536000, immutable"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"rewrites": [
|
|
{
|
|
"source": "/api/**",
|
|
"function": "api"
|
|
},
|
|
{
|
|
"source": "**",
|
|
"destination": "/index.html"
|
|
}
|
|
],
|
|
"cleanUrls": true,
|
|
"trailingSlash": false
|
|
},
|
|
"emulators": {
|
|
"hosting": {
|
|
"port": 5000
|
|
},
|
|
"ui": {
|
|
"enabled": true,
|
|
"port": 4000
|
|
}
|
|
}
|
|
}
|