Tickets (Ingressos)
Hooks para editar, transferir e gerar arquivo de ingressos do usuário.
useEditUserTicket 🔒
Edita um ingresso do usuário (ex.: nomeação).
import { useEditUserTicket } from '@meaple-com/react-query';
function EditTicket({ userTicketId }: { userTicketId: string }) {
const editTicket = useEditUserTicket();
const handleEdit = async () => {
await editTicket.mutateAsync({
userTicketId,
nomination: { name: 'Novo Nome', document: '12345678900' },
});
};
return <button onClick={handleEdit}>Editar</button>;
}- Parâmetros (
mutateAsync):{ userTicketId: string; nomination?: NominationProps }– ID do ingresso do usuário e dados a atualizar (UpdateUserTicketProps).
Retorno:
{ success: true }– confirmação de sucesso.
Método Core: tickets.editUserTicket — veja o exemplo de resposta no Core.
useTransferTicket 🔒
Transfere um ingresso para outro usuário.
import { useTransferTicket } from '@meaple-com/react-query';
function TransferTicket({ ticketId }: { ticketId: string }) {
const transferTicket = useTransferTicket();
const handleTransfer = async () => {
await transferTicket.mutateAsync({
ticketId,
to: {
email: 'destinatario@example.com',
name: 'Nome',
document: '12345678900',
},
});
};
return <button onClick={handleTransfer}>Transferir</button>;
}- Parâmetros (
mutateAsync):{ ticketId: string; to: TransferTicketRecipientProps }– ID do ingresso e dados do destinatário (TransferTicketProps).
Retorno:
{ success: true }– confirmação de sucesso.
Método Core: tickets.transfer — veja o exemplo de resposta no Core.
useCreateTicketFile 🔒
Gera arquivo do ingresso (PDF ou PNG).
import { useCreateTicketFile } from '@meaple-com/react-query';
function CreateFile({ userTicketId, eventId }: { userTicketId: string; eventId: string }) {
const createFile = useCreateTicketFile();
const handleCreate = async () => {
const blob = await createFile.mutateAsync({
userTicketId,
eventId,
output: 'PDF',
});
// usar blob para download ou exibição
};
return <button onClick={handleCreate}>Baixar ingresso</button>;
}- Parâmetros (
mutateAsync):{ userTicketId: string; eventId: string; output?: 'PNG' | 'PDF' }– CreateTicketFileProps + userTicketId.
Retorno:
- data:
Blob– arquivo do ingresso (para download ou exibição).
Método Core: tickets.createFile — veja o exemplo de resposta no Core.
Last updated on