// Admin-App proxy: forwards to backend /api/admin/users mit x-admin-secret
// (Pattern wie andere admin-pages — admin-secret bleibt server-side, nie im Browser).
//
// Query-Params werden 1:1 weitergereicht. Backend macht die Validierung.

export default defineEventHandler(async (event) => {
  const config = useRuntimeConfig();
  const query = getQuery(event);

  const params = new URLSearchParams();
  for (const [k, v] of Object.entries(query)) {
    if (v !== undefined && v !== null && v !== "") {
      params.set(k, String(v));
    }
  }

  const url = `${config.public.apiBase}/api/admin/users${
    params.toString() ? `?${params.toString()}` : ""
  }`;

  return $fetch(url, {
    method: "GET",
    headers: {
      "x-admin-secret": config.adminSecret as string,
    },
  });
});
