facturacionelectronicapy-ts-xmlgen
Version:
Genera el contenido del archivo XML del Documento electrónico exigido por la SET
56 lines (55 loc) • 2.21 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.SectorSegurosSchema = void 0;
const zod_1 = require("zod");
const NumberLenght_1 = __importDefault(require("../../helpers/validation/NumberLenght"));
const CommonValidators_1 = __importDefault(require("../../helpers/validation/CommonValidators"));
const SDParser_1 = __importDefault(require("../../helpers/SDParser"));
/**E9.3. Sector de Seguros (E800-E809) */
exports.SectorSegurosSchema = zod_1.z.object({
// E801
codigoAseguradora: zod_1.z
.string()
.length(20)
.optional()
.describe(SDParser_1.default.stringify('E801')),
// E9.3.1. Póliza de seguros (EA790-EA799)
// EA791
codigoPoliza: zod_1.z.string().min(1).max(20).describe(SDParser_1.default.stringify('EA791')),
// EA792
vigenciaUnidad: zod_1.z
.string()
.min(3)
.max(15)
.describe(SDParser_1.default.stringify('EA792')),
// EA793
vigencia: zod_1.z
.number()
.superRefine((value, ctx) => {
new NumberLenght_1.default(value, ctx).max(5).decimalsLength(1);
})
.describe(SDParser_1.default.stringify('EA793')),
// EA794
numeroPoliza: zod_1.z.string().min(1).max(25).describe(SDParser_1.default.stringify('EA794')),
// EA795
inicioVigencia: CommonValidators_1.default.isoDateTime()
.optional()
.describe(SDParser_1.default.stringify('EA795')),
// EA796
finVigencia: CommonValidators_1.default.isoDateTime()
.optional()
.describe(SDParser_1.default.stringify('EA796')),
// EA797
// VER: https://www.dnit.gov.py/documents/20123/420595/NT_E_KUATIA_008_MT_V150.pdf/81fba389-0f27-e757-88c3-ec7b3dbab90b?t=1687353746734
codigoInternoItem: zod_1.z
.string()
.min(1)
.max(50)
.optional()
.describe(SDParser_1.default.stringify('EA797', {
v: 'https://www.dnit.gov.py/documents/20123/420595/NT_E_KUATIA_008_MT_V150.pdf/81fba389-0f27-e757-88c3-ec7b3dbab90b?t=1687353746734',
})),
});