UNPKG

pix-utils

Version:

Set of tools to parse, generate and validate payments of Brazil Instant Payment System (Pix)

32 lines 3.61 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.generatePixObject = generatePixObject; const dynamicPayload_1 = require("./dynamicPayload"); const emvHandler_1 = require("./emvHandler"); const pixElements_1 = require("./types/pixElements"); const qrcodeGenerator_1 = require("./utils/qrcodeGenerator"); function generateThrowFn(obj) { return () => (Object.assign(Object.assign({}, obj), { throwIfError: () => obj })); } function generatePixObject(elements) { if (elements.type === pixElements_1.PixElementType.INVALID) { throw new Error('Invalid Pix type'); } const emvCode = (0, emvHandler_1.createEmv)(elements); const generatedObject = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, elements), { toBRCode: () => emvCode, toImage: () => (0, qrcodeGenerator_1.toBase64)(emvCode) }), (elements.type === pixElements_1.PixElementType.STATIC && elements.urlRec ? { fetchRecPayload: () => (0, dynamicPayload_1.fetchRecPayload)({ url: elements.urlRec }), } : {})), (elements.type === pixElements_1.PixElementType.DYNAMIC ? { fetchPayload: ({ DPP, codMun }) => (0, dynamicPayload_1.fetchPayload)({ url: elements.url, DPP, codMun }), fetchRecPayload: () => (0, dynamicPayload_1.fetchRecPayload)({ url: elements.urlRec }), } : {})), (elements.type === pixElements_1.PixElementType.RECURRENCE ? { fetchRecPayload: () => (0, dynamicPayload_1.fetchRecPayload)({ url: elements.urlRec }), } : {})); return Object.assign(Object.assign({}, generatedObject), { throwIfError: generateThrowFn(generatedObject) }); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZW1ibGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Fzc2VtYmxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWNBLDhDQW9DQztBQWxERCxxREFBaUU7QUFDakUsNkNBQXlDO0FBQ3pDLHFEQUE0RTtBQUM1RSw2REFBbUQ7QUFFbkQsU0FBUyxlQUFlLENBQ3RCLEdBQWtCO0lBRWxCLE9BQU8sR0FBRyxFQUFFLENBQUMsaUNBQ1IsR0FBRyxLQUNOLFlBQVksRUFBRSxHQUFHLEVBQUUsQ0FBQyxHQUFHLElBQ3ZCLENBQUM7QUFDTCxDQUFDO0FBRUQsU0FBZ0IsaUJBQWlCLENBQy9CLFFBQXVCO0lBRXZCLElBQUksUUFBUSxDQUFDLElBQUksS0FBSyw0QkFBYyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzdDLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsTUFBTSxPQUFPLEdBQUcsSUFBQSxzQkFBUyxFQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRXBDLE1BQU0sZUFBZSw2RUFDaEIsUUFBUSxLQUNYLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxPQUFPLEVBQ3ZCLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFBLDBCQUFRLEVBQUMsT0FBTyxDQUFDLEtBQzdCLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyw0QkFBYyxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUMsTUFBTTtRQUM1RCxDQUFDLENBQUM7WUFDRSxlQUFlLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBQSxnQ0FBZSxFQUFDLEVBQUUsR0FBRyxFQUFFLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztTQUNqRTtRQUNILENBQUMsQ0FBQyxFQUFFLENBQUMsR0FDSixDQUFDLFFBQVEsQ0FBQyxJQUFJLEtBQUssNEJBQWMsQ0FBQyxPQUFPO1FBQzFDLENBQUMsQ0FBQztZQUNFLFlBQVksRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FDaEMsSUFBQSw2QkFBWSxFQUFDLEVBQUUsR0FBRyxFQUFFLFFBQVEsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ2xELGVBQWUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFBLGdDQUFlLEVBQUMsRUFBRSxHQUFHLEVBQUUsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ2pFO1FBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUNKLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyw0QkFBYyxDQUFDLFVBQVU7UUFDN0MsQ0FBQyxDQUFDO1lBQ0UsZUFBZSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUEsZ0NBQWUsRUFBQyxFQUFFLEdBQUcsRUFBRSxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDakU7UUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDLENBQ1IsQ0FBQztJQUVGLHVDQUNLLGVBQWUsS0FDbEIsWUFBWSxFQUFFLGVBQWUsQ0FBSSxlQUFlLENBQUMsSUFDakQ7QUFDSixDQUFDIn0=