UNPKG

get-mexican-data-by-curp

Version:

Verify CURP and obtain personal information from the Mexican government CURP. It scrapes official site and another providers.

43 lines (42 loc) 1.71 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Firestore = void 0; const firestore_1 = require("firebase-admin/lib/firestore"); const models_1 = require("../models"); class Firestore extends models_1.Provider { constructor(documentPath = curpValue => `id/${curpValue}`) { super(); this.documentPath = documentPath; } // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types save(mexican) { if (mexican === undefined || mexican.curp === undefined) { throw new Error('Provider error'); } return firestore_1.getFirestore().collection('id').doc(mexican.curp).set(mexican); } // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types provide(curp) { // eslint-disable-next-line @typescript-eslint/no-unsafe-return,@typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access return firestore_1.getFirestore() .doc(this.documentPath(curp.value)) .get() .then((document) => { if (!document.exists) { return null; } const data = document.data(); // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access if (data.error) { return { curp: curp.value, // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access error: data.error, }; } // eslint-disable-next-line @typescript-eslint/no-unsafe-return return data; }); } } exports.Firestore = Firestore;