import QRCode from "qrcode";
import log from "../config/log";

export const generateQRCode = async (
  url: string
) => {
  const options: QRCode.QRCodeToDataURLOptions = {
        errorCorrectionLevel: "H",
        type: "image/png",
        margin: 1,
        color: {
            dark: "#000000",
            light: "#FFFFFF",
        },
    };
  try {
        const dataUrl = await QRCode.toDataURL(url, options);

        // Convert full DataURL to just Base64 string
        const base64 = dataUrl.replace(/^data:image\/png;base64,/, "");

        return base64;
    } catch (error) {
        log.info(`[generateQRCode], QR generation error: ${error}`);
        return false
    }
};

export default generateQRCode;
