UNPKG

@ireceipt.pro/js

Version:

Create PDF files or images (JPG, PNG, WEBP) from your HTML template.

44 lines 1.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createFile = void 0; const axios_1 = require("axios"); const constants_1 = require("../utils/constants"); const handleError_1 = require("../utils/handleError"); const createFile = async (apiKey, type, templateType, templateId, args, size) => { let attempt = 1; let buffer; let error; while (attempt <= 5 && !buffer) { try { const res = await axios_1.default.post(`${constants_1.apiUrl}${type}/${templateType}/${templateId}`, { variables: args || {}, size, }, { headers: { Authorization: `Bearer ${apiKey}`, "User-Agent": "IReceipt PRO JS Library", }, responseType: "arraybuffer", }); if (res.status === 201) { buffer = res.data; } else { error = new Error(res.data); } } catch (err) { error = (0, handleError_1.handleError)(err); } attempt += 1; if (!buffer) await new Promise((res) => { setTimeout(res, attempt * 1000); }); } if (!buffer) throw error; return buffer; }; exports.createFile = createFile; //# sourceMappingURL=createFile.js.map