{{- if .Values.global.deerFlow.enable }}
apiVersion: v1
kind: ConfigMap
metadata:
  name: datamate-nginx-conf
data:
  backend.conf: |
    server {
        listen       80;
        server_name  0.0.0.0;

        access_log /var/log/datamate/frontend/access.log main;
        error_log /var/log/datamate/frontend/error.log notice;

        client_max_body_size 1024M;

        add_header Set-Cookie "NEXT_LOCALE=zh";

        location /api/synthesis/ {
            proxy_pass http://datamate-backend-python:18000/api/synthesis/;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }

        location /api/annotation/ {
            proxy_pass http://datamate-backend-python:18000/api/annotation/;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }

        location /api/ {
            proxy_pass http://datamate-backend:8080/api/;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }

        location /chat {
            proxy_pass http://deer-flow-frontend:3000/chat;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }

        location /_next {
            proxy_pass http://deer-flow-frontend:3000/_next;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }

        location /deer-flow-backend/ {
            proxy_pass http://deer-flow-backend:8000/api/;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }

        location / {
            if ($query_string ~* "_rsc=pmmii") {
                proxy_pass http://deer-flow-frontend:3000;
                break;
            }

            root   /opt/frontend;
            try_files $uri $uri/ /index.html;
        }
    }
{{- else }}
apiVersion: v1
kind: ConfigMap
metadata:
  name: datamate-nginx-conf
data:
  backend.conf: |
    server {
        listen       80;
        server_name  0.0.0.0;

        access_log /var/log/datamate/frontend/access.log main;
        error_log /var/log/datamate/frontend/error.log notice;

        client_max_body_size 1024M;

        location /api/synthesis/ {
            proxy_pass http://datamate-backend-python:18000/api/synthesis/;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }

        location /api/annotation/ {
            proxy_pass http://datamate-backend-python:18000/api/annotation/;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }

        location /api/ {
            proxy_pass http://datamate-backend:8080/api/;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }

        location / {
            root   /opt/frontend;
            try_files $uri $uri/ /index.html;
        }
    }
{{- end }}