pix-utils
Version:
Set of tools to parse, generate and validate payments of Brazil Instant Payment System (Pix)
39 lines • 3.32 kB
JavaScript
import { PixElementType, } from './types/pixElements';
import { EmvMaiSchema, EmvSchema } from './types/pixEmvSchema';
export function isPix(emvElements, test) {
if (!emvElements.getTag(EmvSchema.TAG_MAI))
return false;
const isDynamic = emvElements.getSubTag(EmvMaiSchema.TAG_MAI_URL, EmvSchema.TAG_MAI);
const isStatic = emvElements.getSubTag(EmvMaiSchema.TAG_MAI_PIXKEY, EmvSchema.TAG_MAI);
const isRecurrence = emvElements.getSubTag(EmvMaiSchema.TAG_MAI_URL, EmvSchema.TAG_UNRESERVED_TEMPLATE);
switch (test) {
case 'pix':
return true;
case 'valid':
return !!isStatic || !!isDynamic || !!isRecurrence;
case 'static':
return !!isStatic;
case 'dynamic':
return !!isDynamic;
case 'recurrence':
return !!isRecurrence;
default:
return false;
}
}
export function hasError(pixElement) {
return !!pixElement.error;
}
export function hasElementError(pixElement) {
return !!pixElement.error;
}
export function isStaticPix(pixElement) {
return pixElement && pixElement.type === PixElementType.STATIC;
}
export function isDynamicPix(pixElement) {
return pixElement && pixElement.type === PixElementType.DYNAMIC;
}
export function isRecurrencePix(pixElement) {
return pixElement && pixElement.type === PixElementType.RECURRENCE;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdmFsaWRhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLGNBQWMsR0FJZixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFhLE1BQU0sc0JBQXNCLENBQUM7QUFHMUUsTUFBTSxVQUFVLEtBQUssQ0FDbkIsV0FBc0IsRUFDdEIsSUFBMkQ7SUFFM0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQztRQUFFLE9BQU8sS0FBSyxDQUFDO0lBRXpELE1BQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQ3JDLFlBQVksQ0FBQyxXQUFXLEVBQ3hCLFNBQVMsQ0FBQyxPQUFPLENBQ2xCLENBQUM7SUFDRixNQUFNLFFBQVEsR0FBRyxXQUFXLENBQUMsU0FBUyxDQUNwQyxZQUFZLENBQUMsY0FBYyxFQUMzQixTQUFTLENBQUMsT0FBTyxDQUNsQixDQUFDO0lBRUYsTUFBTSxZQUFZLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FDeEMsWUFBWSxDQUFDLFdBQVcsRUFDeEIsU0FBUyxDQUFDLHVCQUF1QixDQUNsQyxDQUFDO0lBRUYsUUFBUSxJQUFJLEVBQUUsQ0FBQztRQUNiLEtBQUssS0FBSztZQUNSLE9BQU8sSUFBSSxDQUFDO1FBQ2QsS0FBSyxPQUFPO1lBQ1YsT0FBTyxDQUFDLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDLFlBQVksQ0FBQztRQUNyRCxLQUFLLFFBQVE7WUFDWCxPQUFPLENBQUMsQ0FBQyxRQUFRLENBQUM7UUFDcEIsS0FBSyxTQUFTO1lBQ1osT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ3JCLEtBQUssWUFBWTtZQUNmLE9BQU8sQ0FBQyxDQUFDLFlBQVksQ0FBQztRQUN4QjtZQUNFLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBTSxVQUFVLFFBQVEsQ0FDdEIsVUFBaUM7SUFFakMsT0FBTyxDQUFDLENBQUUsVUFBdUIsQ0FBQyxLQUFLLENBQUM7QUFDMUMsQ0FBQztBQUVELE1BQU0sVUFBVSxlQUFlLENBQzdCLFVBQWtDO0lBRWxDLE9BQU8sQ0FBQyxDQUFFLFVBQXVCLENBQUMsS0FBSyxDQUFDO0FBQzFDLENBQUM7QUFFRCxNQUFNLFVBQVUsV0FBVyxDQUN6QixVQUFzQjtJQUV0QixPQUFPLFVBQVUsSUFBSSxVQUFVLENBQUMsSUFBSSxLQUFLLGNBQWMsQ0FBQyxNQUFNLENBQUM7QUFDakUsQ0FBQztBQUVELE1BQU0sVUFBVSxZQUFZLENBQzFCLFVBQXNCO0lBRXRCLE9BQU8sVUFBVSxJQUFJLFVBQVUsQ0FBQyxJQUFJLEtBQUssY0FBYyxDQUFDLE9BQU8sQ0FBQztBQUNsRSxDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FDN0IsVUFBc0I7SUFFdEIsT0FBTyxVQUFVLElBQUksVUFBVSxDQUFDLElBQUksS0FBSyxjQUFjLENBQUMsVUFBVSxDQUFDO0FBQ3JFLENBQUMifQ==