export default defineNuxtConfig({
  srcDir: '.',

  modules: ['@nuxtjs/tailwindcss', '@pinia/nuxt', '@nuxt/eslint'],

  pages: true,

  dir: {
    pages: 'pages'
  },

  runtimeConfig: {
    // Server-side only (for SSR fetches within Docker network)
    apiUrlInternal: process.env.NUXT_API_URL_INTERNAL || process.env.NUXT_PUBLIC_API_URL || 'http://localhost:8000',
    public: {
      leagueId: 'sba',
      leagueName: 'Stratomatic Baseball Association',
      apiUrl: process.env.NUXT_PUBLIC_API_URL || 'http://localhost:8000',
      wsUrl: process.env.NUXT_PUBLIC_WS_URL || 'http://localhost:8000',
      discordClientId: process.env.NUXT_PUBLIC_DISCORD_CLIENT_ID || '',
      discordRedirectUri: process.env.NUXT_PUBLIC_DISCORD_REDIRECT_URI || 'http://localhost:3000/auth/callback',
    }
  },

  compatibilityDate: '2025-07-15',

  devtools: { enabled: true },

  // Allow access from Nginx Proxy Manager
  devServer: {
    host: '0.0.0.0',  // Listen on all network interfaces
    port: 3000
  },

  // Vite config for external hostname access
  // Configure NUXT_ALLOWED_HOSTS env var for your domains (comma-separated)
  vite: {
    server: {
      allowedHosts: process.env.NUXT_ALLOWED_HOSTS?.split(',') || ['localhost', '127.0.0.1']
    }
  },

  typescript: {
    strict: true,
    typeCheck: false  // Disable in dev - use `npm run type-check` manually
  }
})
