react-native-plugpag-lib
Version:
Integre facilmente as principais formas de pagamento da PagSeguro em seus aplicativos React Native através deste módulo nativo.
112 lines • 2.99 kB
JavaScript
import { NativeModules, DeviceEventEmitter } from 'react-native';
export let PaymentTypes = /*#__PURE__*/function (PaymentTypes) {
PaymentTypes[PaymentTypes["CREDIT"] = 1] = "CREDIT";
PaymentTypes[PaymentTypes["DEBIT"] = 2] = "DEBIT";
PaymentTypes[PaymentTypes["VOUCHER"] = 3] = "VOUCHER";
PaymentTypes[PaymentTypes["PIX_QR_CODE"] = 5] = "PIX_QR_CODE";
return PaymentTypes;
}({});
export let InstallmentTypes = /*#__PURE__*/function (InstallmentTypes) {
InstallmentTypes[InstallmentTypes["NO_INSTALLMENT"] = 1] = "NO_INSTALLMENT";
InstallmentTypes[InstallmentTypes["SELLER_INSTALLMENT"] = 2] = "SELLER_INSTALLMENT";
InstallmentTypes[InstallmentTypes["BUYER_INSTALLMENT"] = 3] = "BUYER_INSTALLMENT";
return InstallmentTypes;
}({});
import { useEffect, useState } from 'react';
const {
PagseguroPlugpag
} = NativeModules;
export const plugPag = {
installmentTypes: InstallmentTypes,
paymentTypes: PaymentTypes
};
export async function initializeAndActivatePinPad(activationCode) {
try {
const response = await PagseguroPlugpag.initializeAndActivatePinPad(activationCode);
return response;
} catch (error) {
console.error(error);
throw error;
}
}
export async function doPayment({
amount,
installmentType,
installments,
printReceipt,
type,
userReference
}) {
try {
const dataPayment = {
amount,
installmentType,
installments,
printReceipt,
type,
userReference
};
const dataFormatted = JSON.stringify(dataPayment);
const response = await PagseguroPlugpag.doPayment(dataFormatted);
return response;
} catch (error) {
console.error(error);
throw error;
}
}
export async function refundPayment(refundPaymentData) {
try {
const data = JSON.stringify(refundPaymentData);
const response = await PagseguroPlugpag.voidPayment(data);
return response;
} catch (error) {
console.error(error);
throw error;
}
}
export async function print(filePath) {
try {
await PagseguroPlugpag.print(filePath);
} catch (error) {
console.error(error);
throw error;
}
}
export async function reprintCustomerReceipt() {
try {
await PagseguroPlugpag.reprintCustomerReceipt();
} catch (error) {
console.error(error);
throw error;
}
}
export function useTransactionPaymentEvent() {
const [transactionPaymentEvent, setTransactionPaymentEvent] = useState({
code: 0,
message: ''
});
useEffect(() => {
DeviceEventEmitter.addListener('eventPayments', event => {
setTransactionPaymentEvent(event);
});
}, []);
return transactionPaymentEvent;
}
export async function doAbort() {
try {
return PagseguroPlugpag.doAbort();
} catch (error) {
console.error(error);
throw error;
}
}
export async function readNFCCard() {
try {
return PagseguroPlugpag.readNFCCard();
} catch (error) {
console.error(error);
throw error;
}
}
export default plugPag;
//# sourceMappingURL=index.js.map