UNPKG

facturacionelectronicapy-ts-xmlgen

Version:

Genera el contenido del archivo XML del Documento electrónico exigido por la SET

42 lines (41 loc) • 1.76 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.UbicacionSchema = void 0; const zod_1 = require("zod"); const CommonValidators_1 = __importDefault(require("../../helpers/validation/CommonValidators")); const db_service_1 = __importDefault(require("../../services/db.service")); const SDParser_1 = __importDefault(require("../../helpers/SDParser")); exports.UbicacionSchema = zod_1.z .object({ // E316 lugar: CommonValidators_1.default.address().describe(SDParser_1.default.stringify('E316')), // E317 departamento: CommonValidators_1.default.department().describe(SDParser_1.default.stringify('E317', { e: 'Department' })), // E319 distrito: CommonValidators_1.default.district() .optional() .describe(SDParser_1.default.stringify('E319', { t: 'distritos' })), // E321 ciudad: CommonValidators_1.default.city().describe(SDParser_1.default.stringify('E321', { t: 'ciudades' })), }) .transform((data, ctx) => { CommonValidators_1.default.location(ctx, data.departamento, data.distrito, data.ciudad); return { ...data, // E318 departamentoDescripcion: db_service_1.default.departments._findById(data.departamento).description, // E320 distritoDescripcion: db_service_1.default.districts._findByIdIfExist(data.distrito, { ctx, fieldName: 'distrito', })?.description, // E322 ciudadDescripcion: db_service_1.default.districts._findById(data.ciudad, { ctx, fieldName: 'distrito', })?.description, }; });