powerpointproto slides.waow.tech
slides
at main 38 lines 1.1 kB view raw
1import { sveltekit } from '@sveltejs/kit/vite'; 2import { defineConfig } from 'vite'; 3import metadata from './static/oauth-client-metadata.json'; 4 5const SERVER_HOST = '127.0.0.1'; 6const SERVER_PORT = 5173; 7 8export default defineConfig({ 9 server: { 10 host: SERVER_HOST, 11 port: SERVER_PORT, 12 }, 13 plugins: [ 14 // OAuth environment variables for dev/prod 15 { 16 name: 'oauth-env', 17 config(_conf, { command }) { 18 if (command === 'build') { 19 // Production: use the actual client metadata 20 process.env.VITE_OAUTH_CLIENT_ID = metadata.client_id; 21 process.env.VITE_OAUTH_REDIRECT_URI = metadata.redirect_uris[0]; 22 } else { 23 // Dev mode: use loopback IP client ID format (RFC 8252) 24 const redirectUri = `http://${SERVER_HOST}:${SERVER_PORT}/`; 25 const clientId = 26 `http://localhost` + 27 `?redirect_uri=${encodeURIComponent(redirectUri)}` + 28 `&scope=${encodeURIComponent(metadata.scope)}`; 29 30 process.env.VITE_OAUTH_CLIENT_ID = clientId; 31 process.env.VITE_OAUTH_REDIRECT_URI = redirectUri; 32 } 33 process.env.VITE_OAUTH_SCOPE = metadata.scope; 34 } 35 }, 36 sveltekit() 37 ] 38});