'use client'; import { useState, useEffect, FC } from 'react'; import { generateBarcode } from '../lib/pdf/pdf417'; import { renderBarcode } from '../lib/pdf/renderBarcode'; import { EncodePayment, PaymentParams } from 'hub-3a-payment-encoder'; export const Pdf417Barcode:FC<{hub3aText:string, className?: string}> = ({hub3aText: hub3a_text, className}) => { const [bitmapData, setBitmapData] = useState(undefined); useEffect(() => { const barcodeMatrix = generateBarcode(hub3a_text); const bitmap = renderBarcode(barcodeMatrix, 2, 2); setBitmapData(bitmap); }, [hub3a_text]); // Don't render until bitmap is generated (prevents hydration mismatch) if (!bitmapData) { return (
); } return ( ); }