# Enable proxy modules
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so

# Enable rewrite module
LoadModule rewrite_module modules/mod_rewrite.so

# Enable headers module
LoadModule headers_module modules/mod_headers.so

# Set up proxy for API requests
ProxyRequests Off
ProxyPreserveHost On

# Proxy API requests to Node.js server
ProxyPass /api http://localhost:3001/api
ProxyPassReverse /api http://localhost:3001/api

# Enable CORS headers
Header always set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS"
Header always set Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept, Authorization"

# Handle OPTIONS requests for CORS
RewriteEngine On
RewriteCond %{REQUEST_METHOD} OPTIONS
RewriteRule ^(.*)$ $1 [R=200,L,E=HTTP_ORIGIN:%{HTTP:ORIGIN}]

# Set up WebSocket proxy for Vite dev server if needed
RewriteCond %{HTTP:Upgrade} websocket [NC]
RewriteCond %{HTTP:Connection} upgrade [NC]
RewriteRule ^/?(.*) "ws://localhost:5173/$1" [P,L]