@manticore-labs/nest 0.1.2 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.idea/workspace.xml +4 -19
- package/build/main/index.d.ts +8 -0
- package/build/main/index.js +11 -1
- package/build/main/lib/modulos-configuracion/mlab-swagger/constantes/constantes.d.ts +2 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/constantes/constantes.js +6 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/constantes/esquemas-genericos.d.ts +43 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/constantes/esquemas-genericos.js +59 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/arreglo.d.ts +2 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/arreglo.js +9 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/booleano.d.ts +2 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/booleano.js +9 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/caracter.d.ts +2 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/caracter.js +9 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/decimal.d.ts +2 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/decimal.js +9 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/delegador/delegador-decorador.d.ts +2 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/delegador/delegador-decorador.js +19 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/entero.d.ts +2 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/entero.js +9 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/objeto.d.ts +2 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/objeto.js +9 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/interfaces/plantilla.interface.d.ts +65 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/interfaces/plantilla.interface.js +3 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger-core.module.d.ts +4 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger-core.module.js +40 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger-helper.d.ts +13 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger-helper.js +86 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger.module.d.ts +7 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger.module.js +33 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger.service.d.ts +5 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger.service.js +71 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger.store.d.ts +11 -0
- package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger.store.js +48 -0
- package/build/module/index.d.ts +8 -0
- package/build/module/index.js +11 -1
- package/build/module/lib/modulos-configuracion/mlab-swagger/constantes/constantes.d.ts +2 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/constantes/constantes.js +3 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/constantes/esquemas-genericos.d.ts +43 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/constantes/esquemas-genericos.js +56 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/arreglo.d.ts +2 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/arreglo.js +5 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/booleano.d.ts +2 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/booleano.js +5 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/caracter.d.ts +2 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/caracter.js +5 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/decimal.d.ts +2 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/decimal.js +5 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/delegador/delegador-decorador.d.ts +2 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/delegador/delegador-decorador.js +18 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/entero.d.ts +2 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/entero.js +5 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/objeto.d.ts +2 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/objeto.js +5 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/interfaces/plantilla.interface.d.ts +65 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/interfaces/plantilla.interface.js +1 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger-core.module.d.ts +4 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger-core.module.js +37 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger-helper.d.ts +13 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger-helper.js +126 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger.module.d.ts +7 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger.module.js +33 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger.service.d.ts +5 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger.service.js +86 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger.store.d.ts +11 -0
- package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger.store.js +46 -0
- package/package.json +1 -1
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var MlabSwaggerService_1;
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.MlabSwaggerService = void 0;
|
|
11
|
+
const common_1 = require("@nestjs/common");
|
|
12
|
+
const mlab_swagger_store_1 = require("./mlab-swagger.store");
|
|
13
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
14
|
+
const mlab_swagger_helper_1 = require("./mlab-swagger-helper");
|
|
15
|
+
const esquemas_genericos_1 = require("./constantes/esquemas-genericos");
|
|
16
|
+
const lodash_1 = require("lodash");
|
|
17
|
+
let MlabSwaggerService = MlabSwaggerService_1 = class MlabSwaggerService {
|
|
18
|
+
static construirAPI(app) {
|
|
19
|
+
for (const esquema of mlab_swagger_store_1.MlabSwaggerStore.obtenerEsquemas) {
|
|
20
|
+
// logica para crear documentacion
|
|
21
|
+
const documento = MlabSwaggerService_1.generarDocumentacion(esquema);
|
|
22
|
+
const optionsGenericas = new swagger_1.DocumentBuilder()
|
|
23
|
+
.setTitle(esquema.titulo)
|
|
24
|
+
.build();
|
|
25
|
+
const documentoGenerico = swagger_1.SwaggerModule.createDocument(app, optionsGenericas, {
|
|
26
|
+
include: [esquema.modulo],
|
|
27
|
+
});
|
|
28
|
+
documentoGenerico.paths = Object.assign(Object.assign({}, documentoGenerico.paths), documento.paths);
|
|
29
|
+
documentoGenerico.security = Object.assign(Object.assign({}, documentoGenerico.security), documento.security);
|
|
30
|
+
documentoGenerico.components.schemas = Object.assign(Object.assign({}, documentoGenerico.components.schemas), documento.components.schemas);
|
|
31
|
+
swagger_1.SwaggerModule.setup(`${mlab_swagger_store_1.MlabSwaggerStore.pathRaiz}${esquema.path}`, app, documentoGenerico, { explorer: true });
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
static generarDocumentacion(plantilla) {
|
|
35
|
+
const esquemaSeguridad = {
|
|
36
|
+
securitySchemes: Object.assign(Object.assign({}, esquemas_genericos_1.ESQUEMA_SEGURIDAD_GENERICO), lodash_1.pickBy(plantilla.esquemaSeguridad, lodash_1.negate(lodash_1.isUndefined))),
|
|
37
|
+
};
|
|
38
|
+
const documentoPlantillaBase = {
|
|
39
|
+
openapi: '3.0.0',
|
|
40
|
+
paths: {},
|
|
41
|
+
info: {
|
|
42
|
+
title: `${plantilla.titulo}`,
|
|
43
|
+
version: `${plantilla.version}`,
|
|
44
|
+
},
|
|
45
|
+
components: Object.assign(Object.assign({}, lodash_1.pickBy(esquemaSeguridad, _ => plantilla.protegerRutas)), { schemas: {} }),
|
|
46
|
+
};
|
|
47
|
+
const nombreEsquemaCrear = typeof plantilla.esquemas.crear === 'string' ? plantilla.esquemas.crear : plantilla.esquemas.crear.name;
|
|
48
|
+
const nombreEsquemaEditar = typeof plantilla.esquemas.editar === 'string' ? plantilla.esquemas.editar : plantilla.esquemas.editar.name;
|
|
49
|
+
// Se obtienen los meta esquemas almacenados en el store por los decoradores
|
|
50
|
+
const metaEsquemaCrear = mlab_swagger_store_1.MlabSwaggerStore.obtenerEsquema(nombreEsquemaCrear);
|
|
51
|
+
const metaEsquemaEditar = mlab_swagger_store_1.MlabSwaggerStore.obtenerEsquema(nombreEsquemaEditar);
|
|
52
|
+
const esquemaCrear = mlab_swagger_helper_1.MlabSwaggerHelper
|
|
53
|
+
.empaquetarEsquema(metaEsquemaCrear);
|
|
54
|
+
const esquemaEditar = mlab_swagger_helper_1.MlabSwaggerHelper
|
|
55
|
+
.empaquetarEsquema(metaEsquemaEditar);
|
|
56
|
+
const metodoCrearUno = mlab_swagger_helper_1.MlabSwaggerHelper.generarMetodoPostPutPatch(plantilla.metodosCrud.crearUno.descripcion, esquemaCrear, metaEsquemaCrear.nombre);
|
|
57
|
+
const metodoEditarUno = mlab_swagger_helper_1.MlabSwaggerHelper.generarMetodoPostPutPatch(plantilla.metodosCrud.actualizarUno.descripcion, esquemaEditar, metaEsquemaEditar.nombre);
|
|
58
|
+
documentoPlantillaBase.paths[`${plantilla.path}`] = mlab_swagger_helper_1.MlabSwaggerHelper
|
|
59
|
+
.generarPathSinId(metodoCrearUno, plantilla.titulo, plantilla.protegerRutas);
|
|
60
|
+
documentoPlantillaBase.paths[`${plantilla.path}/{id}`] = mlab_swagger_helper_1.MlabSwaggerHelper
|
|
61
|
+
.generarPathConId(metodoEditarUno, plantilla.titulo, plantilla.protegerRutas);
|
|
62
|
+
documentoPlantillaBase.components.schemas = Object.assign(Object.assign({}, esquemaCrear), esquemaEditar);
|
|
63
|
+
// console.log(JSON.stringify(documentoPlantillaBase));
|
|
64
|
+
return documentoPlantillaBase;
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
MlabSwaggerService = MlabSwaggerService_1 = __decorate([
|
|
68
|
+
common_1.Injectable()
|
|
69
|
+
], MlabSwaggerService);
|
|
70
|
+
exports.MlabSwaggerService = MlabSwaggerService;
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWxhYi1zd2FnZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL21vZHVsb3MtY29uZmlndXJhY2lvbi9tbGFiLXN3YWdnZXIvbWxhYi1zd2FnZ2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLDJDQUE0RDtBQUM1RCw2REFBc0Q7QUFDdEQsNkNBQThFO0FBRTlFLCtEQUF3RDtBQUN4RCx3RUFFeUM7QUFDekMsbUNBQW1EO0FBR25ELElBQWEsa0JBQWtCLDBCQUEvQixNQUFhLGtCQUFrQjtJQUUzQixNQUFNLENBQUMsWUFBWSxDQUFDLEdBQXFCO1FBQ3JDLEtBQUssTUFBTSxPQUFPLElBQUkscUNBQWdCLENBQUMsZUFBZSxFQUFFO1lBQ3BELGtDQUFrQztZQUNsQyxNQUFNLFNBQVMsR0FBRyxvQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNuRSxNQUFNLGdCQUFnQixHQUFHLElBQUkseUJBQWUsRUFBRTtpQkFDekMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7aUJBQ3hCLEtBQUssRUFBRSxDQUFDO1lBQ2IsTUFBTSxpQkFBaUIsR0FBRyx1QkFBYSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBQzFFLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7YUFDNUIsQ0FBQyxDQUFDO1lBQ0gsaUJBQWlCLENBQUMsS0FBSyxtQ0FDaEIsaUJBQWlCLENBQUMsS0FBSyxHQUN2QixTQUFTLENBQUMsS0FBSyxDQUNyQixDQUFDO1lBQ0YsaUJBQWlCLENBQUMsUUFBUSxtQ0FDbkIsaUJBQWlCLENBQUMsUUFBUSxHQUMxQixTQUFTLENBQUMsUUFBUSxDQUN4QixDQUFDO1lBQ0YsaUJBQWlCLENBQUMsVUFBVSxDQUFDLE9BQU8sbUNBQzdCLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxPQUFP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
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { MetaEsquema, PlantillaInterface } from './interfaces/plantilla.interface';
|
|
2
|
+
export declare class MlabSwaggerStore {
|
|
3
|
+
private static readonly esquemas;
|
|
4
|
+
static pathRaiz: string;
|
|
5
|
+
static metadatos: any[];
|
|
6
|
+
static propiedadesBrutas: any[];
|
|
7
|
+
static agregarMetadatos(target: any): void;
|
|
8
|
+
static agregarEsquemas(esquema: PlantillaInterface): void;
|
|
9
|
+
static get obtenerEsquemas(): PlantillaInterface[];
|
|
10
|
+
static obtenerEsquema(nombreEsquema: string): MetaEsquema;
|
|
11
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MlabSwaggerStore = void 0;
|
|
4
|
+
const constantes_1 = require("./constantes/constantes");
|
|
5
|
+
class MlabSwaggerStore {
|
|
6
|
+
static agregarMetadatos(target) {
|
|
7
|
+
const nombreClase = target.constructor.name;
|
|
8
|
+
const nombresClases = MlabSwaggerStore.metadatos.map(t => t.constructor.name);
|
|
9
|
+
const yaFueAgregado = nombresClases.some(nombre => nombre === nombreClase);
|
|
10
|
+
if (!yaFueAgregado) {
|
|
11
|
+
MlabSwaggerStore.metadatos.push(target);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
static agregarEsquemas(esquema) {
|
|
15
|
+
this.esquemas.push(esquema);
|
|
16
|
+
}
|
|
17
|
+
static get obtenerEsquemas() {
|
|
18
|
+
return this.esquemas;
|
|
19
|
+
}
|
|
20
|
+
static obtenerEsquema(nombreEsquema) {
|
|
21
|
+
const propiedadesBrutas = MlabSwaggerStore.metadatos.map((target) => {
|
|
22
|
+
return Reflect.getMetadata(constantes_1.API_BODY_METADATA, target);
|
|
23
|
+
});
|
|
24
|
+
const preEsquemas = propiedadesBrutas.filter((preEsquema) => {
|
|
25
|
+
const llave = Object.keys(preEsquema)[0];
|
|
26
|
+
const esquema = preEsquema[llave];
|
|
27
|
+
return esquema.propietario === nombreEsquema;
|
|
28
|
+
});
|
|
29
|
+
const esquemaEntidad = preEsquemas[0];
|
|
30
|
+
const campos = Object.keys(esquemaEntidad);
|
|
31
|
+
const requeridos = campos.filter((campo) => {
|
|
32
|
+
return esquemaEntidad[campo].requerido;
|
|
33
|
+
});
|
|
34
|
+
return {
|
|
35
|
+
nombre: nombreEsquema,
|
|
36
|
+
definicion: Object.assign({}, preEsquemas[0]),
|
|
37
|
+
camposRequeridos: [
|
|
38
|
+
...requeridos,
|
|
39
|
+
],
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
exports.MlabSwaggerStore = MlabSwaggerStore;
|
|
44
|
+
MlabSwaggerStore.esquemas = [];
|
|
45
|
+
MlabSwaggerStore.pathRaiz = 'api';
|
|
46
|
+
MlabSwaggerStore.metadatos = [];
|
|
47
|
+
MlabSwaggerStore.propiedadesBrutas = [];
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWxhYi1zd2FnZ2VyLnN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bG9zLWNvbmZpZ3VyYWNpb24vbWxhYi1zd2FnZ2VyL21sYWItc3dhZ2dlci5zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx3REFBMEQ7QUFFMUQsTUFBYSxnQkFBZ0I7SUFPekIsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE1BQU07UUFDMUIsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDNUMsTUFBTSxhQUFhLEdBQUcsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUUsTUFBTSxhQUFhLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sS0FBSyxXQUFXLENBQUMsQ0FBQztRQUMzRSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ2hCLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDM0M7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxPQUEyQjtRQUM5QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsTUFBTSxLQUFLLGVBQWU7UUFDdEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLGFBQXFCO1FBQ3ZDLE1BQU0saUJBQWlCLEdBQUcsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FDcEQsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNQLE9BQU8sT0FBTyxDQUFDLFdBQVcsQ0FBQyw4QkFBaUIsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUMxRCxDQUFDLENBQ0osQ0FBQztRQUNGLE1BQU0sV0FBVyxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FDeEMsQ0FBQyxVQUFtQyxFQUFFLEVBQUU7WUFDcEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6QyxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDbEMsT0FBTyxPQUFPLENBQUMsV0FBVyxLQUFLLGFBQWEsQ0FBQztRQUNqRCxDQUFDLENBQ0osQ0FBQztRQUNGLE1BQU0sY0FBYyxHQUFZLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMvQyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzNDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQzVCLENBQUMsS0FBYSxFQUFFLEVBQUU7WUFDZCxPQUFPLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDM0MsQ0FBQyxDQUNKLENBQUM7UUFDRixPQUFPO1lBQ0gsTUFBTSxFQUFFLGFBQWE7WUFDckIsVUFBVSxvQkFDSCxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ3BCO1lBQ0QsZ0JBQWdCLEVBQUU7Z0JBQ2QsR0FBRyxVQUFVO2FBQ2hCO1NBQ0osQ0FBQztJQUNOLENBQUM7O0FBckRMLDRDQXVEQztBQXREMkIseUJBQVEsR0FBeUIsRUFBRSxDQUFDO0FBQ3JELHlCQUFRLEdBQVcsS0FBSyxDQUFDO0FBRXpCLDBCQUFTLEdBQVUsRUFBRSxDQUFDO0FBQ3RCLGtDQUFpQixHQUFVLEVBQUUsQ0FBQyJ9
|
package/build/module/index.d.ts
CHANGED
|
@@ -71,3 +71,11 @@ export * from './lib/modulos-configuracion/base-datos/interfaces/meta-dato-prueb
|
|
|
71
71
|
export * from './lib/decoradores/dto/validadores-or-and/esTipo';
|
|
72
72
|
export * from './lib/decoradores/dto/validadores-or-and/interfaces';
|
|
73
73
|
export * from './lib/principal.http.service';
|
|
74
|
+
export * from './lib/modulos-configuracion/mlab-swagger/mlab-swagger.module';
|
|
75
|
+
export * from './lib/modulos-configuracion/mlab-swagger/interfaces/plantilla.interface';
|
|
76
|
+
export * from './lib/modulos-configuracion/mlab-swagger/decoradores/atributos/booleano';
|
|
77
|
+
export * from './lib/modulos-configuracion/mlab-swagger/decoradores/atributos/decimal';
|
|
78
|
+
export * from './lib/modulos-configuracion/mlab-swagger/decoradores/atributos/entero';
|
|
79
|
+
export * from './lib/modulos-configuracion/mlab-swagger/decoradores/atributos/arreglo';
|
|
80
|
+
export * from './lib/modulos-configuracion/mlab-swagger/decoradores/atributos/caracter';
|
|
81
|
+
export * from './lib/modulos-configuracion/mlab-swagger/decoradores/atributos/objeto';
|
package/build/module/index.js
CHANGED
|
@@ -58,6 +58,7 @@ export * from './lib/google-cloud/google-cloud-vision-api/interfaces/texto-image
|
|
|
58
58
|
export * from './lib/google-cloud/google-cloud-vision-api/constants';
|
|
59
59
|
export * from './lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.module';
|
|
60
60
|
export * from './lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.service';
|
|
61
|
+
// Modulo de bases de datos
|
|
61
62
|
export * from './lib/modulos-configuracion/base-datos/base-datos.module';
|
|
62
63
|
export * from './lib/modulos-configuracion/base-datos/base-datos.core.module';
|
|
63
64
|
export * from './lib/modulos-configuracion/base-datos/base-datos.service';
|
|
@@ -71,4 +72,13 @@ export * from './lib/modulos-configuracion/base-datos/interfaces/meta-dato-prueb
|
|
|
71
72
|
export * from './lib/decoradores/dto/validadores-or-and/esTipo';
|
|
72
73
|
export * from './lib/decoradores/dto/validadores-or-and/interfaces';
|
|
73
74
|
export * from './lib/principal.http.service';
|
|
74
|
-
|
|
75
|
+
// Modulo Mlab-swagger
|
|
76
|
+
export * from './lib/modulos-configuracion/mlab-swagger/mlab-swagger.module';
|
|
77
|
+
export * from './lib/modulos-configuracion/mlab-swagger/interfaces/plantilla.interface';
|
|
78
|
+
export * from './lib/modulos-configuracion/mlab-swagger/decoradores/atributos/booleano';
|
|
79
|
+
export * from './lib/modulos-configuracion/mlab-swagger/decoradores/atributos/decimal';
|
|
80
|
+
export * from './lib/modulos-configuracion/mlab-swagger/decoradores/atributos/entero';
|
|
81
|
+
export * from './lib/modulos-configuracion/mlab-swagger/decoradores/atributos/arreglo';
|
|
82
|
+
export * from './lib/modulos-configuracion/mlab-swagger/decoradores/atributos/caracter';
|
|
83
|
+
export * from './lib/modulos-configuracion/mlab-swagger/decoradores/atributos/objeto';
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDJCQUEyQixDQUFDO0FBRTFDLGNBQWMseUVBQXlFLENBQUM7QUFDeEYsY0FBYywyREFBMkQsQ0FBQztBQUMxRSxjQUFjLGlEQUFpRCxDQUFDO0FBRWhFLGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHdDQUF3QyxDQUFDO0FBRXZELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyxvRUFBb0UsQ0FBQztBQUVuRixjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsd0NBQXdDLENBQUM7QUFFdkQsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxvREFBb0QsQ0FBQztBQUVuRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsMEVBQTBFLENBQUM7QUFDekYsY0FBYywrREFBK0QsQ0FBQztBQUM5RSxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyxxREFBcUQsQ0FBQztBQUVwRSxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsK0JBQStCLENBQUM7QUFFOUMsY0FBYyxzRkFBc0YsQ0FBQztBQUNyRyxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxpREFBaUQsQ0FBQztBQUVoRSxjQUFjLDREQUE0RCxDQUFDO0FBRTNFLGNBQWMsb0VBQW9FLENBQUM7QUFDbkYsY0FBYywyRUFBMkUsQ0FBQztBQUUxRixjQUFjLHlEQUF5RCxDQUFDO0FBRXhFLGNBQWMsaUNBQWlDLENBQUM7QUFFaEQsY0FBYyx5REFBeUQsQ0FBQztBQUV4RSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsc0NBQXNDLENBQUM7QUFHckQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLG9FQUFvRSxDQUFDO0FBR25GLGNBQWMsOEVBQThFLENBQUM7QUFDN0YsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLDJFQUEyRSxDQUFDO0FBQzFGLGNBQWMsNEVBQTRFLENBQUM7QUFFM0YsMkJBQTJCO0FBQzNCLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYywrREFBK0QsQ0FBQztBQUM5RSxjQUFjLDJEQUEyRCxDQUFDO0FBQzFFLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYyxpRkFBaUYsQ0FBQztBQUNoRyxjQUFjLDhFQUE4RSxDQUFDO0FBQzdGLGNBQWMsdUVBQXVFLENBQUM7QUFDdEYsY0FBYyxtRkFBbUYsQ0FBQztBQUNsRyxjQUFjLGtGQUFrRixDQUFDO0FBQ2pHLGNBQWMsOEVBQThFLENBQUM7QUFFN0YsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLHFEQUFxRCxDQUFDO0FBRXBFLGNBQWMsOEJBQThCLENBQUM7QUFFN0Msc0JBQXNCO0FBQ3RCLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyx5RUFBeUUsQ0FBQztBQUN4RixjQUFjLHlFQUF5RSxDQUFDO0FBQ3hGLGNBQWMsd0VBQXdFLENBQUM7QUFDdkYsY0FBYyx1RUFBdUUsQ0FBQztBQUN0RixjQUFjLHdFQUF3RSxDQUFDO0FBQ3ZGLGNBQWMseUVBQXlFLENBQUM7QUFDeEYsY0FBYyx1RUFBdUUsQ0FBQyJ9
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export const RAIZ = 'RAIZ';
|
|
2
|
+
export const API_BODY_METADATA = 'API_BODY_METADATA';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbW9kdWxvcy1jb25maWd1cmFjaW9uL21sYWItc3dhZ2dlci9jb25zdGFudGVzL2NvbnN0YW50ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQztBQUMzQixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxtQkFBbUIsQ0FBQyJ9
|
package/build/module/lib/modulos-configuracion/mlab-swagger/constantes/esquemas-genericos.d.ts
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { ReferenceObject, SecuritySchemeObject } from '@nestjs/swagger/dist/interfaces/open-api-spec.interface';
|
|
2
|
+
export declare const ESQUEMA_SEGURIDAD_GENERICO: Record<string, SecuritySchemeObject | ReferenceObject>;
|
|
3
|
+
export declare const SEGURIDAD_PATH_GENERICA: {
|
|
4
|
+
security: {
|
|
5
|
+
Bearer: any[];
|
|
6
|
+
}[];
|
|
7
|
+
};
|
|
8
|
+
export declare const ESQUEMA_QUERY: {
|
|
9
|
+
parameters: {
|
|
10
|
+
name: string;
|
|
11
|
+
in: string;
|
|
12
|
+
}[];
|
|
13
|
+
};
|
|
14
|
+
export declare const RESPUESTAS_HTTP: {
|
|
15
|
+
200: {
|
|
16
|
+
description: string;
|
|
17
|
+
content: {
|
|
18
|
+
respuesta: {
|
|
19
|
+
schema: {
|
|
20
|
+
type: string;
|
|
21
|
+
items: {
|
|
22
|
+
type: string;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
400: {
|
|
29
|
+
description: string;
|
|
30
|
+
};
|
|
31
|
+
300: {
|
|
32
|
+
description: string;
|
|
33
|
+
};
|
|
34
|
+
500: {
|
|
35
|
+
description: string;
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
export declare const ESQUEMA_PATH: {
|
|
39
|
+
parameters: {
|
|
40
|
+
name: string;
|
|
41
|
+
in: string;
|
|
42
|
+
}[];
|
|
43
|
+
};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
export const ESQUEMA_SEGURIDAD_GENERICO = {
|
|
2
|
+
Bearer: {
|
|
3
|
+
in: 'header',
|
|
4
|
+
type: 'apiKey',
|
|
5
|
+
description: 'Token de acceso',
|
|
6
|
+
name: 'Authorization',
|
|
7
|
+
},
|
|
8
|
+
};
|
|
9
|
+
export const SEGURIDAD_PATH_GENERICA = {
|
|
10
|
+
security: [
|
|
11
|
+
{
|
|
12
|
+
Bearer: [],
|
|
13
|
+
},
|
|
14
|
+
],
|
|
15
|
+
};
|
|
16
|
+
export const ESQUEMA_QUERY = {
|
|
17
|
+
parameters: [
|
|
18
|
+
{
|
|
19
|
+
name: 'criterioBusqueda',
|
|
20
|
+
in: 'query',
|
|
21
|
+
},
|
|
22
|
+
],
|
|
23
|
+
};
|
|
24
|
+
export const RESPUESTAS_HTTP = {
|
|
25
|
+
200: {
|
|
26
|
+
description: 'Todo esta bien',
|
|
27
|
+
content: {
|
|
28
|
+
respuesta: {
|
|
29
|
+
schema: {
|
|
30
|
+
type: 'array',
|
|
31
|
+
items: {
|
|
32
|
+
type: 'object',
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
400: {
|
|
39
|
+
description: 'Parametros invalidos',
|
|
40
|
+
},
|
|
41
|
+
300: {
|
|
42
|
+
description: 'No tiene permisos',
|
|
43
|
+
},
|
|
44
|
+
500: {
|
|
45
|
+
description: 'Error del servidor',
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
export const ESQUEMA_PATH = {
|
|
49
|
+
parameters: [
|
|
50
|
+
{
|
|
51
|
+
name: 'id',
|
|
52
|
+
in: 'path',
|
|
53
|
+
},
|
|
54
|
+
],
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNxdWVtYXMtZ2VuZXJpY29zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bG9zLWNvbmZpZ3VyYWNpb24vbWxhYi1zd2FnZ2VyL2NvbnN0YW50ZXMvZXNxdWVtYXMtZ2VuZXJpY29zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUEyRDtJQUM5RixNQUFNLEVBQUU7UUFDSixFQUFFLEVBQUUsUUFBUTtRQUNaLElBQUksRUFBRSxRQUFRO1FBQ2QsV0FBVyxFQUFFLGlCQUFpQjtRQUM5QixJQUFJLEVBQUUsZUFBZTtLQUN4QjtDQUNKLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRztJQUNuQyxRQUFRLEVBQUU7UUFDTjtZQUNJLE1BQU0sRUFBRSxFQUFFO1NBQ2I7S0FDSjtDQUNKLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUc7SUFDekIsVUFBVSxFQUFFO1FBQ1I7WUFDSSxJQUFJLEVBQUUsa0JBQWtCO1lBQ3hCLEVBQUUsRUFBRSxPQUFPO1NBQ2Q7S0FDSjtDQUNKLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUc7SUFDM0IsR0FBRyxFQUFFO1FBQ0QsV0FBVyxFQUFFLGdCQUFnQjtRQUM3QixPQUFPLEVBQUU7WUFDTCxTQUFTLEVBQUU7Z0JBQ1AsTUFBTSxFQUFFO29CQUNKLElBQUksRUFBRSxPQUFPO29CQUNiLEtBQUssRUFBRTt3QkFDSCxJQUFJLEVBQUUsUUFBUTtxQkFDakI7aUJBQ0o7YUFDSjtTQUNKO0tBQ0o7SUFDRCxHQUFHLEVBQUU7UUFDRCxXQUFXLEVBQUUsc0JBQXNCO0tBQ3RDO0lBQ0QsR0FBRyxFQUFFO1FBQ0QsV0FBVyxFQUFFLG1CQUFtQjtLQUNuQztJQUNELEdBQUcsRUFBRTtRQUNELFdBQVcsRUFBRSxvQkFBb0I7S0FDcEM7Q0FDSixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHO0lBQ3hCLFVBQVUsRUFBRTtRQUNSO1lBQ0ksSUFBSSxFQUFFLElBQUk7WUFDVixFQUFFLEVBQUUsTUFBTTtTQUNiO0tBQ0o7Q0FDSixDQUFDIn0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { delegarDecorador } from './delegador/delegador-decorador';
|
|
2
|
+
export function PropiedadArreglo(config) {
|
|
3
|
+
return delegarDecorador('array', config);
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyZWdsby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbW9kdWxvcy1jb25maWd1cmFjaW9uL21sYWItc3dhZ2dlci9kZWNvcmFkb3Jlcy9hdHJpYnV0b3MvYXJyZWdsby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRSxNQUFNLFVBQVUsZ0JBQWdCLENBQzVCLE1BQW9CO0lBRXBCLE9BQU8sZ0JBQWdCLENBQ25CLE9BQU8sRUFDUCxNQUFNLENBQ1QsQ0FBQztBQUNOLENBQUMifQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { delegarDecorador } from './delegador/delegador-decorador';
|
|
2
|
+
export function PropiedadBooleana(config) {
|
|
3
|
+
return delegarDecorador('boolean', config);
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbm8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL21vZHVsb3MtY29uZmlndXJhY2lvbi9tbGFiLXN3YWdnZXIvZGVjb3JhZG9yZXMvYXRyaWJ1dG9zL2Jvb2xlYW5vLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBRWpFLE1BQU0sVUFBVSxpQkFBaUIsQ0FDN0IsTUFBZTtJQUVmLE9BQU8sZ0JBQWdCLENBQ25CLFNBQVMsRUFDVCxNQUFNLENBQ1QsQ0FBQztBQUNOLENBQUMifQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { delegarDecorador } from './delegador/delegador-decorador';
|
|
2
|
+
export function PropiedadCaracteres(config) {
|
|
3
|
+
return delegarDecorador('string', config);
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyYWN0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL21vZHVsb3MtY29uZmlndXJhY2lvbi9tbGFiLXN3YWdnZXIvZGVjb3JhZG9yZXMvYXRyaWJ1dG9zL2NhcmFjdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBRWpFLE1BQU0sVUFBVSxtQkFBbUIsQ0FDL0IsTUFBd0I7SUFFeEIsT0FBTyxnQkFBZ0IsQ0FDbkIsUUFBUSxFQUNSLE1BQU0sQ0FDVCxDQUFDO0FBQ04sQ0FBQyJ9
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { delegarDecorador } from './delegador/delegador-decorador';
|
|
2
|
+
export function PropiedadDecimal(config) {
|
|
3
|
+
return delegarDecorador('number', config);
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjaW1hbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbW9kdWxvcy1jb25maWd1cmFjaW9uL21sYWItc3dhZ2dlci9kZWNvcmFkb3Jlcy9hdHJpYnV0b3MvZGVjaW1hbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRSxNQUFNLFVBQVUsZ0JBQWdCLENBQzVCLE1BQXVCO0lBRXZCLE9BQU8sZ0JBQWdCLENBQ25CLFFBQVEsRUFDUixNQUFNLENBQ1QsQ0FBQztBQUNOLENBQUMifQ==
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { MlabSwaggerStore } from '../../../mlab-swagger.store';
|
|
2
|
+
import { API_BODY_METADATA } from '../../../constantes/constantes';
|
|
3
|
+
export function delegarDecorador(nombreTipo, config) {
|
|
4
|
+
return (target, nombrePropiedad) => {
|
|
5
|
+
const nombreEsquema = target.constructor.name;
|
|
6
|
+
config.tipo = nombreTipo;
|
|
7
|
+
config.propietario = nombreEsquema;
|
|
8
|
+
const parametroParaAgregar = {};
|
|
9
|
+
parametroParaAgregar[nombrePropiedad] = config;
|
|
10
|
+
const parametrosAnteriores = Reflect.getMetadata(API_BODY_METADATA, target);
|
|
11
|
+
Reflect.defineMetadata(API_BODY_METADATA, {
|
|
12
|
+
...parametrosAnteriores,
|
|
13
|
+
...parametroParaAgregar,
|
|
14
|
+
}, target);
|
|
15
|
+
MlabSwaggerStore.agregarMetadatos(target);
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZWdhZG9yLWRlY29yYWRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbW9kdWxvcy1jb25maWd1cmFjaW9uL21sYWItc3dhZ2dlci9kZWNvcmFkb3Jlcy9hdHJpYnV0b3MvZGVsZWdhZG9yL2RlbGVnYWRvci1kZWNvcmFkb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDN0QsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFFakUsTUFBTSxVQUFVLGdCQUFnQixDQUM1QixVQUFnQixFQUNoQixNQUFTO0lBRVQsT0FBTyxDQUFDLE1BQVcsRUFBRSxlQUFnQyxFQUFFLEVBQUU7UUFDckQsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDOUMsTUFBTSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUM7UUFDekIsTUFBTSxDQUFDLFdBQVcsR0FBRyxhQUFhLENBQUM7UUFDbkMsTUFBTSxvQkFBb0IsR0FBRyxFQUFFLENBQUM7UUFDaEMsb0JBQW9CLENBQUMsZUFBZSxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQy9DLE1BQU0sb0JBQW9CLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM1RSxPQUFPLENBQUMsY0FBYyxDQUNsQixpQkFBaUIsRUFDakI7WUFDSSxHQUFHLG9CQUFvQjtZQUN2QixHQUFHLG9CQUFvQjtTQUMxQixFQUNELE1BQU0sQ0FDVCxDQUFDO1FBQ0YsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUMsQ0FBQyxDQUFDO0FBQ04sQ0FBQyJ9
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { delegarDecorador } from './delegador/delegador-decorador';
|
|
2
|
+
export function PropiedadEntero(config) {
|
|
3
|
+
return delegarDecorador('integer', config);
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50ZXJvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bG9zLWNvbmZpZ3VyYWNpb24vbWxhYi1zd2FnZ2VyL2RlY29yYWRvcmVzL2F0cmlidXRvcy9lbnRlcm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFFakUsTUFBTSxVQUFVLGVBQWUsQ0FDM0IsTUFBdUI7SUFFdkIsT0FBTyxnQkFBZ0IsQ0FDbkIsU0FBUyxFQUNULE1BQU0sQ0FDVCxDQUFDO0FBQ04sQ0FBQyJ9
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { delegarDecorador } from './delegador/delegador-decorador';
|
|
2
|
+
export function PropiedadObjeto(config) {
|
|
3
|
+
return delegarDecorador('object', config);
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZXRvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bG9zLWNvbmZpZ3VyYWNpb24vbWxhYi1zd2FnZ2VyL2RlY29yYWRvcmVzL2F0cmlidXRvcy9vYmpldG8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFFakUsTUFBTSxVQUFVLGVBQWUsQ0FDM0IsTUFBcUI7SUFFckIsT0FBTyxnQkFBZ0IsQ0FDbkIsUUFBUSxFQUNSLE1BQU0sQ0FDVCxDQUFDO0FBQ04sQ0FBQyJ9
|
package/build/module/lib/modulos-configuracion/mlab-swagger/interfaces/plantilla.interface.d.ts
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { ReferenceObject, ResponsesObject, SecuritySchemeObject } from '@nestjs/swagger/dist/interfaces/open-api-spec.interface';
|
|
2
|
+
import { PrincipalDto } from '../../../principal.dto';
|
|
3
|
+
export declare type Tipo = ('string' | 'number' | 'object' | 'array' | 'integer' | 'boolean') & string;
|
|
4
|
+
export interface Esquema {
|
|
5
|
+
tipo?: Tipo | Tipo[];
|
|
6
|
+
ejemplo?: any;
|
|
7
|
+
propietario?: string;
|
|
8
|
+
requerido?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface EsquemaNumerico extends Esquema {
|
|
11
|
+
multipleOf?: number;
|
|
12
|
+
minimum?: number;
|
|
13
|
+
maximum?: number;
|
|
14
|
+
exclusiveMinimum?: boolean;
|
|
15
|
+
exclusiveMaximum?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export interface EsquemaCarateres extends Esquema {
|
|
18
|
+
minLength?: number;
|
|
19
|
+
maxLength?: number;
|
|
20
|
+
pattern?: string;
|
|
21
|
+
}
|
|
22
|
+
export interface EsquemaArray extends Esquema {
|
|
23
|
+
minItems?: number;
|
|
24
|
+
maxItems?: number;
|
|
25
|
+
}
|
|
26
|
+
export interface EsquemaObjeto extends Esquema {
|
|
27
|
+
anidado: string | typeof PrincipalDto | Function;
|
|
28
|
+
}
|
|
29
|
+
export interface MetodosCrud {
|
|
30
|
+
crearUno: EsquemaMetodoCrud;
|
|
31
|
+
actualizarUno?: EsquemaMetodoCrud;
|
|
32
|
+
buscarUno?: EsquemaMetodoCrud;
|
|
33
|
+
borrarUno?: EsquemaMetodoCrud;
|
|
34
|
+
buscarTodos?: EsquemaMetodoCrud;
|
|
35
|
+
}
|
|
36
|
+
export interface RespuestaInterface {
|
|
37
|
+
ok?: ResponsesObject;
|
|
38
|
+
noPermisos?: any;
|
|
39
|
+
parametrosInvalidos?: any;
|
|
40
|
+
errorServidor?: any;
|
|
41
|
+
}
|
|
42
|
+
export interface EsquemaMetodoCrud {
|
|
43
|
+
descripcion?: string;
|
|
44
|
+
respuestas?: ResponsesObject;
|
|
45
|
+
cabeceras?: any[];
|
|
46
|
+
}
|
|
47
|
+
export interface MetaEsquema {
|
|
48
|
+
nombre: string;
|
|
49
|
+
definicion: Record<string, Esquema>;
|
|
50
|
+
camposRequeridos?: string[];
|
|
51
|
+
}
|
|
52
|
+
export interface PlantillaInterface {
|
|
53
|
+
path: string;
|
|
54
|
+
titulo: string;
|
|
55
|
+
version: string;
|
|
56
|
+
metodosCrud: MetodosCrud;
|
|
57
|
+
esquemas: {
|
|
58
|
+
crear: string | typeof PrincipalDto;
|
|
59
|
+
editar: string | typeof PrincipalDto;
|
|
60
|
+
};
|
|
61
|
+
esquemaSeguridad?: Record<string, SecuritySchemeObject | ReferenceObject>;
|
|
62
|
+
protegerRutas?: boolean;
|
|
63
|
+
modulo: any;
|
|
64
|
+
}
|
|
65
|
+
export declare type PrePlantilla = Omit<PlantillaInterface, 'modulo'>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhbnRpbGxhLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbW9kdWxvcy1jb25maWd1cmFjaW9uL21sYWItc3dhZ2dlci9pbnRlcmZhY2VzL3BsYW50aWxsYS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var MlabSwaggerCoreModule_1;
|
|
8
|
+
import { Global, Module } from '@nestjs/common';
|
|
9
|
+
import { MlabSwaggerService } from './mlab-swagger.service';
|
|
10
|
+
import { MlabSwaggerStore } from './mlab-swagger.store';
|
|
11
|
+
let MlabSwaggerCoreModule = MlabSwaggerCoreModule_1 = class MlabSwaggerCoreModule {
|
|
12
|
+
static forRoot(raiz = 'api') {
|
|
13
|
+
MlabSwaggerStore.pathRaiz = raiz;
|
|
14
|
+
return {
|
|
15
|
+
module: MlabSwaggerCoreModule_1,
|
|
16
|
+
providers: [
|
|
17
|
+
MlabSwaggerService,
|
|
18
|
+
],
|
|
19
|
+
exports: [
|
|
20
|
+
MlabSwaggerService,
|
|
21
|
+
],
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
MlabSwaggerCoreModule = MlabSwaggerCoreModule_1 = __decorate([
|
|
26
|
+
Global(),
|
|
27
|
+
Module({
|
|
28
|
+
providers: [
|
|
29
|
+
MlabSwaggerService,
|
|
30
|
+
],
|
|
31
|
+
exports: [
|
|
32
|
+
MlabSwaggerService,
|
|
33
|
+
],
|
|
34
|
+
})
|
|
35
|
+
], MlabSwaggerCoreModule);
|
|
36
|
+
export { MlabSwaggerCoreModule };
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWxhYi1zd2FnZ2VyLWNvcmUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bG9zLWNvbmZpZ3VyYWNpb24vbWxhYi1zd2FnZ2VyL21sYWItc3dhZ2dlci1jb3JlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsT0FBTyxFQUFnQixNQUFNLEVBQUUsTUFBTSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0QsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFhdEQsSUFBYSxxQkFBcUIsNkJBQWxDLE1BQWEscUJBQXFCO0lBQzlCLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBZSxLQUFLO1FBQy9CLGdCQUFnQixDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDakMsT0FBTztZQUNILE1BQU0sRUFBRSx1QkFBcUI7WUFDN0IsU0FBUyxFQUFFO2dCQUNQLGtCQUFrQjthQUNyQjtZQUNELE9BQU8sRUFBRTtnQkFDTCxrQkFBa0I7YUFDckI7U0FDSixDQUFDO0lBQ04sQ0FBQztDQUNKLENBQUE7QUFiWSxxQkFBcUI7SUFYakMsTUFBTSxFQUFFO0lBQ1IsTUFBTSxDQUNIO1FBQ0ksU0FBUyxFQUFFO1lBQ1Asa0JBQWtCO1NBQ3JCO1FBQ0QsT0FBTyxFQUFFO1lBQ0wsa0JBQWtCO1NBQ3JCO0tBQ0osQ0FDSjtHQUNZLHFCQUFxQixDQWFqQztTQWJZLHFCQUFxQiJ9
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { MetaEsquema } from './interfaces/plantilla.interface';
|
|
2
|
+
import { OperationObject, PathItemObject, ReferenceObject, SchemaObject } from '@nestjs/swagger/dist/interfaces/open-api-spec.interface';
|
|
3
|
+
export declare class MlabSwaggerHelper {
|
|
4
|
+
static empaquetarEsquema(metaEsquema: MetaEsquema): Record<string, SchemaObject | ReferenceObject>;
|
|
5
|
+
static generarMetodoPostPutPatch(descripcion: string, esquemaEditar: Record<string, SchemaObject | ReferenceObject>, nombreEsquema: string): OperationObject;
|
|
6
|
+
static generarPathConId(metodoEditarUno: OperationObject, titulo: string, seguridad?: boolean): Record<string, PathItemObject>;
|
|
7
|
+
static generarPathSinId(metodoCrearUno: OperationObject, titulo: string, seguridad?: boolean): Record<string, PathItemObject>;
|
|
8
|
+
static generarTags(titulo: string): {
|
|
9
|
+
tags: {
|
|
10
|
+
description: string;
|
|
11
|
+
}[];
|
|
12
|
+
};
|
|
13
|
+
}
|