Files
remanso/vite.config.mts
Julien Calixte c721338dc0 fix: atproto oauth dev redirect, tab isolation, and concurrent load guard
- Use buildLoopbackClientId(window.location) for dev to include port in redirect URI
- Bind Vite dev server to 127.0.0.1 explicitly
- Remove scope override in signInRedirect (use metadata default)
- Clear OAuth callback params from URL after session restore
- Replace follows badge with DaisyUI tabs (All / Following)
- Use separate PublicNoteList instances per tab to isolate v-infinite-scroll state
- Add isLoading guard in onLoadMore to prevent concurrent fetches
2026-03-10 14:18:41 +01:00

87 lines
2.1 KiB
TypeScript

import vue from "@vitejs/plugin-vue"
import path from "path"
import { defineConfig, type UserConfigExport } from "vite"
import { VitePWA } from "vite-plugin-pwa"
export default defineConfig(({ command }) => {
const config: UserConfigExport = {
plugins: [
vue(),
VitePWA({
registerType: "prompt",
includeAssets: [
"favicon.ico",
"apple-touch-icon.png",
"apple-touch-icon-180x180.png",
"favicon.png",
"pwa-64x64.png",
"pwa-192x192.png",
"pwa-512x512.png",
"masked-icon.png",
"maskable-icon-512x512.png",
"monochrome-icon.png",
"assets/*.svg",
],
manifest: {
name: "Remanso",
short_name: "Remanso",
description: "Note taking & sharing app",
background_color: "#ffa4c0",
theme_color: "#2e5c1a",
icons: [
{
src: "pwa-64x64.png",
sizes: "64x64",
type: "image/png",
},
{
src: "pwa-192x192.png",
sizes: "192x192",
type: "image/png",
},
{
src: "pwa-512x512.png",
sizes: "512x512",
type: "image/png",
},
{
src: "favicon.png",
sizes: "1024x1024",
type: "image/png",
},
{
src: "maskable-icon-512x512.png",
sizes: "512x512",
type: "image/png",
purpose: "maskable",
},
{
src: "monochrome-icon.png",
sizes: "1024x1024",
type: "image/png",
purpose: "monochrome",
},
],
},
}),
],
resolve: {
alias: {
"@": path.resolve(__dirname, "./src"),
"node-fetch": "isomorphic-fetch",
},
},
}
if (command === "serve") {
config.define = {
global: {},
}
config.server = {
host: '127.0.0.1',
}
}
return config
})