UNPKG

facturacionelectronicapy-ts-xmlgen

Version:

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

39 lines (38 loc) • 1.43 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.InfoCuotaSchema = void 0; const zod_1 = require("zod"); const CommonValidators_1 = __importDefault(require("../../helpers/validation/CommonValidators")); const NumberLenght_1 = __importDefault(require("../../helpers/validation/NumberLenght")); const db_service_1 = __importDefault(require("../../services/db.service")); const SDParser_1 = __importDefault(require("../../helpers/SDParser")); /**E7.2.1.Campos que describen las cuotas (E650-E659) */ exports.InfoCuotaSchema = zod_1.z .object({ // E751 monto: zod_1.z .number() .superRefine((value, ctx) => { new NumberLenght_1.default(value, ctx).max(15).maxDecimals(4); }) .describe(SDParser_1.default.stringify('E751')), // E752 vencimiento: CommonValidators_1.default.isoDate() .optional() .describe(SDParser_1.default.stringify('E752')), // E753 moneda: CommonValidators_1.default.currency().describe(SDParser_1.default.stringify('E753', { e: 'Currency', })), }) .transform((data, ctx) => { return { ...data, // E754 monedaDescripcion: db_service_1.default.currencies._findById(data.moneda) .description, }; });