@manticore-labs/nest 0.1.0 → 0.1.2

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.
Files changed (137) hide show
  1. package/.idea/workspace.xml +44 -23
  2. package/README.md +1 -0
  3. package/build/main/index.d.ts +19 -0
  4. package/build/main/index.js +20 -1
  5. package/build/main/lib/auth0/auth0.service.d.ts +7 -3
  6. package/build/main/lib/auth0/auth0.service.js +24 -3
  7. package/build/main/lib/decoradores/dto/validadores-or-and/esTipo.d.ts +3 -0
  8. package/build/main/lib/decoradores/dto/validadores-or-and/esTipo.js +39 -0
  9. package/build/main/lib/decoradores/dto/validadores-or-and/interfaces.d.ts +12 -0
  10. package/build/main/lib/decoradores/dto/validadores-or-and/interfaces.js +3 -0
  11. package/build/main/lib/decoradores/mlab-swagger/constantes.js +4 -2
  12. package/build/main/lib/decoradores/mlab-swagger/interfaces.d.ts +15 -2
  13. package/build/main/lib/funciones-util/typeorm/valor-esta-dentro-del-arreglo.js +7 -2
  14. package/build/main/lib/google-cloud/google-cloud-vision-api/constants.d.ts +1 -0
  15. package/build/main/lib/google-cloud/google-cloud-vision-api/constants.js +5 -0
  16. package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api-principal.module.d.ts +5 -0
  17. package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api-principal.module.js +55 -0
  18. package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.helper.d.ts +3 -0
  19. package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.helper.js +9 -0
  20. package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.module.d.ts +2 -0
  21. package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.module.js +29 -0
  22. package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.service.d.ts +26 -0
  23. package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.service.js +91 -0
  24. package/build/main/lib/google-cloud/google-cloud-vision-api/interfaces/texto-imagen.interface.d.ts +6 -0
  25. package/build/main/lib/google-cloud/google-cloud-vision-api/interfaces/texto-imagen.interface.js +3 -0
  26. package/build/main/lib/modulos-configuracion/base-datos/base-datos.core.module.d.ts +6 -0
  27. package/build/main/lib/modulos-configuracion/base-datos/base-datos.core.module.js +71 -0
  28. package/build/main/lib/modulos-configuracion/base-datos/base-datos.helper.d.ts +10 -0
  29. package/build/main/lib/modulos-configuracion/base-datos/base-datos.helper.js +154 -0
  30. package/build/main/lib/modulos-configuracion/base-datos/base-datos.module.d.ts +7 -0
  31. package/build/main/lib/modulos-configuracion/base-datos/base-datos.module.js +30 -0
  32. package/build/main/lib/modulos-configuracion/base-datos/base-datos.service.d.ts +13 -0
  33. package/build/main/lib/modulos-configuracion/base-datos/base-datos.service.js +114 -0
  34. package/build/main/lib/modulos-configuracion/base-datos/constantes.d.ts +2 -0
  35. package/build/main/lib/modulos-configuracion/base-datos/constantes.js +6 -0
  36. package/build/main/lib/modulos-configuracion/base-datos/excepciones/creacion.exception.d.ts +9 -0
  37. package/build/main/lib/modulos-configuracion/base-datos/excepciones/creacion.exception.js +22 -0
  38. package/build/main/lib/modulos-configuracion/base-datos/excepciones/vacio.exception.d.ts +5 -0
  39. package/build/main/lib/modulos-configuracion/base-datos/excepciones/vacio.exception.js +13 -0
  40. package/build/main/lib/modulos-configuracion/base-datos/excepciones/validacion.exception.d.ts +6 -0
  41. package/build/main/lib/modulos-configuracion/base-datos/excepciones/validacion.exception.js +11 -0
  42. package/build/main/lib/modulos-configuracion/base-datos/funciones/guardar-tree-lugar.d.ts +3 -0
  43. package/build/main/lib/modulos-configuracion/base-datos/funciones/guardar-tree-lugar.js +34 -0
  44. package/build/main/lib/modulos-configuracion/base-datos/interfaces/conexion-base-datos.interface.d.ts +12 -0
  45. package/build/main/lib/modulos-configuracion/base-datos/interfaces/conexion-base-datos.interface.js +3 -0
  46. package/build/main/lib/modulos-configuracion/base-datos/interfaces/configuracion-bd.interface.d.ts +11 -0
  47. package/build/main/lib/modulos-configuracion/base-datos/interfaces/configuracion-bd.interface.js +3 -0
  48. package/build/main/lib/modulos-configuracion/base-datos/interfaces/entidades.interface.d.ts +8 -0
  49. package/build/main/lib/modulos-configuracion/base-datos/interfaces/entidades.interface.js +3 -0
  50. package/build/main/lib/modulos-configuracion/base-datos/interfaces/entorno-configuracion.interface.d.ts +28 -0
  51. package/build/main/lib/modulos-configuracion/base-datos/interfaces/entorno-configuracion.interface.js +3 -0
  52. package/build/main/lib/modulos-configuracion/base-datos/interfaces/meta-dato-prueba.interface.d.ts +22 -0
  53. package/build/main/lib/modulos-configuracion/base-datos/interfaces/meta-dato-prueba.interface.js +3 -0
  54. package/build/main/lib/modulos-configuracion/base-datos/interfaces/respuesta-validacion.interface.d.ts +24 -0
  55. package/build/main/lib/modulos-configuracion/base-datos/interfaces/respuesta-validacion.interface.js +3 -0
  56. package/build/main/lib/modulos-configuracion/base-datos/store/datos-prueba.storage.d.ts +6 -0
  57. package/build/main/lib/modulos-configuracion/base-datos/store/datos-prueba.storage.js +14 -0
  58. package/build/main/lib/mongo-configuracion-indice.interface.d.ts +5 -0
  59. package/build/main/lib/mongo-configuracion-indice.interface.js +3 -0
  60. package/build/main/lib/principal-mongo.controller.d.ts +11 -0
  61. package/build/main/lib/principal-mongo.controller.js +82 -0
  62. package/build/main/lib/principal-mongo.service.d.ts +10 -0
  63. package/build/main/lib/principal-mongo.service.js +45 -0
  64. package/build/main/lib/principal.controller.d.ts +13 -12
  65. package/build/main/lib/principal.controller.js +1 -1
  66. package/build/main/lib/principal.http.service.d.ts +13 -0
  67. package/build/main/lib/principal.http.service.js +26 -0
  68. package/build/main/lib/principal.service.d.ts +16 -5
  69. package/build/main/lib/principal.service.js +83 -2
  70. package/build/module/index.d.ts +19 -0
  71. package/build/module/index.js +20 -1
  72. package/build/module/lib/auth0/auth0.service.d.ts +7 -3
  73. package/build/module/lib/auth0/auth0.service.js +24 -3
  74. package/build/module/lib/decoradores/dto/validadores-or-and/esTipo.d.ts +3 -0
  75. package/build/module/lib/decoradores/dto/validadores-or-and/esTipo.js +35 -0
  76. package/build/module/lib/decoradores/dto/validadores-or-and/interfaces.d.ts +12 -0
  77. package/build/module/lib/decoradores/dto/validadores-or-and/interfaces.js +1 -0
  78. package/build/module/lib/decoradores/mlab-swagger/constantes.js +4 -2
  79. package/build/module/lib/decoradores/mlab-swagger/interfaces.d.ts +15 -2
  80. package/build/module/lib/funciones-util/typeorm/valor-esta-dentro-del-arreglo.js +7 -2
  81. package/build/module/lib/google-cloud/google-cloud-vision-api/constants.d.ts +1 -0
  82. package/build/module/lib/google-cloud/google-cloud-vision-api/constants.js +2 -0
  83. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api-principal.module.d.ts +5 -0
  84. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api-principal.module.js +52 -0
  85. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.helper.d.ts +3 -0
  86. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.helper.js +5 -0
  87. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.module.d.ts +2 -0
  88. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.module.js +26 -0
  89. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.service.d.ts +26 -0
  90. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.service.js +88 -0
  91. package/build/module/lib/google-cloud/google-cloud-vision-api/interfaces/texto-imagen.interface.d.ts +6 -0
  92. package/build/module/lib/google-cloud/google-cloud-vision-api/interfaces/texto-imagen.interface.js +1 -0
  93. package/build/module/lib/modulos-configuracion/base-datos/base-datos.core.module.d.ts +6 -0
  94. package/build/module/lib/modulos-configuracion/base-datos/base-datos.core.module.js +68 -0
  95. package/build/module/lib/modulos-configuracion/base-datos/base-datos.helper.d.ts +10 -0
  96. package/build/module/lib/modulos-configuracion/base-datos/base-datos.helper.js +150 -0
  97. package/build/module/lib/modulos-configuracion/base-datos/base-datos.module.d.ts +7 -0
  98. package/build/module/lib/modulos-configuracion/base-datos/base-datos.module.js +27 -0
  99. package/build/module/lib/modulos-configuracion/base-datos/base-datos.service.d.ts +13 -0
  100. package/build/module/lib/modulos-configuracion/base-datos/base-datos.service.js +111 -0
  101. package/build/module/lib/modulos-configuracion/base-datos/constantes.d.ts +2 -0
  102. package/build/module/lib/modulos-configuracion/base-datos/constantes.js +3 -0
  103. package/build/module/lib/modulos-configuracion/base-datos/excepciones/creacion.exception.d.ts +9 -0
  104. package/build/module/lib/modulos-configuracion/base-datos/excepciones/creacion.exception.js +18 -0
  105. package/build/module/lib/modulos-configuracion/base-datos/excepciones/vacio.exception.d.ts +5 -0
  106. package/build/module/lib/modulos-configuracion/base-datos/excepciones/vacio.exception.js +9 -0
  107. package/build/module/lib/modulos-configuracion/base-datos/excepciones/validacion.exception.d.ts +6 -0
  108. package/build/module/lib/modulos-configuracion/base-datos/excepciones/validacion.exception.js +7 -0
  109. package/build/module/lib/modulos-configuracion/base-datos/funciones/guardar-tree-lugar.d.ts +3 -0
  110. package/build/module/lib/modulos-configuracion/base-datos/funciones/guardar-tree-lugar.js +30 -0
  111. package/build/module/lib/modulos-configuracion/base-datos/interfaces/conexion-base-datos.interface.d.ts +12 -0
  112. package/build/module/lib/modulos-configuracion/base-datos/interfaces/conexion-base-datos.interface.js +1 -0
  113. package/build/module/lib/modulos-configuracion/base-datos/interfaces/configuracion-bd.interface.d.ts +11 -0
  114. package/build/module/lib/modulos-configuracion/base-datos/interfaces/configuracion-bd.interface.js +1 -0
  115. package/build/module/lib/modulos-configuracion/base-datos/interfaces/entidades.interface.d.ts +8 -0
  116. package/build/module/lib/modulos-configuracion/base-datos/interfaces/entidades.interface.js +1 -0
  117. package/build/module/lib/modulos-configuracion/base-datos/interfaces/entorno-configuracion.interface.d.ts +28 -0
  118. package/build/module/lib/modulos-configuracion/base-datos/interfaces/entorno-configuracion.interface.js +1 -0
  119. package/build/module/lib/modulos-configuracion/base-datos/interfaces/meta-dato-prueba.interface.d.ts +22 -0
  120. package/build/module/lib/modulos-configuracion/base-datos/interfaces/meta-dato-prueba.interface.js +1 -0
  121. package/build/module/lib/modulos-configuracion/base-datos/interfaces/respuesta-validacion.interface.d.ts +24 -0
  122. package/build/module/lib/modulos-configuracion/base-datos/interfaces/respuesta-validacion.interface.js +1 -0
  123. package/build/module/lib/modulos-configuracion/base-datos/store/datos-prueba.storage.d.ts +6 -0
  124. package/build/module/lib/modulos-configuracion/base-datos/store/datos-prueba.storage.js +10 -0
  125. package/build/module/lib/mongo-configuracion-indice.interface.d.ts +5 -0
  126. package/build/module/lib/mongo-configuracion-indice.interface.js +1 -0
  127. package/build/module/lib/principal-mongo.controller.d.ts +11 -0
  128. package/build/module/lib/principal-mongo.controller.js +78 -0
  129. package/build/module/lib/principal-mongo.service.d.ts +10 -0
  130. package/build/module/lib/principal-mongo.service.js +41 -0
  131. package/build/module/lib/principal.controller.d.ts +13 -12
  132. package/build/module/lib/principal.controller.js +1 -1
  133. package/build/module/lib/principal.http.service.d.ts +13 -0
  134. package/build/module/lib/principal.http.service.js +22 -0
  135. package/build/module/lib/principal.service.d.ts +16 -5
  136. package/build/module/lib/principal.service.js +85 -4
  137. package/package.json +8 -5
@@ -0,0 +1,114 @@
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 __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var BaseDatosService_1;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.BaseDatosService = void 0;
17
+ const common_1 = require("@nestjs/common");
18
+ const constantes_1 = require("./constantes");
19
+ const typeorm_1 = require("typeorm");
20
+ const base_datos_helper_1 = require("./base-datos.helper");
21
+ let BaseDatosService = BaseDatosService_1 = class BaseDatosService {
22
+ constructor(metaDatosPrueba, configuracionAmbiente) {
23
+ this.metaDatosPrueba = metaDatosPrueba;
24
+ this.configuracionAmbiente = configuracionAmbiente;
25
+ }
26
+ static obtenerRepositorio(entidad, esMongo, nombreConexion = 'default') {
27
+ const manager = typeorm_1.getManager(nombreConexion);
28
+ return esMongo ? typeorm_1.getMongoRepository(entidad, nombreConexion) : manager.getRepository(entidad);
29
+ }
30
+ async insertarDatosPrueba() {
31
+ let logs = '************ 💾 \x1b[33m Datos de prueba 💾 \x1b[0m ************ \n';
32
+ const estaProduccion = this.configuracionAmbiente.production;
33
+ const errores = [];
34
+ const metaDatosPrueba = BaseDatosService_1.ordenarMetaDatos(this.metaDatosPrueba);
35
+ for (const metaDatoPrueba of metaDatosPrueba) {
36
+ const rutaContenedorArchivo = estaProduccion ? (metaDatoPrueba.path + 'pre-produccion/') : (metaDatoPrueba.path + 'desarrollo/');
37
+ const entidad = metaDatoPrueba.entidad;
38
+ let nombreEntidad = '';
39
+ if (metaDatoPrueba.alias) {
40
+ nombreEntidad = metaDatoPrueba.alias;
41
+ }
42
+ else {
43
+ nombreEntidad = entidad.name ? entidad.name : entidad;
44
+ }
45
+ let novedades = {
46
+ estado: true,
47
+ lecturaArchivo: undefined,
48
+ creacionDatos: undefined,
49
+ validacionDatos: undefined,
50
+ };
51
+ const rutaArchivo = rutaContenedorArchivo + metaDatoPrueba.archivo;
52
+ let repositorio;
53
+ try {
54
+ repositorio = BaseDatosService_1.obtenerRepositorio(entidad, metaDatoPrueba.esMongo, metaDatoPrueba.conexion);
55
+ }
56
+ catch (error) {
57
+ novedades.estado = false;
58
+ errores.push({
59
+ novedades,
60
+ repositorio: error,
61
+ });
62
+ }
63
+ const timeOut = metaDatoPrueba.timeOut;
64
+ const guardarArbol = !!metaDatoPrueba.guardarArbol;
65
+ try {
66
+ const dto = metaDatoPrueba.dto;
67
+ if (timeOut) {
68
+ setTimeout(async () => {
69
+ if (guardarArbol) {
70
+ novedades = await base_datos_helper_1.BaseDatosHelper.guardarEnArbol(rutaArchivo, metaDatoPrueba.guardarArbol, repositorio, metaDatoPrueba.dto);
71
+ }
72
+ else {
73
+ novedades = await base_datos_helper_1.BaseDatosHelper.crearDatosRepositorio(repositorio, rutaArchivo, dto, metaDatoPrueba.esMongo);
74
+ }
75
+ }, timeOut);
76
+ }
77
+ else {
78
+ if (guardarArbol) {
79
+ novedades = await base_datos_helper_1.BaseDatosHelper.guardarEnArbol(rutaArchivo, metaDatoPrueba.guardarArbol, repositorio, metaDatoPrueba.dto);
80
+ }
81
+ else {
82
+ novedades = await base_datos_helper_1.BaseDatosHelper.crearDatosRepositorio(repositorio, rutaArchivo, dto, metaDatoPrueba.esMongo);
83
+ }
84
+ }
85
+ logs += `👍 \x1b[34m Prioridad => [${metaDatoPrueba.prioridad}]\x1b[32m Creado datos para: \x1b[33m${nombreEntidad} \n\x1b[0m`;
86
+ }
87
+ catch (error) {
88
+ novedades = error;
89
+ logs += `❌ \x1b[31m Prioridad => [${metaDatoPrueba.prioridad}] Error creando datos para: \x1b[33m${nombreEntidad} \n\x1b[0m`;
90
+ errores.push({
91
+ entidad: nombreEntidad,
92
+ novedades: novedades.toString(),
93
+ });
94
+ }
95
+ }
96
+ return {
97
+ logs,
98
+ errores,
99
+ };
100
+ }
101
+ static ordenarMetaDatos(metaDatos) {
102
+ return metaDatos.datosPrueba.sort((a, b) => {
103
+ return a.prioridad - b.prioridad;
104
+ });
105
+ }
106
+ };
107
+ BaseDatosService = BaseDatosService_1 = __decorate([
108
+ common_1.Injectable(),
109
+ __param(0, common_1.Inject(constantes_1.META_DATOS_PRUEBA)),
110
+ __param(1, common_1.Inject(constantes_1.ENV_CONFIG)),
111
+ __metadata("design:paramtypes", [Object, Object])
112
+ ], BaseDatosService);
113
+ exports.BaseDatosService = BaseDatosService;
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kYXRvcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bG9zLWNvbmZpZ3VyYWNpb24vYmFzZS1kYXRvcy9iYXNlLWRhdG9zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJDQUFvRDtBQUVwRCw2Q0FBMkQ7QUFDM0QscUNBQXlEO0FBSXpELDJEQUFzRDtBQUl0RCxJQUFhLGdCQUFnQix3QkFBN0IsTUFBYSxnQkFBZ0I7SUFFM0IsWUFFVSxlQUFnQyxFQUVoQyxxQkFBb0Q7UUFGcEQsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBRWhDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBK0I7SUFFOUQsQ0FBQztJQUVPLE1BQU0sQ0FBQyxrQkFBa0IsQ0FDL0IsT0FBcUIsRUFDckIsT0FBaUIsRUFDakIsaUJBQXlCLFNBQVM7UUFFbEMsTUFBTSxPQUFPLEdBQUcsb0JBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMzQyxPQUFPLE9BQU8sQ0FBQyxDQUFDLENBQUMsNEJBQWtCLENBQUMsT0FBMEIsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNuSCxDQUFDO0lBRUQsS0FBSyxDQUFDLG1CQUFtQjtRQUN2QixJQUFJLElBQUksR0FBRyxxRUFBcUUsQ0FBQztRQUNqRixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsVUFBVSxDQUFDO1FBQzdELE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNuQixNQUFNLGVBQWUsR0FBRyxrQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDaEYsS0FBSyxNQUFNLGNBQWMsSUFBSSxlQUFlLEVBQUU7WUFDNUMsTUFBTSxxQkFBcUIsR0FBRyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLElBQUksR0FBRyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxJQUFJLEdBQUcsYUFBYSxDQUFDLENBQUM7WUFDakksTUFBTSxPQUFPLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQztZQUN2QyxJQUFJLGFBQWEsR0FBRyxFQUFFLENBQUM7WUFDdkIsSUFBSSxjQUFjLENBQUMsS0FBSyxFQUFFO2dCQUN4QixhQUFhLEdBQUcsY0FBYyxDQUFDLEtBQUssQ0FBQzthQUN0QztpQkFBTTtnQkFDTCxhQUFhLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO2FBQ3ZEO1lBQ0QsSUFBSSxTQUFTLEdBQStCO2dCQUMxQyxNQUFNLEVBQUUsSUFBSTtnQkFDWixjQUFjLEVBQUUsU0FBUztnQkFDekIsYUFBYSxFQUFFLFNBQVM7Z0JBQ3hCLGVBQWUsRUFBRSxTQUFTO2FBQzNCLENBQUM7WUFDRixNQUFNLFdBQVcsR0FBRyxxQkFBcUIsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDO1lBQ25FLElBQUksV0FBVyxDQUFDO1lBQ2hCLElBQUk7Z0JBQ0YsV0FBVyxHQUFHLGtCQUFnQixDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM3RztZQUFDLE9BQU8sS0FBSyxFQUFFO2dCQUNkLFNBQVMsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO2dCQUN6QixPQUFPLENBQUMsSUFBSSxDQUNWO29CQUNFLFNBQVM7b0JBQ1QsV0FBVyxFQUFFLEtBQUs7aUJBQ25CLENBQ0YsQ0FBQzthQUNIO1lBQ0QsTUFBTSxPQUFPLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQztZQUN2QyxNQUFNLFlBQVksR0FBRyxDQUFDLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQztZQUNuRCxJQUFJO2dCQUNGLE1BQU0sR0FBRyxHQUFHLGNBQWMsQ0FBQyxHQUFHLENBQUM7Z0JBQy9CLElBQUksT0FBTyxFQUFFO29CQUNYLFVBQVUsQ0FDUixLQUFLLElBQUksRUFBRTt3QkFDVCxJQUFJLFlBQVksRUFBRTs0QkFDaEIsU0FBUyxHQUFHLE1BQU0sbUNBQWUsQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLGNBQWMsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQzt5QkFDN0g7NkJBQU07NEJBQ0wsU0FBUyxHQUFHLE1BQU0sbUNBQWUsQ0FBQyxxQkFBcUIsQ0FBQyxXQUFXLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBRSxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7eUJBQ2hIO29CQUNILENBQUMsRUFDRCxPQUFPLENBQ1IsQ0FBQztpQkFDSDtxQkFBTTtvQkFDTCxJQUFJLFlBQVksRUFBRTt3QkFDaEIsU0FBUyxHQUFHLE1BQU0sbUNBQWUsQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLGNBQWMsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztxQkFDN0g7eUJBQU07d0JBQ0wsU0FBUyxHQUFHLE1BQU0sbUNBQWUsQ0FBQyxxQkFBcUIsQ0FBQyxXQUFXLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBRSxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7cUJBQ2hIO2lCQUNGO2dCQUNELElBQUksSUFBSSw2QkFBNkIsY0FBYyxDQUFDLFNBQVMseUNBQXlDLGFBQWEsWUFBWSxDQUFDO2FBQ2pJO1lBQUMsT0FBTyxLQUFLLEVBQUU7Z0JBQ2QsU0FBUyxHQUFHLEtBQUssQ0FBQztnQkFDbEIsSUFBSSxJQUFJLDZCQUE2QixjQUFjLENBQUMsU0FBUyx1Q0FBdUMsYUFBYSxZQUFZLENBQUM7Z0JBQzlILE9BQU8sQ0FBQyxJQUFJLENBQ1Y7b0JBQ0UsT0FBTyxFQUFFLGFBQWE7b0JBQ3RCLFNBQVMsRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFO2lCQUNoQyxDQUNGLENBQUM7YUFDSDtTQUNGO1FBQ0QsT0FBTztZQUNMLElBQUk7WUFDSixPQUFPO1NBQ1IsQ0FBQztJQUNKLENBQUM7SUFFTyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsU0FBMEI7UUFDeEQsT0FBTyxTQUFTLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDL0IsQ0FBQyxDQUEwQixFQUFFLENBQTBCLEVBQUUsRUFBRTtZQUN6RCxPQUFPLENBQUMsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUNuQyxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRixDQUFBO0FBbkdZLGdCQUFnQjtJQUQ1QixtQkFBVSxFQUFFO0lBSVIsV0FBQSxlQUFNLENBQUMsOEJBQWlCLENBQUMsQ0FBQTtJQUV6QixXQUFBLGVBQU0sQ0FBQyx1QkFBVSxDQUFDLENBQUE7O0dBTFYsZ0JBQWdCLENBbUc1QjtBQW5HWSw0Q0FBZ0IifQ==
@@ -0,0 +1,2 @@
1
+ export declare const META_DATOS_PRUEBA = "META_DATOS_PRUEBA";
2
+ export declare const ENV_CONFIG = "ENV_CONFIG";
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ENV_CONFIG = exports.META_DATOS_PRUEBA = void 0;
4
+ exports.META_DATOS_PRUEBA = 'META_DATOS_PRUEBA';
5
+ exports.ENV_CONFIG = 'ENV_CONFIG';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbW9kdWxvcy1jb25maWd1cmFjaW9uL2Jhc2UtZGF0b3MvY29uc3RhbnRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBYSxRQUFBLGlCQUFpQixHQUFHLG1CQUFtQixDQUFDO0FBQ3hDLFFBQUEsVUFBVSxHQUFHLFlBQVksQ0FBQyJ9
@@ -0,0 +1,9 @@
1
+ import { RespuestaCreacionInterface, RespuestaInsercionDatosInterface, RespuestaLecturaInterface, RespuestaValidacionInterface } from '../interfaces/respuesta-validacion.interface';
2
+ export declare class CreacionException implements RespuestaCreacionInterface {
3
+ creacionDatos: RespuestaInsercionDatosInterface;
4
+ estado: boolean;
5
+ lecturaArchivo: RespuestaLecturaInterface;
6
+ validacionDatos: RespuestaValidacionInterface;
7
+ constructor(respuesta: RespuestaCreacionInterface);
8
+ toString(): any;
9
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CreacionException = void 0;
4
+ class CreacionException {
5
+ constructor(respuesta) {
6
+ this.creacionDatos = respuesta.creacionDatos;
7
+ this.estado = respuesta.estado;
8
+ this.lecturaArchivo = respuesta.lecturaArchivo;
9
+ this.validacionDatos = respuesta.validacionDatos;
10
+ }
11
+ toString() {
12
+ const erroresValidacion = this.validacionDatos.novedades.map(novedad => `registro: ' ${JSON.stringify(novedad.registro)}\n errores: ${novedad.errores}`);
13
+ return {
14
+ estado: this.estado,
15
+ lecturaArchivo: this.lecturaArchivo.novedades.toString(),
16
+ validacionDatos: erroresValidacion.toString(),
17
+ creacionDatos: this.creacionDatos.novedades.toString(),
18
+ };
19
+ }
20
+ }
21
+ exports.CreacionException = CreacionException;
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYWNpb24uZXhjZXB0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bG9zLWNvbmZpZ3VyYWNpb24vYmFzZS1kYXRvcy9leGNlcGNpb25lcy9jcmVhY2lvbi5leGNlcHRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBT0EsTUFBYSxpQkFBaUI7SUFNNUIsWUFBWSxTQUFxQztRQUMvQyxJQUFJLENBQUMsYUFBYSxHQUFHLFNBQVMsQ0FBQyxhQUFhLENBQUM7UUFDN0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDO1FBQy9CLElBQUksQ0FBQyxjQUFjLEdBQUcsU0FBUyxDQUFDLGNBQWMsQ0FBQztRQUMvQyxJQUFJLENBQUMsZUFBZSxHQUFHLFNBQVMsQ0FBQyxlQUFlLENBQUM7SUFDbkQsQ0FBQztJQUVNLFFBQVE7UUFDYixNQUFNLGlCQUFpQixHQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBbUIsQ0FBQyxHQUFHLENBQ3JFLE9BQU8sQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxlQUFlLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FDNUYsQ0FBQztRQUNGLE9BQU87WUFDTCxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRTtZQUN4RCxlQUFlLEVBQUUsaUJBQWlCLENBQUMsUUFBUSxFQUFFO1lBQzdDLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUU7U0FDdkQsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQXhCRCw4Q0F3QkMifQ==
@@ -0,0 +1,5 @@
1
+ export declare class VacioException {
2
+ mensaje: string;
3
+ constructor(mesaje: string);
4
+ toString(): string;
5
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VacioException = void 0;
4
+ class VacioException {
5
+ constructor(mesaje) {
6
+ this.mensaje = mesaje;
7
+ }
8
+ toString() {
9
+ return this.mensaje;
10
+ }
11
+ }
12
+ exports.VacioException = VacioException;
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFjaW8uZXhjZXB0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bG9zLWNvbmZpZ3VyYWNpb24vYmFzZS1kYXRvcy9leGNlcGNpb25lcy92YWNpby5leGNlcHRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsTUFBYSxjQUFjO0lBR3pCLFlBQVksTUFBYztRQUN4QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztJQUN4QixDQUFDO0lBRU0sUUFBUTtRQUNiLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0NBQ0Y7QUFWRCx3Q0FVQyJ9
@@ -0,0 +1,6 @@
1
+ import { ErrorValidadcion, RespuestaValidacionInterface } from '../interfaces/respuesta-validacion.interface';
2
+ export declare class ValidacionException implements RespuestaValidacionInterface {
3
+ estado: boolean;
4
+ novedades: ErrorValidadcion[] | any[];
5
+ constructor(respuesta: RespuestaValidacionInterface);
6
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ValidacionException = void 0;
4
+ class ValidacionException {
5
+ constructor(respuesta) {
6
+ this.estado = respuesta.estado;
7
+ this.novedades = respuesta.novedades;
8
+ }
9
+ }
10
+ exports.ValidacionException = ValidacionException;
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhY2lvbi5leGNlcHRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL21vZHVsb3MtY29uZmlndXJhY2lvbi9iYXNlLWRhdG9zL2V4Y2VwY2lvbmVzL3ZhbGlkYWNpb24uZXhjZXB0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLE1BQWEsbUJBQW1CO0lBSTlCLFlBQVksU0FBdUM7UUFDakQsSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDO1FBQy9CLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQztJQUN2QyxDQUFDO0NBQ0Y7QUFSRCxrREFRQyJ9
@@ -0,0 +1,3 @@
1
+ import { Repository } from 'typeorm';
2
+ import { Diccionario } from '../interfaces/entorno-configuracion.interface';
3
+ export declare function guardarEnArbolDefecto(hijoMenu: Diccionario[], repositorio: Repository<any>, nombreAtributoPadre: string): Promise<any>;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.guardarEnArbolDefecto = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ // lugarPadre
6
+ async function guardarEnArbolDefecto(hijoMenu, repositorio, nombreAtributoPadre) {
7
+ for (const entidadEnCuestion of hijoMenu) {
8
+ try {
9
+ const clonHijo = Object.assign({}, entidadEnCuestion);
10
+ const idPadre = entidadEnCuestion[nombreAtributoPadre];
11
+ const hijo = clonHijo;
12
+ const padreEncontrado = await repositorio.findOne(idPadre);
13
+ if (padreEncontrado) {
14
+ hijo[nombreAtributoPadre] = padreEncontrado;
15
+ if (hijo.id) {
16
+ delete hijo.id;
17
+ }
18
+ await repositorio.save(hijo);
19
+ }
20
+ else {
21
+ new common_1.InternalServerErrorException({
22
+ error: 400,
23
+ mensaje: 'Error no se encontro el id',
24
+ });
25
+ }
26
+ }
27
+ catch (e) {
28
+ console.log('error al crear arbol', e);
29
+ return e;
30
+ }
31
+ }
32
+ }
33
+ exports.guardarEnArbolDefecto = guardarEnArbolDefecto;
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VhcmRhci10cmVlLWx1Z2FyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bG9zLWNvbmZpZ3VyYWNpb24vYmFzZS1kYXRvcy9mdW5jaW9uZXMvZ3VhcmRhci10cmVlLWx1Z2FyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJDQUE0RDtBQUk1RCxhQUFhO0FBQ04sS0FBSyxVQUFVLHFCQUFxQixDQUFDLFFBQXVCLEVBQUUsV0FBNEIsRUFBRSxtQkFBMkI7SUFDMUgsS0FBSyxNQUFNLGlCQUFpQixJQUFJLFFBQVEsRUFBRTtRQUN0QyxJQUFJO1lBQ0EsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztZQUN0RCxNQUFNLE9BQU8sR0FBRyxpQkFBaUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBQ3ZELE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQztZQUN0QixNQUFNLGVBQWUsR0FBRyxNQUFNLFdBQVcsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDM0QsSUFBSSxlQUFlLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLGVBQWUsQ0FBQztnQkFDNUMsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFO29CQUNULE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQztpQkFDbEI7Z0JBQ0QsTUFBTSxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ2hDO2lCQUFNO2dCQUNILElBQUkscUNBQTRCLENBQUM7b0JBQzdCLEtBQUssRUFBRSxHQUFHO29CQUNWLE9BQU8sRUFBRSw0QkFBNEI7aUJBQ3hDLENBQUMsQ0FBQzthQUNOO1NBQ0o7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNSLE9BQU8sQ0FBQyxHQUFHLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdkMsT0FBTyxDQUFDLENBQUM7U0FDWjtLQUNKO0FBQ0wsQ0FBQztBQXhCRCxzREF3QkMifQ==
@@ -0,0 +1,12 @@
1
+ import { TypeOrmModuleOptions } from '@nestjs/typeorm/dist/interfaces/typeorm-options.interface';
2
+ export interface ConexionBaseDatosInterface {
3
+ mysql: TypeOrmModuleOptions;
4
+ mongodb: TypeOrmModuleOptions;
5
+ redisConnection?: {
6
+ [k in string]: any;
7
+ };
8
+ redisStoreOptions?: {
9
+ [k in string]: any;
10
+ };
11
+ [k: string]: TypeOrmModuleOptions;
12
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZXhpb24tYmFzZS1kYXRvcy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL21vZHVsb3MtY29uZmlndXJhY2lvbi9iYXNlLWRhdG9zL2ludGVyZmFjZXMvY29uZXhpb24tYmFzZS1kYXRvcy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -0,0 +1,11 @@
1
+ import { MetaDatosPrueba } from './meta-dato-prueba.interface';
2
+ import { ConexionBaseDatosInterface } from './conexion-base-datos.interface';
3
+ import { EntornoConfiguracionInterface } from './entorno-configuracion.interface';
4
+ export interface ConfiguracionBdInterface {
5
+ pathDatosPrueba?: string;
6
+ datosPrueba?: MetaDatosPrueba;
7
+ bdConfiguracion?: ConexionBaseDatosInterface;
8
+ entidadesMongo?: any[];
9
+ entidadesMysql?: any[];
10
+ configuracionEntorno: EntornoConfiguracionInterface;
11
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhY2lvbi1iZC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL21vZHVsb3MtY29uZmlndXJhY2lvbi9iYXNlLWRhdG9zL2ludGVyZmFjZXMvY29uZmlndXJhY2lvbi1iZC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -0,0 +1,8 @@
1
+ import { ObjectType } from 'typeorm/common/ObjectType';
2
+ import { EntitySchema } from 'typeorm';
3
+ import { PrincipalEntity } from '../../../principal.entity';
4
+ export interface EntidadesInterface {
5
+ mysql: PrincipalEntity[];
6
+ mongodb: any[];
7
+ }
8
+ export declare type Entidad<T> = ObjectType<T> | EntitySchema<T> | string;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aWRhZGVzLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbW9kdWxvcy1jb25maWd1cmFjaW9uL2Jhc2UtZGF0b3MvaW50ZXJmYWNlcy9lbnRpZGFkZXMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
@@ -0,0 +1,28 @@
1
+ import { ConexionBaseDatosInterface } from './conexion-base-datos.interface';
2
+ export declare type Diccionario = {
3
+ [k in string]: any;
4
+ };
5
+ export interface EntornoConfiguracionInterface {
6
+ versionAplicativo: string;
7
+ production: boolean;
8
+ dbConnections: ConexionBaseDatosInterface;
9
+ puertoLevanta: number;
10
+ urls: Diccionario;
11
+ expressSession: Diccionario;
12
+ graphqlModule: Diccionario;
13
+ auth0: Diccionario;
14
+ auth0PasswordLogin: Diccionario;
15
+ seguridad: boolean;
16
+ asegurarControladores: boolean;
17
+ establecerLogin: boolean;
18
+ permitirSeleccionarEmpresa: boolean;
19
+ establecerEmpresaOrigenDeSesionweb: boolean;
20
+ uploadFile: Diccionario;
21
+ oneSignal: Diccionario;
22
+ paymentez: Diccionario;
23
+ rutasWebAProteger: string[];
24
+ rutasMovilesAProteger: string[];
25
+ rutasMovilesOWebAProteger: string[];
26
+ credencialesCloud: Diccionario;
27
+ [k: string]: any;
28
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50b3Juby1jb25maWd1cmFjaW9uLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbW9kdWxvcy1jb25maWd1cmFjaW9uL2Jhc2UtZGF0b3MvaW50ZXJmYWNlcy9lbnRvcm5vLWNvbmZpZ3VyYWNpb24uaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
@@ -0,0 +1,22 @@
1
+ import { Repository } from 'typeorm';
2
+ import { Diccionario } from './entorno-configuracion.interface';
3
+ import { PrincipalDto } from '../../../principal.dto';
4
+ export interface MetaDatoPruebaInterface {
5
+ path: string;
6
+ archivo: string;
7
+ entidad: any;
8
+ timeOut?: number;
9
+ guardarArbol?: EstrategiaArbolDefault | EstrategiaArbol;
10
+ esMongo?: boolean;
11
+ alias?: string;
12
+ dto: typeof PrincipalDto;
13
+ prioridad: number;
14
+ conexion?: string;
15
+ }
16
+ export interface EstrategiaArbolDefault {
17
+ nombreAtributoPadre: string;
18
+ }
19
+ export interface MetaDatosPrueba {
20
+ datosPrueba: MetaDatoPruebaInterface[];
21
+ }
22
+ export declare type EstrategiaArbol = (datos: Diccionario[], repositorio: Repository<any>, ...args: any[]) => Promise<any>;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YS1kYXRvLXBydWViYS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL21vZHVsb3MtY29uZmlndXJhY2lvbi9iYXNlLWRhdG9zL2ludGVyZmFjZXMvbWV0YS1kYXRvLXBydWViYS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -0,0 +1,24 @@
1
+ import { ValidationError } from 'class-validator';
2
+ export interface RespuestaValidacionInterface {
3
+ estado: boolean;
4
+ novedades?: ErrorValidadcion[] | any[];
5
+ }
6
+ export interface RespuestaLecturaInterface {
7
+ estado: boolean;
8
+ novedades?: any[];
9
+ path: string;
10
+ }
11
+ export interface RespuestaInsercionDatosInterface {
12
+ estado: boolean;
13
+ novedades?: any[];
14
+ }
15
+ export interface RespuestaCreacionInterface {
16
+ lecturaArchivo: RespuestaLecturaInterface;
17
+ validacionDatos: RespuestaValidacionInterface;
18
+ creacionDatos: RespuestaInsercionDatosInterface;
19
+ estado: boolean;
20
+ }
21
+ export interface ErrorValidadcion {
22
+ registro: any;
23
+ errores: ValidationError[];
24
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcHVlc3RhLXZhbGlkYWNpb24uaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bG9zLWNvbmZpZ3VyYWNpb24vYmFzZS1kYXRvcy9pbnRlcmZhY2VzL3Jlc3B1ZXN0YS12YWxpZGFjaW9uLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -0,0 +1,6 @@
1
+ import { MetaDatoPruebaInterface } from '../interfaces/meta-dato-prueba.interface';
2
+ export declare class DatosPruebaStorage {
3
+ private static readonly configuracionStorage;
4
+ static agregarConfiguracion(config: MetaDatoPruebaInterface): void;
5
+ static get configuraciones(): MetaDatoPruebaInterface[];
6
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DatosPruebaStorage = void 0;
4
+ class DatosPruebaStorage {
5
+ static agregarConfiguracion(config) {
6
+ this.configuracionStorage.push(config);
7
+ }
8
+ static get configuraciones() {
9
+ return this.configuracionStorage;
10
+ }
11
+ }
12
+ exports.DatosPruebaStorage = DatosPruebaStorage;
13
+ DatosPruebaStorage.configuracionStorage = [];
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0b3MtcHJ1ZWJhLnN0b3JhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL21vZHVsb3MtY29uZmlndXJhY2lvbi9iYXNlLWRhdG9zL3N0b3JlL2RhdG9zLXBydWViYS5zdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLE1BQWEsa0JBQWtCO0lBRzdCLE1BQU0sQ0FBQyxvQkFBb0IsQ0FDekIsTUFBK0I7UUFFL0IsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBQ0QsTUFBTSxLQUFLLGVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDbkMsQ0FBQzs7QUFWSCxnREFXQztBQVZ5Qix1Q0FBb0IsR0FBOEIsRUFBRSxDQUFDIn0=
@@ -0,0 +1,5 @@
1
+ import { MongodbIndexOptions } from 'typeorm';
2
+ export interface MongoConfiguracionIndiceInterface {
3
+ fieldOrSpec: string | any;
4
+ options?: MongodbIndexOptions;
5
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uZ28tY29uZmlndXJhY2lvbi1pbmRpY2UuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9tb25nby1jb25maWd1cmFjaW9uLWluZGljZS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -0,0 +1,11 @@
1
+ import { PrincipalController } from './principal.controller';
2
+ import { FuncionesSeguridad } from './interfaces-util/funciones-seguridad';
3
+ import { DtoInterface } from './interfaces-util/dto';
4
+ import { MensajesController } from './interfaces-util/mensajes-controller';
5
+ import { FuncionesMiddleware } from './interfaces-util/funciones-middleware';
6
+ import { PrincipalMongoService } from './principal-mongo.service';
7
+ export declare abstract class PrincipalMongoController<CreateDto = any, UpdateDto = any, Entity = any> extends PrincipalController<CreateDto, UpdateDto, Entity> {
8
+ protected contexto: any;
9
+ protected constructor(_funcionesSeguridad: FuncionesSeguridad, _servicio: PrincipalMongoService<Entity, CreateDto, UpdateDto>, _dto: DtoInterface, _skip: number, _take: number, _mensajes: MensajesController, contexto: any, _funcionesMiddleware?: FuncionesMiddleware<CreateDto, UpdateDto, PrincipalController<CreateDto, UpdateDto>, Entity>, activarPoliticasDeSeguridad?: boolean, activarTriggersDeControlador?: boolean);
10
+ findAll(criterioBusqueda: any, request: any, response: any): void;
11
+ }
@@ -0,0 +1,82 @@
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 __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.PrincipalMongoController = void 0;
16
+ const principal_controller_1 = require("./principal.controller");
17
+ const common_1 = require("@nestjs/common");
18
+ const aplicar_politicas_de_seguridad_1 = require("./seguridad/aplicar-politicas-de-seguridad");
19
+ const operators_1 = require("rxjs/operators");
20
+ const rxjs_1 = require("rxjs");
21
+ class PrincipalMongoController extends principal_controller_1.PrincipalController {
22
+ constructor(_funcionesSeguridad, _servicio, _dto, _skip = 0, _take = 30, _mensajes = {
23
+ encontrarUno: 'Id incorrecto',
24
+ crearUno: 'Registro inválido',
25
+ actualizarUno: 'Error al actualizar',
26
+ eliminarUno: 'Error al eliminar'
27
+ }, contexto, _funcionesMiddleware = {}, activarPoliticasDeSeguridad = true, activarTriggersDeControlador = true) {
28
+ super(_funcionesSeguridad, _servicio, _dto, _skip, _take, _mensajes, contexto, _funcionesMiddleware, activarPoliticasDeSeguridad, activarTriggersDeControlador);
29
+ this.contexto = contexto;
30
+ }
31
+ findAll(criterioBusqueda, request, response) {
32
+ const tipoPoliticaSeguridad = {
33
+ web: {
34
+ request,
35
+ response
36
+ }
37
+ };
38
+ const objetoPoliticasDeSeguridad = {
39
+ funciones: this._funcionesSeguridad.findAll ? this._funcionesSeguridad.findAll : []
40
+ };
41
+ if (!this.activarPoliticasDeSeguridad) {
42
+ objetoPoliticasDeSeguridad.funciones = [];
43
+ }
44
+ const puedeRealizarAccion$ = aplicar_politicas_de_seguridad_1.aplicarPoliticasDeSeguridad(tipoPoliticaSeguridad, objetoPoliticasDeSeguridad, this.contexto);
45
+ puedeRealizarAccion$
46
+ .pipe(operators_1.mergeMap((puedeRealizarAccion) => {
47
+ if (puedeRealizarAccion) {
48
+ return rxjs_1.from(this._servicio.findFull(criterioBusqueda));
49
+ }
50
+ else {
51
+ return rxjs_1.of({ error: 403, mensaje: 'No tiene permisos' });
52
+ }
53
+ }))
54
+ .subscribe(async (respuesta) => {
55
+ const noEsRespuestaCorrecta = !(respuesta instanceof Array) && respuesta.error;
56
+ if (noEsRespuestaCorrecta) {
57
+ return response
58
+ .status(respuesta.error).send(respuesta);
59
+ }
60
+ else {
61
+ if (this._funcionesMiddleware.findAllAfter && this.activarTriggersDeControlador) {
62
+ respuesta = await this._funcionesMiddleware.findAllAfter(respuesta, tipoPoliticaSeguridad, this);
63
+ }
64
+ return response.send(respuesta);
65
+ }
66
+ }, (error) => {
67
+ console.error('Error', error);
68
+ return response.status(500).send('Error del servidor');
69
+ });
70
+ }
71
+ }
72
+ __decorate([
73
+ common_1.Get(),
74
+ __param(0, common_1.Query('criterioBusqueda')),
75
+ __param(1, common_1.Request()),
76
+ __param(2, common_1.Response()),
77
+ __metadata("design:type", Function),
78
+ __metadata("design:paramtypes", [Object, Object, Object]),
79
+ __metadata("design:returntype", void 0)
80
+ ], PrincipalMongoController.prototype, "findAll", null);
81
+ exports.PrincipalMongoController = PrincipalMongoController;
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbmNpcGFsLW1vbmdvLmNvbnRyb2xsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3ByaW5jaXBhbC1tb25nby5jb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGlFQUE2RDtBQU03RCwyQ0FBK0Q7QUFHL0QsK0ZBQXlGO0FBQ3pGLDhDQUEwQztBQUMxQywrQkFBZ0M7QUFFaEMsTUFBc0Isd0JBQ3BCLFNBQVEsMENBQWlEO0lBRXpELFlBQ0UsbUJBQXVDLEVBQ3ZDLFNBQThELEVBQzlELElBQWtCLEVBQ2xCLEtBQUssR0FBRyxDQUFDLEVBQ1QsS0FBSyxHQUFHLEVBQUUsRUFDVixZQUFnQztRQUM5QixZQUFZLEVBQUUsZUFBZTtRQUM3QixRQUFRLEVBQUUsbUJBQW1CO1FBQzdCLGFBQWEsRUFBRSxxQkFBcUI7UUFDcEMsV0FBVyxFQUFFLG1CQUFtQjtLQUNqQyxFQUNTLFFBQWEsRUFDdkIsdUJBR1ksRUFBRSxFQUNkLDJCQUEyQixHQUFHLElBQUksRUFDbEMsNEJBQTRCLEdBQUcsSUFBSTtRQUVuQyxLQUFLLENBQ0gsbUJBQW1CLEVBQ25CLFNBQVMsRUFDVCxJQUFJLEVBQ0osS0FBSyxFQUNMLEtBQUssRUFDTCxTQUFTLEVBQ1QsUUFBUSxFQUNSLG9CQUFvQixFQUNwQiwyQkFBMkIsRUFDM0IsNEJBQTRCLENBQzdCLENBQUM7UUFuQlEsYUFBUSxHQUFSLFFBQVEsQ0FBSztJQW9CekIsQ0FBQztJQUdELE9BQU8sQ0FDc0IsZ0JBQWdCLEVBQ2hDLE9BQU8sRUFDTixRQUFRO1FBRXBCLE1BQU0scUJBQXFCLEdBQXlCO1lBQ2xELEdBQUcsRUFBRTtnQkFDSCxPQUFPO2dCQUNQLFFBQVE7YUFDVDtTQUNGLENBQUM7UUFFRixNQUFNLDBCQUEwQixHQUE4QjtZQUM1RCxTQUFTLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUNwRixDQUFDO1FBRUYsSUFBSSxDQUFDLElBQUksQ0FBQywyQkFBMkIsRUFBRTtZQUNyQywwQkFBMEIsQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1NBQzNDO1FBRUQsTUFBTSxvQkFBb0IsR0FBRyw0REFBMkIsQ0FBQyxxQkFBcUIsRUFBRSwwQkFBMEIsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFM0gsb0JBQW9CO2FBQ2pCLElBQUksQ0FDSCxvQkFBUSxDQUNOLENBQUMsbUJBQTRCLEVBQU8sRUFBRTtZQUNwQyxJQUFJLG1CQUFtQixFQUFFO2dCQUN2QixPQUFPLFdBQUksQ0FDVCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FDckIsZ0JBQWdCLENBQ2pCLENBQ0YsQ0FBQzthQUNIO2lCQUFNO2dCQUNMLE9BQU8sU0FBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO2FBQ3pEO1FBQ0gsQ0FBQyxDQUNGLENBQ0Y7YUFDQSxTQUFTLENBQ1IsS0FBSyxFQUFFLFNBQWtFLEVBQUUsRUFBRTtZQUMzRSxNQUFNLHFCQUFxQixHQUFHLENBQUMsQ0FBQyxTQUFTLFlBQVksS0FBSyxDQUFDLElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQztZQUMvRSxJQUFJLHFCQUFxQixFQUFFO2dCQUN6QixPQUFPLFFBQVE7cUJBQ1osTUFBTSxDQUNKLFNBQWdELENBQUMsS0FBSyxDQUN4RCxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUNyQjtpQkFBTTtnQkFDTCxJQUFJLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLDRCQUE0QixFQUFFO29CQUMvRSxTQUFTLEdBQUcsTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQUMsWUFBWSxDQUN0RCxTQUErQixFQUMvQixxQkFBcUIsRUFDckIsSUFBSSxDQUNMLENBQUM7aUJBQ0g7Z0JBQ0QsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQ2pDO1FBRUgsQ0FBQyxFQUNELENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDUixPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztZQUM5QixPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDekQsQ0FBQyxDQUNGLENBQUM7SUFDTixDQUFDO0NBQ0Y7QUFoRUM7SUFEQyxZQUFHLEVBQUU7SUFFSCxXQUFBLGNBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFBO0lBQ3pCLFdBQUEsZ0JBQU8sRUFBRSxDQUFBO0lBQ1QsV0FBQSxpQkFBUSxFQUFFLENBQUE7Ozs7dURBNERaO0FBckdILDREQXNHQyJ9
@@ -0,0 +1,10 @@
1
+ import { PrincipalService } from './principal.service';
2
+ import { MongoRepository } from 'typeorm';
3
+ import { MongoConfiguracionIndiceInterface } from './mongo-configuracion-indice.interface';
4
+ export declare class PrincipalMongoService<T, G, F> extends PrincipalService<T, G, F> {
5
+ readonly repository: MongoRepository<T>;
6
+ private indexConfig?;
7
+ constructor(repository: MongoRepository<T>, indexConfig?: MongoConfiguracionIndiceInterface, Entidad?: any, NombreRepositorio?: string, debug?: boolean);
8
+ findFull(criterioBusqueda: string): Promise<[T[], number]>;
9
+ crearIndice(config: MongoConfiguracionIndiceInterface): Promise<string>;
10
+ }
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PrincipalMongoService = void 0;
4
+ const principal_service_1 = require("./principal.service");
5
+ const common_1 = require("@nestjs/common");
6
+ class PrincipalMongoService extends principal_service_1.PrincipalService {
7
+ constructor(repository, indexConfig, Entidad, NombreRepositorio, debug = true) {
8
+ super(repository, Entidad, NombreRepositorio, debug);
9
+ this.repository = repository;
10
+ this.indexConfig = indexConfig;
11
+ if (this.indexConfig) {
12
+ this.crearIndice(indexConfig).then(indx => console.info(`Indice creado: ${repository.metadata.name}`, indx)).catch(err => console.error(`Error al crear el indice para la entidad: ${repository.metadata.name}`, err));
13
+ }
14
+ }
15
+ async findFull(criterioBusqueda) {
16
+ try {
17
+ if (criterioBusqueda) {
18
+ return await this.repository.findAndCount(JSON.parse(criterioBusqueda));
19
+ }
20
+ else {
21
+ return await this.repository.findAndCount();
22
+ }
23
+ }
24
+ catch (error) {
25
+ console.log('Error en la consulta mandando valores por defecto');
26
+ return await this.repository.findAndCount();
27
+ throw new common_1.InternalServerErrorException('Error on fetch document');
28
+ }
29
+ }
30
+ async crearIndice(config) {
31
+ try {
32
+ return await this.repository
33
+ .createCollectionIndex(config.fieldOrSpec, config.options);
34
+ }
35
+ catch (error) {
36
+ console.error({
37
+ error,
38
+ mensaje: 'maybe the index already exist'
39
+ });
40
+ throw new common_1.BadRequestException(error);
41
+ }
42
+ }
43
+ }
44
+ exports.PrincipalMongoService = PrincipalMongoService;
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbmNpcGFsLW1vbmdvLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3ByaW5jaXBhbC1tb25nby5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJEQUF1RDtBQUV2RCwyQ0FBbUY7QUFHbkYsTUFBYSxxQkFBK0IsU0FBUSxvQ0FBeUI7SUFFM0UsWUFDa0IsVUFBOEIsRUFDdEMsV0FBK0MsRUFDdkQsT0FBYSxFQUNiLGlCQUEwQixFQUMxQixRQUFpQixJQUFJO1FBRXJCLEtBQUssQ0FDSCxVQUFVLEVBQ1YsT0FBTyxFQUNQLGlCQUFpQixFQUNqQixLQUFLLENBQ04sQ0FBQztRQVhjLGVBQVUsR0FBVixVQUFVLENBQW9CO1FBQ3RDLGdCQUFXLEdBQVgsV0FBVyxDQUFvQztRQVd2RCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQ2hDLElBQUksQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDbEIsa0JBQWtCLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLEVBQUUsSUFBSSxDQUNuRCxDQUNGLENBQUMsS0FBSyxDQUNMLEdBQUcsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FDbEIsOENBQThDLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLEVBQ3hFLEdBQUcsQ0FDSixDQUNGLENBQUM7U0FDSDtJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsUUFBUSxDQUFDLGdCQUF3QjtRQUNyQyxJQUFJO1lBQ0YsSUFBSSxnQkFBZ0IsRUFBQztnQkFDbkIsT0FBTyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO2FBQ3pFO2lCQUFNO2dCQUNMLE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxDQUFDO2FBQzdDO1NBQ0Y7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLE9BQU8sQ0FBQyxHQUFHLENBQUMsbURBQW1ELENBQUMsQ0FBQztZQUNqRSxPQUFPLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUM1QyxNQUFNLElBQUkscUNBQTRCLENBQUMseUJBQXlCLENBQUMsQ0FBQztTQUNuRTtJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsV0FBVyxDQUFDLE1BQXlDO1FBQ3pELElBQUk7WUFDRixPQUFPLE1BQU0sSUFBSSxDQUFDLFVBQVU7aUJBQ3pCLHFCQUFxQixDQUNwQixNQUFNLENBQUMsV0FBVyxFQUNsQixNQUFNLENBQUMsT0FBTyxDQUNmLENBQUM7U0FDTDtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsT0FBTyxDQUFDLEtBQUssQ0FBQztnQkFDWixLQUFLO2dCQUNMLE9BQU8sRUFBRSwrQkFBK0I7YUFDekMsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxJQUFJLDRCQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3RDO0lBQ0gsQ0FBQztDQUNGO0FBMURELHNEQTBEQyJ9