se agrega los requerimientos de la LODPD con firma de documentos

This commit is contained in:
2026-04-07 15:14:44 -05:00
parent 408a9b4435
commit 46a11728b8
31 changed files with 1432 additions and 52 deletions
@@ -222,6 +222,8 @@ const signPdf = async ({
qrBackground = 'transparent',
qrBorder = 'none',
verificationUrl = null,
outputDir = null,
outputBaseName = null,
}) => {
const pdfBytes = await fs.readFile(pdfPath);
const pdfDoc = await PDFDocument.load(pdfBytes, { ignoreEncryption: true });
@@ -293,9 +295,9 @@ const signPdf = async ({
const signedBuf = await signInstance.sign(pdfWithPlaceholder, signer);
// ── Save ──────────────────────────────────────────────────────────
const destDir = await getSignedDocumentPath();
const destDir = outputDir || await getSignedDocumentPath();
const ext = path.extname(pdfPath);
const base = path.basename(pdfPath, ext).replace(/^\d+-/, '');
const base = outputBaseName || path.basename(pdfPath, ext).replace(/^\d+-/, '');
const nowForFilename = new Date();
const year = String(nowForFilename.getFullYear());
const month = String(nowForFilename.getMonth() + 1).padStart(2, '0');
@@ -303,7 +305,7 @@ const signPdf = async ({
const hours = String(nowForFilename.getHours()).padStart(2, '0');
const minutes = String(nowForFilename.getMinutes()).padStart(2, '0');
const dateSuffix = `${year}${month}${day}${hours}${minutes}`;
const signedFilename = `${base}_${dateSuffix}${ext}`;
const signedFilename = outputBaseName ? `${base}${ext}` : `${base}_${dateSuffix}${ext}`;
const signedPath = path.join(destDir, signedFilename);
await fs.writeFile(signedPath, signedBuf);