A aplicação possui dois métodos principais: on e tokenize.

on(eventType, function)

O método on permite escutar eventos e executar um callback quando um determinado evento ocorre.

Eventos disponíveis

cardTypeChange

Disparado quando o valor do campo card-number é alterado.

Objeto de retorno:
{
  field: 'card-number'
  parentNode: Element
  card?: {
    niceType: string
    type: string
    patterns: (number | number[])[]
    gaps: number[]
    lengths: number[]
    code: {
      name: string
      size: number
    }
  }
}
Exemplo de uso
malgaTokenization.on('cardTypeChange', () => console.log('cardTypeChange'))
validity

Disparado quando há uma alteração nos campos e a validação padrão (defaultValidation) está ativada.

Objeto de retorno:
{
  field: 'card-number'| 'card-cvv'| 'card-holder-name'| 'card-expiration-date'
  valid: boolean
  error: {
    field: 'card-number'| 'card-cvv'| 'card-holder-name'| 'card-expiration-date'
    message: string
    code: string
  }
  empty: boolean
  potentialValid: boolean
  parentNode: Element | null
}
Exemplo de uso
malgaTokenization.on('validity', () => console.log('validity'))
focus e blur

Eventos disparados quando um campo recebe ou perde foco.

Objeto de retorno:
{
  field: 'card-number'| 'card-cvv'| 'card-holder-name'| 'card-expiration-date'
  parentNode: Element
}
Exemplo de uso
malgaTokenization.on('blur', () => console.log('blur'))
malgaTokenization.on('focus', () => console.log('focus'))

tokenize()

Método responsável por enviar os dados do cartão para tokenização.

Objeto de retorno:
{
  tokenId: string
  error: {
    type: string 
    code: number
    message: string
    details?: string | string[]
    declinedCode?: string 
    }
}
Exemplo de uso
const { tokenId, error } = await malgaTokenization.tokenize()

if (error) {
  console.error('Error', error.message)
}

return console.log('TokenId:', tokenId)

Método responsável por criptografar os dados do cartão, enviá-los para tokenização e retornar o tokenID em caso de sucesso.