"use server";

import {
  fetchRegistrationPaymentStatus,
  PaymentStatusResponse,
} from "../services/paymentStatusService";
import { extractDomain } from "../utils/domain";

export async function getPaymentStatusAction(
  registrationId: string,
  options?: {
    paymentIntent?: string | null;
    setupIntent?: string | null;
  }
): Promise<PaymentStatusResponse | null> {
  try {
    const domain = await extractDomain();
    return await fetchRegistrationPaymentStatus(registrationId, domain, options);
  } catch (error) {
    console.error("[getPaymentStatusAction] Error:", error);
    return null;
  }
}
