import { createClient } from "@sanity/client";
import imageUrlBuilder from "@sanity/image-url";
import { env, hasSanity } from "@/lib/env";

const isProduction = process.env.NODE_ENV === "production";

export const sanityClient = hasSanity
  ? createClient({
      projectId: env.sanityProjectId,
      dataset: env.sanityDataset,
      apiVersion: env.sanityApiVersion,
      perspective: "published",
      stega: false,
      useCdn: isProduction,
    })
  : null;

const builder = hasSanity && sanityClient ? imageUrlBuilder(sanityClient) : null;

export function urlForSanityImage(source: unknown) {
  if (!builder || !source) {
    return null;
  }
  return builder.image(source).fit("max").auto("format").url();
}

