@manticore-labs/nest 0.1.0 → 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.
Files changed (197) hide show
  1. package/.idea/workspace.xml +25 -19
  2. package/README.md +1 -0
  3. package/build/main/index.d.ts +27 -0
  4. package/build/main/index.js +30 -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/modulos-configuracion/mlab-swagger/constantes/constantes.d.ts +2 -0
  59. package/build/main/lib/modulos-configuracion/mlab-swagger/constantes/constantes.js +6 -0
  60. package/build/main/lib/modulos-configuracion/mlab-swagger/constantes/esquemas-genericos.d.ts +43 -0
  61. package/build/main/lib/modulos-configuracion/mlab-swagger/constantes/esquemas-genericos.js +59 -0
  62. package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/arreglo.d.ts +2 -0
  63. package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/arreglo.js +9 -0
  64. package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/booleano.d.ts +2 -0
  65. package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/booleano.js +9 -0
  66. package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/caracter.d.ts +2 -0
  67. package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/caracter.js +9 -0
  68. package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/decimal.d.ts +2 -0
  69. package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/decimal.js +9 -0
  70. package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/delegador/delegador-decorador.d.ts +2 -0
  71. package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/delegador/delegador-decorador.js +19 -0
  72. package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/entero.d.ts +2 -0
  73. package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/entero.js +9 -0
  74. package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/objeto.d.ts +2 -0
  75. package/build/main/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/objeto.js +9 -0
  76. package/build/main/lib/modulos-configuracion/mlab-swagger/interfaces/plantilla.interface.d.ts +65 -0
  77. package/build/main/lib/modulos-configuracion/mlab-swagger/interfaces/plantilla.interface.js +3 -0
  78. package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger-core.module.d.ts +4 -0
  79. package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger-core.module.js +40 -0
  80. package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger-helper.d.ts +13 -0
  81. package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger-helper.js +86 -0
  82. package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger.module.d.ts +7 -0
  83. package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger.module.js +33 -0
  84. package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger.service.d.ts +5 -0
  85. package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger.service.js +71 -0
  86. package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger.store.d.ts +11 -0
  87. package/build/main/lib/modulos-configuracion/mlab-swagger/mlab-swagger.store.js +48 -0
  88. package/build/main/lib/mongo-configuracion-indice.interface.d.ts +5 -0
  89. package/build/main/lib/mongo-configuracion-indice.interface.js +3 -0
  90. package/build/main/lib/principal-mongo.controller.d.ts +11 -0
  91. package/build/main/lib/principal-mongo.controller.js +82 -0
  92. package/build/main/lib/principal-mongo.service.d.ts +10 -0
  93. package/build/main/lib/principal-mongo.service.js +45 -0
  94. package/build/main/lib/principal.controller.d.ts +13 -12
  95. package/build/main/lib/principal.controller.js +1 -1
  96. package/build/main/lib/principal.http.service.d.ts +13 -0
  97. package/build/main/lib/principal.http.service.js +26 -0
  98. package/build/main/lib/principal.service.d.ts +16 -5
  99. package/build/main/lib/principal.service.js +83 -2
  100. package/build/module/index.d.ts +27 -0
  101. package/build/module/index.js +30 -1
  102. package/build/module/lib/auth0/auth0.service.d.ts +7 -3
  103. package/build/module/lib/auth0/auth0.service.js +24 -3
  104. package/build/module/lib/decoradores/dto/validadores-or-and/esTipo.d.ts +3 -0
  105. package/build/module/lib/decoradores/dto/validadores-or-and/esTipo.js +35 -0
  106. package/build/module/lib/decoradores/dto/validadores-or-and/interfaces.d.ts +12 -0
  107. package/build/module/lib/decoradores/dto/validadores-or-and/interfaces.js +1 -0
  108. package/build/module/lib/decoradores/mlab-swagger/constantes.js +4 -2
  109. package/build/module/lib/decoradores/mlab-swagger/interfaces.d.ts +15 -2
  110. package/build/module/lib/funciones-util/typeorm/valor-esta-dentro-del-arreglo.js +7 -2
  111. package/build/module/lib/google-cloud/google-cloud-vision-api/constants.d.ts +1 -0
  112. package/build/module/lib/google-cloud/google-cloud-vision-api/constants.js +2 -0
  113. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api-principal.module.d.ts +5 -0
  114. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api-principal.module.js +52 -0
  115. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.helper.d.ts +3 -0
  116. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.helper.js +5 -0
  117. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.module.d.ts +2 -0
  118. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.module.js +26 -0
  119. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.service.d.ts +26 -0
  120. package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.service.js +88 -0
  121. package/build/module/lib/google-cloud/google-cloud-vision-api/interfaces/texto-imagen.interface.d.ts +6 -0
  122. package/build/module/lib/google-cloud/google-cloud-vision-api/interfaces/texto-imagen.interface.js +1 -0
  123. package/build/module/lib/modulos-configuracion/base-datos/base-datos.core.module.d.ts +6 -0
  124. package/build/module/lib/modulos-configuracion/base-datos/base-datos.core.module.js +68 -0
  125. package/build/module/lib/modulos-configuracion/base-datos/base-datos.helper.d.ts +10 -0
  126. package/build/module/lib/modulos-configuracion/base-datos/base-datos.helper.js +150 -0
  127. package/build/module/lib/modulos-configuracion/base-datos/base-datos.module.d.ts +7 -0
  128. package/build/module/lib/modulos-configuracion/base-datos/base-datos.module.js +27 -0
  129. package/build/module/lib/modulos-configuracion/base-datos/base-datos.service.d.ts +13 -0
  130. package/build/module/lib/modulos-configuracion/base-datos/base-datos.service.js +111 -0
  131. package/build/module/lib/modulos-configuracion/base-datos/constantes.d.ts +2 -0
  132. package/build/module/lib/modulos-configuracion/base-datos/constantes.js +3 -0
  133. package/build/module/lib/modulos-configuracion/base-datos/excepciones/creacion.exception.d.ts +9 -0
  134. package/build/module/lib/modulos-configuracion/base-datos/excepciones/creacion.exception.js +18 -0
  135. package/build/module/lib/modulos-configuracion/base-datos/excepciones/vacio.exception.d.ts +5 -0
  136. package/build/module/lib/modulos-configuracion/base-datos/excepciones/vacio.exception.js +9 -0
  137. package/build/module/lib/modulos-configuracion/base-datos/excepciones/validacion.exception.d.ts +6 -0
  138. package/build/module/lib/modulos-configuracion/base-datos/excepciones/validacion.exception.js +7 -0
  139. package/build/module/lib/modulos-configuracion/base-datos/funciones/guardar-tree-lugar.d.ts +3 -0
  140. package/build/module/lib/modulos-configuracion/base-datos/funciones/guardar-tree-lugar.js +30 -0
  141. package/build/module/lib/modulos-configuracion/base-datos/interfaces/conexion-base-datos.interface.d.ts +12 -0
  142. package/build/module/lib/modulos-configuracion/base-datos/interfaces/conexion-base-datos.interface.js +1 -0
  143. package/build/module/lib/modulos-configuracion/base-datos/interfaces/configuracion-bd.interface.d.ts +11 -0
  144. package/build/module/lib/modulos-configuracion/base-datos/interfaces/configuracion-bd.interface.js +1 -0
  145. package/build/module/lib/modulos-configuracion/base-datos/interfaces/entidades.interface.d.ts +8 -0
  146. package/build/module/lib/modulos-configuracion/base-datos/interfaces/entidades.interface.js +1 -0
  147. package/build/module/lib/modulos-configuracion/base-datos/interfaces/entorno-configuracion.interface.d.ts +28 -0
  148. package/build/module/lib/modulos-configuracion/base-datos/interfaces/entorno-configuracion.interface.js +1 -0
  149. package/build/module/lib/modulos-configuracion/base-datos/interfaces/meta-dato-prueba.interface.d.ts +22 -0
  150. package/build/module/lib/modulos-configuracion/base-datos/interfaces/meta-dato-prueba.interface.js +1 -0
  151. package/build/module/lib/modulos-configuracion/base-datos/interfaces/respuesta-validacion.interface.d.ts +24 -0
  152. package/build/module/lib/modulos-configuracion/base-datos/interfaces/respuesta-validacion.interface.js +1 -0
  153. package/build/module/lib/modulos-configuracion/base-datos/store/datos-prueba.storage.d.ts +6 -0
  154. package/build/module/lib/modulos-configuracion/base-datos/store/datos-prueba.storage.js +10 -0
  155. package/build/module/lib/modulos-configuracion/mlab-swagger/constantes/constantes.d.ts +2 -0
  156. package/build/module/lib/modulos-configuracion/mlab-swagger/constantes/constantes.js +3 -0
  157. package/build/module/lib/modulos-configuracion/mlab-swagger/constantes/esquemas-genericos.d.ts +43 -0
  158. package/build/module/lib/modulos-configuracion/mlab-swagger/constantes/esquemas-genericos.js +56 -0
  159. package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/arreglo.d.ts +2 -0
  160. package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/arreglo.js +5 -0
  161. package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/booleano.d.ts +2 -0
  162. package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/booleano.js +5 -0
  163. package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/caracter.d.ts +2 -0
  164. package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/caracter.js +5 -0
  165. package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/decimal.d.ts +2 -0
  166. package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/decimal.js +5 -0
  167. package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/delegador/delegador-decorador.d.ts +2 -0
  168. package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/delegador/delegador-decorador.js +18 -0
  169. package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/entero.d.ts +2 -0
  170. package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/entero.js +5 -0
  171. package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/objeto.d.ts +2 -0
  172. package/build/module/lib/modulos-configuracion/mlab-swagger/decoradores/atributos/objeto.js +5 -0
  173. package/build/module/lib/modulos-configuracion/mlab-swagger/interfaces/plantilla.interface.d.ts +65 -0
  174. package/build/module/lib/modulos-configuracion/mlab-swagger/interfaces/plantilla.interface.js +1 -0
  175. package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger-core.module.d.ts +4 -0
  176. package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger-core.module.js +37 -0
  177. package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger-helper.d.ts +13 -0
  178. package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger-helper.js +126 -0
  179. package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger.module.d.ts +7 -0
  180. package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger.module.js +33 -0
  181. package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger.service.d.ts +5 -0
  182. package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger.service.js +86 -0
  183. package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger.store.d.ts +11 -0
  184. package/build/module/lib/modulos-configuracion/mlab-swagger/mlab-swagger.store.js +46 -0
  185. package/build/module/lib/mongo-configuracion-indice.interface.d.ts +5 -0
  186. package/build/module/lib/mongo-configuracion-indice.interface.js +1 -0
  187. package/build/module/lib/principal-mongo.controller.d.ts +11 -0
  188. package/build/module/lib/principal-mongo.controller.js +78 -0
  189. package/build/module/lib/principal-mongo.service.d.ts +10 -0
  190. package/build/module/lib/principal-mongo.service.js +41 -0
  191. package/build/module/lib/principal.controller.d.ts +13 -12
  192. package/build/module/lib/principal.controller.js +1 -1
  193. package/build/module/lib/principal.http.service.d.ts +13 -0
  194. package/build/module/lib/principal.http.service.js +22 -0
  195. package/build/module/lib/principal.service.d.ts +16 -5
  196. package/build/module/lib/principal.service.js +85 -4
  197. package/package.json +8 -5
@@ -0,0 +1,35 @@
1
+ import { registerDecorator } from 'class-validator';
2
+ export function EsTipo(estrategiaDeValidacionTipos, paraTodo, argsDic, opcionesValidacion) {
3
+ const estrategiasValidacion = Object.keys(estrategiaDeValidacionTipos);
4
+ const tieneArgumentosDiccionario = !!(argsDic && Object.keys(argsDic).length > 0);
5
+ return function (objecto, nombrePropiedad) {
6
+ registerDecorator({
7
+ name: 'incorrectType',
8
+ target: objecto.constructor,
9
+ propertyName: nombrePropiedad,
10
+ options: opcionesValidacion,
11
+ validator: {
12
+ validate(value) {
13
+ const validacionGeneralCB = (estrategia) => {
14
+ const parametros = tieneArgumentosDiccionario ? argsDic[estrategia] : undefined;
15
+ const callback = estrategiaDeValidacionTipos[estrategia];
16
+ return callback(value, parametros);
17
+ };
18
+ if (paraTodo) {
19
+ return estrategiasValidacion.every(validacionGeneralCB);
20
+ }
21
+ else {
22
+ return estrategiasValidacion.some(validacionGeneralCB);
23
+ }
24
+ },
25
+ defaultMessage() {
26
+ const ultimoTipo = estrategiasValidacion.pop();
27
+ if (estrategiasValidacion.length === 0)
28
+ return `El valor debe ser ${ultimoTipo}`;
29
+ return `Puede ser solo ${estrategiasValidacion.join(', ')} ${paraTodo ? 'y' : 'o'} ${ultimoTipo}.`;
30
+ }
31
+ }
32
+ });
33
+ };
34
+ }
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNUaXBvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9kZWNvcmFkb3Jlcy9kdG8vdmFsaWRhZG9yZXMtb3ItYW5kL2VzVGlwby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsaUJBQWlCLEVBQW9CLE1BQU0saUJBQWlCLENBQUM7QUFFckUsTUFBTSxVQUFVLE1BQU0sQ0FDbEIsMkJBQTJDLEVBQzNDLFFBQWtCLEVBQ2xCLE9BQXlDLEVBQ3pDLGtCQUFzQztJQUV0QyxNQUFNLHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUN2RSxNQUFNLDBCQUEwQixHQUFHLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUVsRixPQUFPLFVBQ0gsT0FBZSxFQUNmLGVBQXVCO1FBRXZCLGlCQUFpQixDQUNiO1lBQ0ksSUFBSSxFQUFFLGVBQWU7WUFDckIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxXQUFXO1lBQzNCLFlBQVksRUFBRSxlQUFlO1lBQzdCLE9BQU8sRUFBRSxrQkFBa0I7WUFDM0IsU0FBUyxFQUFFO2dCQUNQLFFBQVEsQ0FBQyxLQUFVO29CQUNmLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxVQUFrQixFQUFFLEVBQUU7d0JBQy9DLE1BQU0sVUFBVSxHQUFHLDBCQUEwQixDQUFDLENBQUMsQ0FBRSxPQUFlLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQzt3QkFDekYsTUFBTSxRQUFRLEdBQXVCLDJCQUEyQixDQUFDLFVBQVUsQ0FBQyxDQUFDO3dCQUM3RSxPQUFPLFFBQVEsQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7b0JBQ3ZDLENBQUMsQ0FBQTtvQkFDRCxJQUFJLFFBQVEsRUFBRTt3QkFDVixPQUFPLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFBO3FCQUMxRDt5QkFBTTt3QkFDSCxPQUFPLHFCQUFxQixDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO3FCQUMxRDtnQkFDTCxDQUFDO2dCQUNELGNBQWM7b0JBQ1YsTUFBTSxVQUFVLEdBQUcscUJBQXFCLENBQUMsR0FBRyxFQUFFLENBQUM7b0JBQy9DLElBQUkscUJBQXFCLENBQUMsTUFBTSxLQUFLLENBQUM7d0JBQ2xDLE9BQU8scUJBQXFCLFVBQVUsRUFBRSxDQUFDO29CQUM3QyxPQUFPLGtCQUFrQixxQkFBcUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxVQUFVLEdBQUcsQ0FBQztnQkFDdkcsQ0FBQzthQUNKO1NBQ0osQ0FDSixDQUFDO0lBQ04sQ0FBQyxDQUFBO0FBQ0wsQ0FBQyJ9
@@ -0,0 +1,12 @@
1
+ import { ValidationArguments } from 'class-validator';
2
+ export interface HasMap {
3
+ [key: string]: any;
4
+ }
5
+ export declare type ValidationFunction = (value: any, ...args: any[]) => boolean;
6
+ export interface ColeccionTipos {
7
+ [k: string]: ValidationFunction;
8
+ }
9
+ export declare type ValidadorTipo = Array<keyof ColeccionTipos>;
10
+ export declare type ArgumentosValidacionTipos<T = ColeccionTipos> = {
11
+ [k in keyof T]: HasMap | ValidationArguments;
12
+ };
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZGVjb3JhZG9yZXMvZHRvL3ZhbGlkYWRvcmVzLW9yLWFuZC9pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
@@ -3,7 +3,9 @@ export const NOMBRE_METODOS_CRUD_API = {
3
3
  update: 'update',
4
4
  delete: 'delete',
5
5
  findOne: 'findOne',
6
- findAll: 'findAll'
6
+ findAll: 'findAll',
7
+ findFull: 'findFull',
8
+ find: 'find',
7
9
  };
8
10
  export const BODY_METADATA_DEFECTO = {
9
11
  type: String,
@@ -16,4 +18,4 @@ export const OPCIONES_QUERY_POR_DEFECTO = {
16
18
  export const OPCIONES_HEADER_DEFECTO = {
17
19
  name: '',
18
20
  };
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZGVjb3JhZG9yZXMvbWxhYi1zd2FnZ2VyL2NvbnN0YW50ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQWU7SUFDakQsTUFBTSxFQUFFLFFBQVE7SUFDaEIsTUFBTSxFQUFFLFFBQVE7SUFDaEIsTUFBTSxFQUFFLFFBQVE7SUFDaEIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsT0FBTyxFQUFFLFNBQVM7Q0FDbkIsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFvQjtJQUNwRCxJQUFJLEVBQUUsTUFBTTtJQUNaLFFBQVEsRUFBRSxJQUFJO0NBQ2YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFvQjtJQUN6RCxJQUFJLEVBQUUsRUFBRTtJQUNSLFFBQVEsRUFBRSxJQUFJO0NBQ2YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUE4QjtJQUNoRSxJQUFJLEVBQUUsRUFBRTtDQUNULENBQUMifQ==
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZGVjb3JhZG9yZXMvbWxhYi1zd2FnZ2VyL2NvbnN0YW50ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQWU7SUFDakQsTUFBTSxFQUFFLFFBQVE7SUFDaEIsTUFBTSxFQUFFLFFBQVE7SUFDaEIsTUFBTSxFQUFFLFFBQVE7SUFDaEIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsUUFBUSxFQUFFLFVBQVU7SUFDcEIsSUFBSSxFQUFFLE1BQU07Q0FDYixDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQW9CO0lBQ3BELElBQUksRUFBRSxNQUFNO0lBQ1osUUFBUSxFQUFFLElBQUk7Q0FDZixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQW9CO0lBQ3pELElBQUksRUFBRSxFQUFFO0lBQ1IsUUFBUSxFQUFFLElBQUk7Q0FDZixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQThCO0lBQ2hFLElBQUksRUFBRSxFQUFFO0NBQ1QsQ0FBQyJ9
@@ -8,21 +8,34 @@ export interface OperacionesCrud {
8
8
  delete?: any;
9
9
  findOne?: any;
10
10
  findAll?: any;
11
+ findFull?: any;
12
+ find?: any;
11
13
  }
12
- export interface MetodosCrudInterface extends OperacionesCrud {
14
+ export interface MetodosCrudServicioInterface extends OperacionesCrud {
15
+ create: (...args: any[]) => any;
16
+ update: (...args: any[]) => any;
17
+ delete: (...args: any[]) => any;
18
+ findOne: (...args: any[]) => any;
19
+ findAll?: (...args: any[]) => any;
20
+ findFull?: (...args: any[]) => any;
21
+ find?: (...args: any[]) => any;
22
+ }
23
+ export interface MetodosCrudControllersInterface extends OperacionesCrud {
13
24
  create: (criterioBusqueda: any, req: any, res: any, ...args: any[]) => any;
14
25
  update: (id: any, registroAActualizar: any, req: any, res: any, ...args: any[]) => any;
15
26
  delete: (nuevoRegistro: any, req: any, res: any, ...args: any[]) => any;
16
27
  findOne: (id: any, req: any, res: any, ...args: any[]) => any;
17
28
  findAll: (criterioBusqueda: any, req: any, res: any, ...args: any[]) => any;
29
+ findFull?: (criterioBusqueda: any, req: any, res: any, ...args: any[]) => any;
18
30
  }
19
- export declare type MetodoCrud = keyof MetodosCrudInterface;
31
+ export declare type MetodoCrud = keyof MetodosCrudControllersInterface;
20
32
  export interface CrudApiDocConfigInterface extends OperacionesCrud {
21
33
  create?: CreateUpdateOneConfigInterface;
22
34
  update?: CreateUpdateOneConfigInterface;
23
35
  findAll?: BaseConfig;
24
36
  delete?: BaseConfig;
25
37
  findOne?: BaseConfig;
38
+ findFull?: BaseConfig;
26
39
  }
27
40
  export interface BaseConfig {
28
41
  headers?: ApiHeaderOptions[];
@@ -10,10 +10,15 @@ export function ValorEstaDentroDeArreglo(property, validationOptions) {
10
10
  validator: {
11
11
  validate(value, args) {
12
12
  const arreglo = args.constraints[0];
13
- return arreglo.some((valorEnArreglo) => valorEnArreglo === value);
13
+ return arreglo.some((valorEnArreglo) => {
14
+ if (value === 0 && valorEnArreglo === 0) {
15
+ return true;
16
+ }
17
+ return valorEnArreglo === value;
18
+ });
14
19
  }
15
20
  }
16
21
  });
17
22
  };
18
23
  }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsb3ItZXN0YS1kZW50cm8tZGVsLWFycmVnbG8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2Z1bmNpb25lcy11dGlsL3R5cGVvcm0vdmFsb3ItZXN0YS1kZW50cm8tZGVsLWFycmVnbG8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUF5QyxNQUFNLGlCQUFpQixDQUFDO0FBRTFGLE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxRQUFlLEVBQUUsaUJBQXFDO0lBQzNGLE9BQU8sVUFBVSxNQUFjLEVBQUUsWUFBb0I7UUFDakQsaUJBQWlCLENBQUM7WUFDZCxJQUFJLEVBQUUsMEJBQTBCO1lBQ2hDLE1BQU0sRUFBRSxNQUFNLENBQUMsV0FBVztZQUMxQixZQUFZLEVBQUUsWUFBWTtZQUMxQixXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUM7WUFDdkIsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixTQUFTLEVBQUU7Z0JBQ1AsUUFBUSxDQUFDLEtBQVUsRUFBRSxJQUF5QjtvQkFDMUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDcEMsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsY0FBYyxFQUFFLEVBQUUsQ0FBQyxjQUFjLEtBQUssS0FBSyxDQUFDLENBQUM7Z0JBQ3RFLENBQUM7YUFDSjtTQUNKLENBQUMsQ0FBQztJQUNQLENBQUMsQ0FBQztBQUNOLENBQUMifQ==
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsb3ItZXN0YS1kZW50cm8tZGVsLWFycmVnbG8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2Z1bmNpb25lcy11dGlsL3R5cGVvcm0vdmFsb3ItZXN0YS1kZW50cm8tZGVsLWFycmVnbG8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUF5QyxNQUFNLGlCQUFpQixDQUFDO0FBRTFGLE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxRQUFlLEVBQUUsaUJBQXFDO0lBQzNGLE9BQU8sVUFBVSxNQUFjLEVBQUUsWUFBb0I7UUFDakQsaUJBQWlCLENBQUM7WUFDZCxJQUFJLEVBQUUsMEJBQTBCO1lBQ2hDLE1BQU0sRUFBRSxNQUFNLENBQUMsV0FBVztZQUMxQixZQUFZLEVBQUUsWUFBWTtZQUMxQixXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUM7WUFDdkIsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixTQUFTLEVBQUU7Z0JBQ1AsUUFBUSxDQUFDLEtBQVUsRUFBRSxJQUF5QjtvQkFDMUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDcEMsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUNmLENBQUMsY0FBYyxFQUFFLEVBQUU7d0JBQ2YsSUFBSSxLQUFLLEtBQUssQ0FBQyxJQUFJLGNBQWMsS0FBSyxDQUFDLEVBQUU7NEJBQ3JDLE9BQU8sSUFBSSxDQUFBO3lCQUNkO3dCQUNELE9BQU8sY0FBYyxLQUFLLEtBQUssQ0FBQztvQkFDcEMsQ0FBQyxDQUFDLENBQUM7Z0JBQ1gsQ0FBQzthQUNKO1NBQ0osQ0FBQyxDQUFDO0lBQ1AsQ0FBQyxDQUFDO0FBQ04sQ0FBQyJ9
@@ -0,0 +1 @@
1
+ export declare const GCP_VISION_API_CLIENT = "GCP_VISION_API_CLIENT";
@@ -0,0 +1,2 @@
1
+ export const GCP_VISION_API_CLIENT = 'GCP_VISION_API_CLIENT';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9nb29nbGUtY2xvdWQvZ29vZ2xlLWNsb3VkLXZpc2lvbi1hcGkvY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLHVCQUF1QixDQUFDIn0=
@@ -0,0 +1,5 @@
1
+ import { DynamicModule } from '@nestjs/common';
2
+ export declare class GoogleCloudVisionApiPrincipalModule {
3
+ static register(): DynamicModule;
4
+ private static get inyectarYObtenerProviders();
5
+ }
@@ -0,0 +1,52 @@
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 GoogleCloudVisionApiPrincipalModule_1;
8
+ import { Module } from '@nestjs/common';
9
+ import { GCP_VISION_API_CLIENT } from './constants';
10
+ import { GoogleCloudVisionApiService } from './google-cloud-vision-api.service';
11
+ import { ImageAnnotatorClient } from '@google-cloud/vision';
12
+ let GoogleCloudVisionApiPrincipalModule = GoogleCloudVisionApiPrincipalModule_1 = class GoogleCloudVisionApiPrincipalModule {
13
+ static register() {
14
+ return {
15
+ module: GoogleCloudVisionApiPrincipalModule_1,
16
+ providers: [
17
+ ...this.inyectarYObtenerProviders,
18
+ ],
19
+ exports: [
20
+ ...this.inyectarYObtenerProviders,
21
+ ]
22
+ };
23
+ }
24
+ static get inyectarYObtenerProviders() {
25
+ const clienteV = new ImageAnnotatorClient();
26
+ const injeccionDelClienteGPC = {
27
+ provide: GCP_VISION_API_CLIENT,
28
+ useValue: clienteV,
29
+ };
30
+ const injeccionDelServicio = {
31
+ provide: GoogleCloudVisionApiService,
32
+ useFactory: (cliente) => new GoogleCloudVisionApiService(cliente),
33
+ inject: [GCP_VISION_API_CLIENT]
34
+ };
35
+ return [
36
+ injeccionDelClienteGPC,
37
+ injeccionDelServicio,
38
+ ];
39
+ }
40
+ };
41
+ GoogleCloudVisionApiPrincipalModule = GoogleCloudVisionApiPrincipalModule_1 = __decorate([
42
+ Module({
43
+ providers: [
44
+ GoogleCloudVisionApiService
45
+ ],
46
+ exports: [
47
+ GoogleCloudVisionApiService
48
+ ]
49
+ })
50
+ ], GoogleCloudVisionApiPrincipalModule);
51
+ export { GoogleCloudVisionApiPrincipalModule };
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLWNsb3VkLXZpc2lvbi1hcGktcHJpbmNpcGFsLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZ29vZ2xlLWNsb3VkL2dvb2dsZS1jbG91ZC12aXNpb24tYXBpL2dvb2dsZS1jbG91ZC12aXNpb24tYXBpLXByaW5jaXBhbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLE9BQU8sRUFBaUIsTUFBTSxFQUFZLE1BQU0sZ0JBQWdCLENBQUM7QUFDakUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBWTFELElBQWEsbUNBQW1DLDJDQUFoRCxNQUFhLG1DQUFtQztJQUU5QyxNQUFNLENBQUMsUUFBUTtRQUNiLE9BQVE7WUFDTixNQUFNLEVBQUUscUNBQW1DO1lBQzNDLFNBQVMsRUFBRTtnQkFDVCxHQUFHLElBQUksQ0FBQyx5QkFBeUI7YUFDbEM7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsR0FBRyxJQUFJLENBQUMseUJBQXlCO2FBQ2xDO1NBQ0YsQ0FBQTtJQUNILENBQUM7SUFFTyxNQUFNLEtBQUsseUJBQXlCO1FBQzFDLE1BQU0sUUFBUSxHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztRQUU1QyxNQUFNLHNCQUFzQixHQUFhO1lBQ3ZDLE9BQU8sRUFBRSxxQkFBcUI7WUFDOUIsUUFBUSxFQUFFLFFBQVE7U0FDbkIsQ0FBQTtRQUNELE1BQU0sb0JBQW9CLEdBQWE7WUFDckMsT0FBTyxFQUFFLDJCQUEyQjtZQUNwQyxVQUFVLEVBQUUsQ0FBQyxPQUFZLEVBQUUsRUFBRSxDQUFDLElBQUksMkJBQTJCLENBQUMsT0FBTyxDQUFDO1lBQ3RFLE1BQU0sRUFBRSxDQUFDLHFCQUFxQixDQUFDO1NBQ2hDLENBQUM7UUFDRixPQUFPO1lBQ0wsc0JBQXNCO1lBQ3RCLG9CQUFvQjtTQUNyQixDQUFBO0lBQ0gsQ0FBQztDQUNGLENBQUE7QUEvQlksbUNBQW1DO0lBVi9DLE1BQU0sQ0FDTDtRQUNFLFNBQVMsRUFBRTtZQUNULDJCQUEyQjtTQUM1QjtRQUNELE9BQU8sRUFBRTtZQUNQLDJCQUEyQjtTQUM1QjtLQUNGLENBQ0Y7R0FDWSxtQ0FBbUMsQ0ErQi9DO1NBL0JZLG1DQUFtQyJ9
@@ -0,0 +1,3 @@
1
+ export declare class GoogleCloudVisionApiHelper {
2
+ static construirProviders(): void;
3
+ }
@@ -0,0 +1,5 @@
1
+ export class GoogleCloudVisionApiHelper {
2
+ static construirProviders() {
3
+ }
4
+ }
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLWNsb3VkLXZpc2lvbi1hcGkuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9nb29nbGUtY2xvdWQvZ29vZ2xlLWNsb3VkLXZpc2lvbi1hcGkvZ29vZ2xlLWNsb3VkLXZpc2lvbi1hcGkuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTywwQkFBMEI7SUFDckMsTUFBTSxDQUFDLGtCQUFrQjtJQUV6QixDQUFDO0NBQ0YifQ==
@@ -0,0 +1,2 @@
1
+ export declare class GoogleCloudVisionApiModule {
2
+ }
@@ -0,0 +1,26 @@
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
+ import { Module } from '@nestjs/common';
8
+ import { GoogleCloudVisionApiService } from './google-cloud-vision-api.service';
9
+ import { GoogleCloudVisionApiPrincipalModule } from './google-cloud-vision-api-principal.module';
10
+ let GoogleCloudVisionApiModule = class GoogleCloudVisionApiModule {
11
+ };
12
+ GoogleCloudVisionApiModule = __decorate([
13
+ Module({
14
+ imports: [
15
+ GoogleCloudVisionApiPrincipalModule.register()
16
+ ],
17
+ providers: [
18
+ GoogleCloudVisionApiService
19
+ ],
20
+ exports: [
21
+ GoogleCloudVisionApiService
22
+ ]
23
+ })
24
+ ], GoogleCloudVisionApiModule);
25
+ export { GoogleCloudVisionApiModule };
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLWNsb3VkLXZpc2lvbi1hcGkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9nb29nbGUtY2xvdWQvZ29vZ2xlLWNsb3VkLXZpc2lvbi1hcGkvZ29vZ2xlLWNsb3VkLXZpc2lvbi1hcGkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQWdCakcsSUFBYSwwQkFBMEIsR0FBdkMsTUFBYSwwQkFBMEI7Q0FDdEMsQ0FBQTtBQURZLDBCQUEwQjtJQWJ0QyxNQUFNLENBQ0w7UUFDRSxPQUFPLEVBQUU7WUFDUCxtQ0FBbUMsQ0FBQyxRQUFRLEVBQUU7U0FDL0M7UUFDRCxTQUFTLEVBQUU7WUFDVCwyQkFBMkI7U0FDNUI7UUFDRCxPQUFPLEVBQUU7WUFDUCwyQkFBMkI7U0FDNUI7S0FDRixDQUNGO0dBQ1ksMEJBQTBCLENBQ3RDO1NBRFksMEJBQTBCIn0=
@@ -0,0 +1,26 @@
1
+ /// <reference types="node" />
2
+ import { ImageAnnotatorClient } from '@google-cloud/vision/build/src/v1/image_annotator_client';
3
+ import { google } from '@google-cloud/vision/build/protos/protos';
4
+ import { TextoImagenInterface } from './interfaces/texto-imagen.interface';
5
+ import { LROperation } from 'google-gax';
6
+ import * as protos from '@google-cloud/vision/build/protos/protos';
7
+ import IEntityAnnotation = google.cloud.vision.v1.IEntityAnnotation;
8
+ import ITextAnnotation = google.cloud.vision.v1.ITextAnnotation;
9
+ import ISafeSearchAnnotation = google.cloud.vision.v1.ISafeSearchAnnotation;
10
+ import ILocalizedObjectAnnotation = google.cloud.vision.v1.ILocalizedObjectAnnotation;
11
+ import IImageProperties = google.cloud.vision.v1.IImageProperties;
12
+ import IFaceAnnotation = google.cloud.vision.v1.IFaceAnnotation;
13
+ export declare class GoogleCloudVisionApiService {
14
+ private cliente;
15
+ constructor(cliente: ImageAnnotatorClient);
16
+ detectarEtiquetas(peticionUri: string | Buffer): Promise<IEntityAnnotation[]>;
17
+ detectarRostros(peticionUri: string | Buffer): Promise<IFaceAnnotation[]>;
18
+ obtenerPropiedades(peticionUri: string | Buffer): Promise<IImageProperties>;
19
+ detectarLandmarks(peticionUri: string | Buffer): Promise<IEntityAnnotation[]>;
20
+ detectarLogos(peticionUri: string | Buffer): Promise<IEntityAnnotation[]>;
21
+ detectarMultiplesObjetos(peticionUri: string | Buffer): Promise<ILocalizedObjectAnnotation[]>;
22
+ detectarContenidoExplicito(peticionUri: string | Buffer): Promise<ISafeSearchAnnotation>;
23
+ detectarTextoEnImagenes(peticionUri: string | Buffer): Promise<IEntityAnnotation[]>;
24
+ detectarTextoManuscritoEnImagenes(peticionUri: string | Buffer): Promise<ITextAnnotation>;
25
+ detectarTextoEnArchivosPDF(configuracion: TextoImagenInterface): Promise<[LROperation<protos.google.cloud.vision.v1.IAsyncBatchAnnotateFilesResponse, protos.google.cloud.vision.v1.IOperationMetadata>, protos.google.longrunning.IOperation | undefined, {} | undefined]>;
26
+ }
@@ -0,0 +1,88 @@
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 __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { Inject, Injectable } from '@nestjs/common';
14
+ import { GCP_VISION_API_CLIENT } from './constants';
15
+ import { ImageAnnotatorClient } from '@google-cloud/vision/build/src/v1/image_annotator_client';
16
+ let GoogleCloudVisionApiService = class GoogleCloudVisionApiService {
17
+ constructor(cliente) {
18
+ this.cliente = cliente;
19
+ }
20
+ async detectarEtiquetas(peticionUri) {
21
+ const [resultados] = await this.cliente.labelDetection(peticionUri);
22
+ return resultados.labelAnnotations;
23
+ }
24
+ async detectarRostros(peticionUri) {
25
+ const [resultados] = await this.cliente.faceDetection(peticionUri);
26
+ return resultados.faceAnnotations;
27
+ }
28
+ async obtenerPropiedades(peticionUri) {
29
+ const [resultados] = await this.cliente.imageProperties(peticionUri);
30
+ return resultados.imagePropertiesAnnotation;
31
+ }
32
+ async detectarLandmarks(peticionUri) {
33
+ const [resultados] = await this.cliente.landmarkDetection(peticionUri);
34
+ return resultados.landmarkAnnotations;
35
+ }
36
+ async detectarLogos(peticionUri) {
37
+ const [resultados] = await this.cliente.logoDetection(peticionUri);
38
+ return resultados.logoAnnotations;
39
+ }
40
+ async detectarMultiplesObjetos(peticionUri) {
41
+ const [resultados] = await this.cliente.objectLocalization(peticionUri);
42
+ return resultados.localizedObjectAnnotations;
43
+ }
44
+ async detectarContenidoExplicito(peticionUri) {
45
+ const [resultados] = await this.cliente.safeSearchDetection(peticionUri);
46
+ return resultados.safeSearchAnnotation;
47
+ }
48
+ async detectarTextoEnImagenes(peticionUri) {
49
+ const [resultados] = await this.cliente.textDetection(peticionUri);
50
+ return resultados.textAnnotations;
51
+ }
52
+ async detectarTextoManuscritoEnImagenes(peticionUri) {
53
+ const [resultados] = await this.cliente.documentTextDetection(peticionUri);
54
+ return resultados.fullTextAnnotation;
55
+ }
56
+ async detectarTextoEnArchivosPDF(configuracion) {
57
+ const gcsDestinationUri = `gs://${configuracion.nombreBucket}/${configuracion.prefijo}/`;
58
+ const inputConfig = {
59
+ mimeType: 'application/pdf',
60
+ gcsSource: {
61
+ uri: configuracion.rutaArchivo,
62
+ },
63
+ };
64
+ const outputConfig = {
65
+ gcsDestination: {
66
+ uri: gcsDestinationUri,
67
+ },
68
+ };
69
+ const features = [{ type: 'DOCUMENT_TEXT_DETECTION' }];
70
+ const peticion = {
71
+ requests: [
72
+ {
73
+ inputConfig: inputConfig,
74
+ features,
75
+ outputConfig: outputConfig,
76
+ },
77
+ ],
78
+ };
79
+ return await this.cliente.asyncBatchAnnotateFiles(peticion);
80
+ }
81
+ };
82
+ GoogleCloudVisionApiService = __decorate([
83
+ Injectable(),
84
+ __param(0, Inject(GCP_VISION_API_CLIENT)),
85
+ __metadata("design:paramtypes", [ImageAnnotatorClient])
86
+ ], GoogleCloudVisionApiService);
87
+ export { GoogleCloudVisionApiService };
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLWNsb3VkLXZpc2lvbi1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZ29vZ2xlLWNsb3VkL2dvb2dsZS1jbG91ZC12aXNpb24tYXBpL2dvb2dsZS1jbG91ZC12aXNpb24tYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFlaEcsSUFBYSwyQkFBMkIsR0FBeEMsTUFBYSwyQkFBMkI7SUFDdEMsWUFFVSxPQUE2QjtRQUE3QixZQUFPLEdBQVAsT0FBTyxDQUFzQjtJQUd2QyxDQUFDO0lBRUQsS0FBSyxDQUFDLGlCQUFpQixDQUFDLFdBQTRCO1FBRWxELE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3BFLE9BQU8sVUFBVSxDQUFDLGdCQUFnQixDQUFDO0lBQ3JDLENBQUM7SUFFRCxLQUFLLENBQUMsZUFBZSxDQUFDLFdBQTRCO1FBRWhELE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25FLE9BQU8sVUFBVSxDQUFDLGVBQWUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsS0FBSyxDQUFDLGtCQUFrQixDQUFDLFdBQTRCO1FBRW5ELE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3JFLE9BQU8sVUFBVSxDQUFDLHlCQUF5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
@@ -0,0 +1,6 @@
1
+ export interface TextoImagenInterface {
2
+ nombreBucket?: string;
3
+ prefijo?: string;
4
+ rutaArchivo: string;
5
+ carpetaDestinoResultados: string;
6
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dG8taW1hZ2VuLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZ29vZ2xlLWNsb3VkL2dvb2dsZS1jbG91ZC12aXNpb24tYXBpL2ludGVyZmFjZXMvdGV4dG8taW1hZ2VuLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -0,0 +1,6 @@
1
+ import { DynamicModule } from '@nestjs/common';
2
+ import { ConfiguracionBdInterface } from './interfaces/configuracion-bd.interface';
3
+ export declare class BaseDatosCoreModule {
4
+ static registrar(configuracion: ConfiguracionBdInterface): DynamicModule;
5
+ private static obtenerDependencias;
6
+ }
@@ -0,0 +1,68 @@
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 BaseDatosCoreModule_1;
8
+ import { Global, Module } from '@nestjs/common';
9
+ import { ENV_CONFIG, META_DATOS_PRUEBA } from './constantes';
10
+ import { BaseDatosService } from './base-datos.service';
11
+ import { TypeOrmModule } from '@nestjs/typeorm';
12
+ import { DatosPruebaStorage } from './store/datos-prueba.storage';
13
+ let BaseDatosCoreModule = BaseDatosCoreModule_1 = class BaseDatosCoreModule {
14
+ static registrar(configuracion) {
15
+ configuracion.datosPrueba = {
16
+ datosPrueba: [
17
+ ...DatosPruebaStorage.configuraciones,
18
+ ],
19
+ };
20
+ const injeccionConstante = {
21
+ useValue: configuracion.datosPrueba,
22
+ provide: META_DATOS_PRUEBA,
23
+ };
24
+ const injeccionEntorno = {
25
+ useValue: configuracion.configuracionEntorno,
26
+ provide: ENV_CONFIG,
27
+ };
28
+ const dependencias = BaseDatosCoreModule_1
29
+ .obtenerDependencias(configuracion.bdConfiguracion);
30
+ return {
31
+ module: BaseDatosCoreModule_1,
32
+ imports: [
33
+ ...dependencias,
34
+ ],
35
+ providers: [
36
+ injeccionConstante,
37
+ injeccionEntorno,
38
+ BaseDatosService,
39
+ ],
40
+ exports: [
41
+ injeccionConstante,
42
+ injeccionEntorno,
43
+ BaseDatosService,
44
+ ...dependencias,
45
+ ],
46
+ };
47
+ }
48
+ static obtenerDependencias(bds) {
49
+ const configuracionesConexiones = Object.values(bds);
50
+ const dependencias = configuracionesConexiones.map(conf => TypeOrmModule.forRoot(conf));
51
+ return [
52
+ ...dependencias,
53
+ ];
54
+ }
55
+ };
56
+ BaseDatosCoreModule = BaseDatosCoreModule_1 = __decorate([
57
+ Global(),
58
+ Module({
59
+ providers: [
60
+ BaseDatosService,
61
+ ],
62
+ exports: [
63
+ BaseDatosService,
64
+ ],
65
+ })
66
+ ], BaseDatosCoreModule);
67
+ export { BaseDatosCoreModule };
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kYXRvcy5jb3JlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbW9kdWxvcy1jb25maWd1cmFjaW9uL2Jhc2UtZGF0b3MvYmFzZS1kYXRvcy5jb3JlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsT0FBTyxFQUFnQixNQUFNLEVBQUUsTUFBTSxFQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkUsT0FBTyxFQUFDLFVBQVUsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUMzRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFOUMsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFhaEUsSUFBYSxtQkFBbUIsMkJBQWhDLE1BQWEsbUJBQW1CO0lBRTVCLE1BQU0sQ0FBQyxTQUFTLENBQUMsYUFBdUM7UUFDcEQsYUFBYSxDQUFDLFdBQVcsR0FBRztZQUN4QixXQUFXLEVBQUU7Z0JBQ1QsR0FBRyxrQkFBa0IsQ0FBQyxlQUFlO2FBQ3hDO1NBQ0osQ0FBQztRQUNGLE1BQU0sa0JBQWtCLEdBQWE7WUFDakMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxXQUFXO1lBQ25DLE9BQU8sRUFBRSxpQkFBaUI7U0FDN0IsQ0FBQztRQUNGLE1BQU0sZ0JBQWdCLEdBQWE7WUFDL0IsUUFBUSxFQUFFLGFBQWEsQ0FBQyxvQkFBb0I7WUFDNUMsT0FBTyxFQUFFLFVBQVU7U0FDdEIsQ0FBQztRQUNGLE1BQU0sWUFBWSxHQUFHLHFCQUFtQjthQUNuQyxtQkFBbUIsQ0FDaEIsYUFBYSxDQUFDLGVBQWUsQ0FDaEMsQ0FBQztRQUNOLE9BQU87WUFDSCxNQUFNLEVBQUUscUJBQW1CO1lBQzNCLE9BQU8sRUFBRTtnQkFDTCxHQUFHLFlBQVk7YUFDbEI7WUFDRCxTQUFTLEVBQUU7Z0JBQ1Asa0JBQWtCO2dCQUNsQixnQkFBZ0I7Z0JBQ2hCLGdCQUFnQjthQUNuQjtZQUNELE9BQU8sRUFBRTtnQkFDTCxrQkFBa0I7Z0JBQ2xCLGdCQUFnQjtnQkFDaEIsZ0JBQWdCO2dCQUNoQixHQUFHLFlBQVk7YUFDbEI7U0FDSixDQUFDO0lBQ04sQ0FBQztJQUVPLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxHQUErQjtRQUM5RCxNQUFNLHlCQUF5QixHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckQsTUFBTSxZQUFZLEdBQUcseUJBQXlCLENBQUMsR0FBRyxDQUM5QyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQ3RDLENBQUM7UUFDRixPQUFPO1lBQ0gsR0FBRyxZQUFZO1NBQ2xCLENBQUM7SUFDTixDQUFDO0NBQ0osQ0FBQTtBQWhEWSxtQkFBbUI7SUFYL0IsTUFBTSxFQUFFO0lBQ1IsTUFBTSxDQUNIO1FBQ0ksU0FBUyxFQUFFO1lBQ1AsZ0JBQWdCO1NBQ25CO1FBQ0QsT0FBTyxFQUFFO1lBQ0wsZ0JBQWdCO1NBQ25CO0tBQ0osQ0FDSjtHQUNZLG1CQUFtQixDQWdEL0I7U0FoRFksbUJBQW1CIn0=
@@ -0,0 +1,10 @@
1
+ import { RespuestaCreacionInterface, RespuestaValidacionInterface } from './interfaces/respuesta-validacion.interface';
2
+ import { MongoRepository, Repository } from 'typeorm';
3
+ import { EstrategiaArbol, EstrategiaArbolDefault } from './interfaces/meta-dato-prueba.interface';
4
+ import { PrincipalDto } from '../../principal.dto';
5
+ export declare class BaseDatosHelper {
6
+ static leerArchivo(ruta: string): any;
7
+ static crearDatosRepositorio(repositorio: Repository<any>, rutaDatos: string, dto: any, esMongo?: boolean): Promise<RespuestaCreacionInterface>;
8
+ static validarDTOEnLote(registros: any[], dto: any): Promise<RespuestaValidacionInterface>;
9
+ static guardarEnArbol(rutaArchivo: string, guardarArbol: EstrategiaArbol | EstrategiaArbolDefault, repositorio: Repository<any> | MongoRepository<any>, dto: typeof PrincipalDto): Promise<RespuestaCreacionInterface>;
10
+ }
@@ -0,0 +1,150 @@
1
+ import { plainToClass } from 'class-transformer';
2
+ import { validate } from 'class-validator';
3
+ import { readFileSync } from 'fs';
4
+ import { CreacionException } from './excepciones/creacion.exception';
5
+ import { guardarEnArbolDefecto } from './funciones/guardar-tree-lugar';
6
+ import { join } from 'path';
7
+ import { ValidacionException } from './excepciones/validacion.exception';
8
+ import { VacioException } from './excepciones/vacio.exception';
9
+ export class BaseDatosHelper {
10
+ static leerArchivo(ruta) {
11
+ const path = join(__dirname, '../../../../../../../../src', ruta);
12
+ const registros = JSON.parse(readFileSync(path, 'utf-8').toString());
13
+ const estaVacio = registros.length === 0;
14
+ if (estaVacio) {
15
+ throw new VacioException('La lista de datos esta vacia');
16
+ }
17
+ return registros;
18
+ }
19
+ // Metodo principal que lee el archivo, valida e inserta los datos en la bdd
20
+ static async crearDatosRepositorio(repositorio, rutaDatos, dto, esMongo) {
21
+ // se encera la respuesta general de creacion
22
+ const respuesta = {
23
+ creacionDatos: { estado: true, novedades: [] },
24
+ estado: true,
25
+ lecturaArchivo: { estado: true, novedades: [], path: rutaDatos },
26
+ validacionDatos: { estado: true, novedades: [] },
27
+ };
28
+ let registrosParseados;
29
+ // Se obtienen los datos parseados
30
+ try {
31
+ registrosParseados = BaseDatosHelper.leerArchivo(rutaDatos);
32
+ }
33
+ catch (error) {
34
+ // Si ocurre un error en la lectura del archivo se modifica el objeto
35
+ // y se lanza la excepcion
36
+ respuesta.estado = false;
37
+ respuesta.lecturaArchivo.estado = false;
38
+ respuesta.lecturaArchivo.novedades = error;
39
+ respuesta.lecturaArchivo.path = rutaDatos;
40
+ throw new CreacionException(respuesta);
41
+ }
42
+ // Validacion de datos
43
+ let respuestaValidacion;
44
+ try {
45
+ respuestaValidacion = await BaseDatosHelper.validarDTOEnLote(registrosParseados, dto);
46
+ respuesta.validacionDatos = respuestaValidacion;
47
+ }
48
+ catch (error) {
49
+ respuesta.validacionDatos = error;
50
+ respuesta.estado = false;
51
+ throw new CreacionException(respuesta);
52
+ }
53
+ // Insercion de datos en el repositorio
54
+ try {
55
+ if (esMongo) {
56
+ await repositorio.insertMany(registrosParseados);
57
+ }
58
+ else {
59
+ await repositorio.save(registrosParseados);
60
+ }
61
+ }
62
+ catch (error) {
63
+ respuesta.creacionDatos.estado = false;
64
+ respuesta.creacionDatos.novedades = error;
65
+ throw new CreacionException(respuesta);
66
+ }
67
+ return respuesta;
68
+ }
69
+ static async validarDTOEnLote(registros, dto) {
70
+ const respuesta = {
71
+ novedades: [],
72
+ estado: true,
73
+ };
74
+ for (const registro of registros) {
75
+ if (registro.id) {
76
+ delete registro.id;
77
+ }
78
+ const registroParseado = plainToClass(dto, registro);
79
+ let errores = [];
80
+ try {
81
+ errores = await validate(registroParseado);
82
+ }
83
+ catch (error) {
84
+ const novedad = {
85
+ registro,
86
+ errores: error,
87
+ };
88
+ respuesta.novedades.push(novedad);
89
+ respuesta.estado = false;
90
+ }
91
+ const tieneErrores = errores.length > 0;
92
+ if (tieneErrores) {
93
+ const novedad = {
94
+ registro,
95
+ errores,
96
+ };
97
+ respuesta.novedades.push(novedad);
98
+ respuesta.estado = false;
99
+ throw new ValidacionException(respuesta);
100
+ }
101
+ }
102
+ return respuesta;
103
+ }
104
+ static async guardarEnArbol(rutaArchivo, guardarArbol, repositorio, dto) {
105
+ const respuesta = {
106
+ creacionDatos: { estado: true, novedades: [] },
107
+ estado: true,
108
+ lecturaArchivo: { estado: true, novedades: [], path: rutaArchivo },
109
+ validacionDatos: { estado: true, novedades: [] },
110
+ };
111
+ let registrosParseados;
112
+ try {
113
+ registrosParseados = BaseDatosHelper.leerArchivo(rutaArchivo);
114
+ }
115
+ catch (error) {
116
+ respuesta.lecturaArchivo.estado = false;
117
+ respuesta.lecturaArchivo.novedades = error;
118
+ throw new CreacionException(respuesta);
119
+ }
120
+ let respuestaValidacion;
121
+ try {
122
+ respuestaValidacion = await BaseDatosHelper.validarDTOEnLote(registrosParseados, dto);
123
+ respuesta.validacionDatos = respuestaValidacion;
124
+ }
125
+ catch (error) {
126
+ respuesta.validacionDatos = error;
127
+ respuesta.estado = false;
128
+ throw new CreacionException(respuesta);
129
+ }
130
+ try {
131
+ const tieneCBDefecto = !(typeof guardarArbol === 'function');
132
+ if (tieneCBDefecto) {
133
+ guardarArbol = guardarArbol;
134
+ const nombrePadre = guardarArbol.nombreAtributoPadre;
135
+ await guardarEnArbolDefecto(registrosParseados, repositorio, nombrePadre);
136
+ }
137
+ else {
138
+ await guardarArbol(registrosParseados, repositorio);
139
+ }
140
+ }
141
+ catch (error) {
142
+ respuesta.creacionDatos.estado = false;
143
+ respuesta.creacionDatos.novedades = error;
144
+ respuesta.estado = false;
145
+ throw new CreacionException(respuesta);
146
+ }
147
+ return respuesta;
148
+ }
149
+ }
150
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kYXRvcy5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL21vZHVsb3MtY29uZmlndXJhY2lvbi9iYXNlLWRhdG9zL2Jhc2UtZGF0b3MuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFLekMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLElBQUksQ0FBQztBQUVoQyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNyRSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzFCLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBRXZFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUc3RCxNQUFNLE9BQU8sZUFBZTtJQUN4QixNQUFNLENBQUMsV0FBVyxDQUFDLElBQVk7UUFDM0IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSw2QkFBNkIsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNsRSxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUN4QixZQUFZLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUN6QyxDQUFDO1FBQ0YsTUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7UUFDekMsSUFBSSxTQUFTLEVBQUU7WUFDWCxNQUFNLElBQUksY0FBYyxDQUFDLDhCQUE4QixDQUFDLENBQUM7U0FDNUQ7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNyQixDQUFDO0lBRUQsNEVBQTRFO0lB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