secureForm.on('ready', () => {
document.getElementById('pay-btn').disabled = false;
});
secureForm.on('formValid', ({ hasErrors }) => {
document.getElementById('pay-btn').disabled = hasErrors;
});
secureForm.on('error', ({ code, message }) => {
document.getElementById('error-box').textContent = `[${code}] ${message}`;
});
secureForm.on('brandDetected', ({ brands }) => {
const primary = brands?.[0];
if (primary) {
document.getElementById('brand-logo').src = `/img/brands/${primary}.svg`;
}
});
secureForm.on('brandUserSelection', ({ selected, matchedBrands }) => {
console.log('User selected:', selected, 'from', matchedBrands);
});
secureForm.on('change', ({ fieldName, valid }) => {
const el = document.getElementById(`${fieldName}-error`);
if (el) el.hidden = valid ?? true;
});
secureForm.on('success', ({ vault_form_token, card }) => {
console.log('Card:', card?.bin, '****', card?.last_four_digits);
sendToBackend(vault_form_token);
});