import type { ProductSlug } from "@/lib/routes";

export type ProductId = 1 | 2 | 3;
export type DemoProductId = ProductId;

export const defaultDemoProduct: ProductSlug = "pureestate";

export const demoProductIds: Record<ProductSlug, ProductId> = {
  pureestate: 1,
  buildpro: 2,
  societypro: 3,
};

export function getProductId(productSlug?: ProductSlug): ProductId {
  return demoProductIds[productSlug ?? defaultDemoProduct];
}

export const getDemoProductId = getProductId;

export function inferProductSlug(pathname: string): ProductSlug | undefined {
  return (Object.keys(demoProductIds) as ProductSlug[]).find((slug) =>
    pathname.includes(`/products/${slug}`),
  );
}
