@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.
- package/.idea/workspace.xml +44 -23
- package/README.md +1 -0
- package/build/main/index.d.ts +19 -0
- package/build/main/index.js +20 -1
- package/build/main/lib/auth0/auth0.service.d.ts +7 -3
- package/build/main/lib/auth0/auth0.service.js +24 -3
- package/build/main/lib/decoradores/dto/validadores-or-and/esTipo.d.ts +3 -0
- package/build/main/lib/decoradores/dto/validadores-or-and/esTipo.js +39 -0
- package/build/main/lib/decoradores/dto/validadores-or-and/interfaces.d.ts +12 -0
- package/build/main/lib/decoradores/dto/validadores-or-and/interfaces.js +3 -0
- package/build/main/lib/decoradores/mlab-swagger/constantes.js +4 -2
- package/build/main/lib/decoradores/mlab-swagger/interfaces.d.ts +15 -2
- package/build/main/lib/funciones-util/typeorm/valor-esta-dentro-del-arreglo.js +7 -2
- package/build/main/lib/google-cloud/google-cloud-vision-api/constants.d.ts +1 -0
- package/build/main/lib/google-cloud/google-cloud-vision-api/constants.js +5 -0
- package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api-principal.module.d.ts +5 -0
- package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api-principal.module.js +55 -0
- package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.helper.d.ts +3 -0
- package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.helper.js +9 -0
- package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.module.d.ts +2 -0
- package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.module.js +29 -0
- package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.service.d.ts +26 -0
- package/build/main/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.service.js +91 -0
- package/build/main/lib/google-cloud/google-cloud-vision-api/interfaces/texto-imagen.interface.d.ts +6 -0
- package/build/main/lib/google-cloud/google-cloud-vision-api/interfaces/texto-imagen.interface.js +3 -0
- package/build/main/lib/modulos-configuracion/base-datos/base-datos.core.module.d.ts +6 -0
- package/build/main/lib/modulos-configuracion/base-datos/base-datos.core.module.js +71 -0
- package/build/main/lib/modulos-configuracion/base-datos/base-datos.helper.d.ts +10 -0
- package/build/main/lib/modulos-configuracion/base-datos/base-datos.helper.js +154 -0
- package/build/main/lib/modulos-configuracion/base-datos/base-datos.module.d.ts +7 -0
- package/build/main/lib/modulos-configuracion/base-datos/base-datos.module.js +30 -0
- package/build/main/lib/modulos-configuracion/base-datos/base-datos.service.d.ts +13 -0
- package/build/main/lib/modulos-configuracion/base-datos/base-datos.service.js +114 -0
- package/build/main/lib/modulos-configuracion/base-datos/constantes.d.ts +2 -0
- package/build/main/lib/modulos-configuracion/base-datos/constantes.js +6 -0
- package/build/main/lib/modulos-configuracion/base-datos/excepciones/creacion.exception.d.ts +9 -0
- package/build/main/lib/modulos-configuracion/base-datos/excepciones/creacion.exception.js +22 -0
- package/build/main/lib/modulos-configuracion/base-datos/excepciones/vacio.exception.d.ts +5 -0
- package/build/main/lib/modulos-configuracion/base-datos/excepciones/vacio.exception.js +13 -0
- package/build/main/lib/modulos-configuracion/base-datos/excepciones/validacion.exception.d.ts +6 -0
- package/build/main/lib/modulos-configuracion/base-datos/excepciones/validacion.exception.js +11 -0
- package/build/main/lib/modulos-configuracion/base-datos/funciones/guardar-tree-lugar.d.ts +3 -0
- package/build/main/lib/modulos-configuracion/base-datos/funciones/guardar-tree-lugar.js +34 -0
- package/build/main/lib/modulos-configuracion/base-datos/interfaces/conexion-base-datos.interface.d.ts +12 -0
- package/build/main/lib/modulos-configuracion/base-datos/interfaces/conexion-base-datos.interface.js +3 -0
- package/build/main/lib/modulos-configuracion/base-datos/interfaces/configuracion-bd.interface.d.ts +11 -0
- package/build/main/lib/modulos-configuracion/base-datos/interfaces/configuracion-bd.interface.js +3 -0
- package/build/main/lib/modulos-configuracion/base-datos/interfaces/entidades.interface.d.ts +8 -0
- package/build/main/lib/modulos-configuracion/base-datos/interfaces/entidades.interface.js +3 -0
- package/build/main/lib/modulos-configuracion/base-datos/interfaces/entorno-configuracion.interface.d.ts +28 -0
- package/build/main/lib/modulos-configuracion/base-datos/interfaces/entorno-configuracion.interface.js +3 -0
- package/build/main/lib/modulos-configuracion/base-datos/interfaces/meta-dato-prueba.interface.d.ts +22 -0
- package/build/main/lib/modulos-configuracion/base-datos/interfaces/meta-dato-prueba.interface.js +3 -0
- package/build/main/lib/modulos-configuracion/base-datos/interfaces/respuesta-validacion.interface.d.ts +24 -0
- package/build/main/lib/modulos-configuracion/base-datos/interfaces/respuesta-validacion.interface.js +3 -0
- package/build/main/lib/modulos-configuracion/base-datos/store/datos-prueba.storage.d.ts +6 -0
- package/build/main/lib/modulos-configuracion/base-datos/store/datos-prueba.storage.js +14 -0
- package/build/main/lib/mongo-configuracion-indice.interface.d.ts +5 -0
- package/build/main/lib/mongo-configuracion-indice.interface.js +3 -0
- package/build/main/lib/principal-mongo.controller.d.ts +11 -0
- package/build/main/lib/principal-mongo.controller.js +82 -0
- package/build/main/lib/principal-mongo.service.d.ts +10 -0
- package/build/main/lib/principal-mongo.service.js +45 -0
- package/build/main/lib/principal.controller.d.ts +13 -12
- package/build/main/lib/principal.controller.js +1 -1
- package/build/main/lib/principal.http.service.d.ts +13 -0
- package/build/main/lib/principal.http.service.js +26 -0
- package/build/main/lib/principal.service.d.ts +16 -5
- package/build/main/lib/principal.service.js +83 -2
- package/build/module/index.d.ts +19 -0
- package/build/module/index.js +20 -1
- package/build/module/lib/auth0/auth0.service.d.ts +7 -3
- package/build/module/lib/auth0/auth0.service.js +24 -3
- package/build/module/lib/decoradores/dto/validadores-or-and/esTipo.d.ts +3 -0
- package/build/module/lib/decoradores/dto/validadores-or-and/esTipo.js +35 -0
- package/build/module/lib/decoradores/dto/validadores-or-and/interfaces.d.ts +12 -0
- package/build/module/lib/decoradores/dto/validadores-or-and/interfaces.js +1 -0
- package/build/module/lib/decoradores/mlab-swagger/constantes.js +4 -2
- package/build/module/lib/decoradores/mlab-swagger/interfaces.d.ts +15 -2
- package/build/module/lib/funciones-util/typeorm/valor-esta-dentro-del-arreglo.js +7 -2
- package/build/module/lib/google-cloud/google-cloud-vision-api/constants.d.ts +1 -0
- package/build/module/lib/google-cloud/google-cloud-vision-api/constants.js +2 -0
- package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api-principal.module.d.ts +5 -0
- package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api-principal.module.js +52 -0
- package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.helper.d.ts +3 -0
- package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.helper.js +5 -0
- package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.module.d.ts +2 -0
- package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.module.js +26 -0
- package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.service.d.ts +26 -0
- package/build/module/lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.service.js +88 -0
- package/build/module/lib/google-cloud/google-cloud-vision-api/interfaces/texto-imagen.interface.d.ts +6 -0
- package/build/module/lib/google-cloud/google-cloud-vision-api/interfaces/texto-imagen.interface.js +1 -0
- package/build/module/lib/modulos-configuracion/base-datos/base-datos.core.module.d.ts +6 -0
- package/build/module/lib/modulos-configuracion/base-datos/base-datos.core.module.js +68 -0
- package/build/module/lib/modulos-configuracion/base-datos/base-datos.helper.d.ts +10 -0
- package/build/module/lib/modulos-configuracion/base-datos/base-datos.helper.js +150 -0
- package/build/module/lib/modulos-configuracion/base-datos/base-datos.module.d.ts +7 -0
- package/build/module/lib/modulos-configuracion/base-datos/base-datos.module.js +27 -0
- package/build/module/lib/modulos-configuracion/base-datos/base-datos.service.d.ts +13 -0
- package/build/module/lib/modulos-configuracion/base-datos/base-datos.service.js +111 -0
- package/build/module/lib/modulos-configuracion/base-datos/constantes.d.ts +2 -0
- package/build/module/lib/modulos-configuracion/base-datos/constantes.js +3 -0
- package/build/module/lib/modulos-configuracion/base-datos/excepciones/creacion.exception.d.ts +9 -0
- package/build/module/lib/modulos-configuracion/base-datos/excepciones/creacion.exception.js +18 -0
- package/build/module/lib/modulos-configuracion/base-datos/excepciones/vacio.exception.d.ts +5 -0
- package/build/module/lib/modulos-configuracion/base-datos/excepciones/vacio.exception.js +9 -0
- package/build/module/lib/modulos-configuracion/base-datos/excepciones/validacion.exception.d.ts +6 -0
- package/build/module/lib/modulos-configuracion/base-datos/excepciones/validacion.exception.js +7 -0
- package/build/module/lib/modulos-configuracion/base-datos/funciones/guardar-tree-lugar.d.ts +3 -0
- package/build/module/lib/modulos-configuracion/base-datos/funciones/guardar-tree-lugar.js +30 -0
- package/build/module/lib/modulos-configuracion/base-datos/interfaces/conexion-base-datos.interface.d.ts +12 -0
- package/build/module/lib/modulos-configuracion/base-datos/interfaces/conexion-base-datos.interface.js +1 -0
- package/build/module/lib/modulos-configuracion/base-datos/interfaces/configuracion-bd.interface.d.ts +11 -0
- package/build/module/lib/modulos-configuracion/base-datos/interfaces/configuracion-bd.interface.js +1 -0
- package/build/module/lib/modulos-configuracion/base-datos/interfaces/entidades.interface.d.ts +8 -0
- package/build/module/lib/modulos-configuracion/base-datos/interfaces/entidades.interface.js +1 -0
- package/build/module/lib/modulos-configuracion/base-datos/interfaces/entorno-configuracion.interface.d.ts +28 -0
- package/build/module/lib/modulos-configuracion/base-datos/interfaces/entorno-configuracion.interface.js +1 -0
- package/build/module/lib/modulos-configuracion/base-datos/interfaces/meta-dato-prueba.interface.d.ts +22 -0
- package/build/module/lib/modulos-configuracion/base-datos/interfaces/meta-dato-prueba.interface.js +1 -0
- package/build/module/lib/modulos-configuracion/base-datos/interfaces/respuesta-validacion.interface.d.ts +24 -0
- package/build/module/lib/modulos-configuracion/base-datos/interfaces/respuesta-validacion.interface.js +1 -0
- package/build/module/lib/modulos-configuracion/base-datos/store/datos-prueba.storage.d.ts +6 -0
- package/build/module/lib/modulos-configuracion/base-datos/store/datos-prueba.storage.js +10 -0
- package/build/module/lib/mongo-configuracion-indice.interface.d.ts +5 -0
- package/build/module/lib/mongo-configuracion-indice.interface.js +1 -0
- package/build/module/lib/principal-mongo.controller.d.ts +11 -0
- package/build/module/lib/principal-mongo.controller.js +78 -0
- package/build/module/lib/principal-mongo.service.d.ts +10 -0
- package/build/module/lib/principal-mongo.service.js +41 -0
- package/build/module/lib/principal.controller.d.ts +13 -12
- package/build/module/lib/principal.controller.js +1 -1
- package/build/module/lib/principal.http.service.d.ts +13 -0
- package/build/module/lib/principal.http.service.js +22 -0
- package/build/module/lib/principal.service.d.ts +16 -5
- package/build/module/lib/principal.service.js +85 -4
- package/package.json +8 -5
package/.idea/workspace.xml
CHANGED
|
@@ -6,9 +6,6 @@
|
|
|
6
6
|
<component name="ChangeListManager">
|
|
7
7
|
<list default="true" id="3cc62c2f-2436-4bac-9d17-6fb9079f080d" name="Default Changelist" comment="">
|
|
8
8
|
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
|
9
|
-
<change beforePath="$PROJECT_DIR$/package-lock.json" beforeDir="false" />
|
|
10
|
-
<change beforePath="$PROJECT_DIR$/package.json" beforeDir="false" afterPath="$PROJECT_DIR$/package.json" afterDir="false" />
|
|
11
|
-
<change beforePath="$PROJECT_DIR$/src/lib/principal.service.ts" beforeDir="false" afterPath="$PROJECT_DIR$/src/lib/principal.service.ts" afterDir="false" />
|
|
12
9
|
</list>
|
|
13
10
|
<option name="SHOW_DIALOG" value="false" />
|
|
14
11
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
|
@@ -25,6 +22,7 @@
|
|
|
25
22
|
</component>
|
|
26
23
|
<component name="PropertiesComponent">
|
|
27
24
|
<property name="RunOnceActivity.OpenProjectViewOnStart" value="true" />
|
|
25
|
+
<property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
|
|
28
26
|
<property name="SHARE_PROJECT_CONFIGURATION_FILES" value="true" />
|
|
29
27
|
<property name="WebServerToolWindowFactoryState" value="false" />
|
|
30
28
|
<property name="last_opened_file_path" value="$PROJECT_DIR$" />
|
|
@@ -35,7 +33,19 @@
|
|
|
35
33
|
<property name="prettierjs.PrettierConfiguration.Package" value="D:\Gitlab\npm\manticore-labs-nest\node_modules\prettier" />
|
|
36
34
|
<property name="ts.external.directory.path" value="$PROJECT_DIR$/node_modules/typescript/lib" />
|
|
37
35
|
</component>
|
|
38
|
-
<component name="
|
|
36
|
+
<component name="ServiceViewManager">
|
|
37
|
+
<option name="viewStates">
|
|
38
|
+
<list>
|
|
39
|
+
<serviceView>
|
|
40
|
+
<treeState>
|
|
41
|
+
<expand />
|
|
42
|
+
<select />
|
|
43
|
+
</treeState>
|
|
44
|
+
</serviceView>
|
|
45
|
+
</list>
|
|
46
|
+
</option>
|
|
47
|
+
</component>
|
|
48
|
+
<component name="SpellCheckerSettings" BundledDictionaries="0" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" Dictionaries="0" CorrectionsLimit="5" DefaultDictionary="application-level" UseSingleDictionary="true" />
|
|
39
49
|
<component name="SvnConfiguration">
|
|
40
50
|
<configuration />
|
|
41
51
|
</component>
|
|
@@ -53,60 +63,71 @@
|
|
|
53
63
|
<workItem from="1582059472197" duration="733000" />
|
|
54
64
|
<workItem from="1595970985840" duration="602000" />
|
|
55
65
|
<workItem from="1595972277525" duration="1968000" />
|
|
56
|
-
<workItem from="1596216767075" duration="
|
|
57
|
-
<workItem from="
|
|
66
|
+
<workItem from="1596216767075" duration="11394000" />
|
|
67
|
+
<workItem from="1596502537995" duration="1402000" />
|
|
68
|
+
<workItem from="1596647615046" duration="14434000" />
|
|
69
|
+
<workItem from="1596696816215" duration="513000" />
|
|
70
|
+
<workItem from="1598994833707" duration="243000" />
|
|
58
71
|
</task>
|
|
59
72
|
<servers />
|
|
60
73
|
</component>
|
|
61
74
|
<component name="TypeScriptGeneratedFilesManager">
|
|
62
|
-
<option name="version" value="
|
|
75
|
+
<option name="version" value="1" />
|
|
63
76
|
</component>
|
|
64
77
|
<component name="Vcs.Log.Tabs.Properties">
|
|
65
78
|
<option name="TAB_STATES">
|
|
66
79
|
<map>
|
|
67
80
|
<entry key="MAIN">
|
|
68
81
|
<value>
|
|
69
|
-
<State
|
|
82
|
+
<State>
|
|
83
|
+
<option name="COLUMN_ORDER" />
|
|
84
|
+
</State>
|
|
70
85
|
</value>
|
|
71
86
|
</entry>
|
|
72
87
|
</map>
|
|
73
88
|
</option>
|
|
74
|
-
<option name="oldMeFiltersMigrated" value="true" />
|
|
75
89
|
</component>
|
|
76
90
|
<component name="WindowStateProjectService">
|
|
77
|
-
<state x="
|
|
78
|
-
<screen x="
|
|
91
|
+
<state x="1960" y="268" width="550" height="496" key="#TSLint" timestamp="1595971586649">
|
|
92
|
+
<screen x="1280" y="0" width="1920" height="1080" />
|
|
79
93
|
</state>
|
|
80
|
-
<state x="680" y="307" key="#TSLint/0.27.1920.1130/1920.0.1920.1200@0.27.1920.1130" timestamp="1596298421913" />
|
|
81
94
|
<state x="1960" y="268" width="550" height="496" key="#TSLint/0.28.1280.952/1280.0.1920.1080@1280.0.1920.1080" timestamp="1595971586649" />
|
|
82
95
|
<state x="332" y="296" width="606" height="412" key="#com.intellij.fileTypes.FileTypeChooser" timestamp="1596217818604">
|
|
83
96
|
<screen x="0" y="28" width="1280" height="952" />
|
|
84
97
|
</state>
|
|
85
98
|
<state x="332" y="296" width="606" height="412" key="#com.intellij.fileTypes.FileTypeChooser/0.28.1280.952/1280.0.1920.1080@0.28.1280.952" timestamp="1596217818604" />
|
|
86
|
-
<state width="
|
|
99
|
+
<state x="2076" y="259" width="374" height="560" key="#com.intellij.ide.util.MemberChooser" timestamp="1596654979851">
|
|
100
|
+
<screen x="1280" y="0" width="1920" height="1080" />
|
|
101
|
+
</state>
|
|
102
|
+
<state x="2076" y="259" width="374" height="560" key="#com.intellij.ide.util.MemberChooser/56.28.1224.996/1280.0.1920.1080@1280.0.1920.1080" timestamp="1596654979851" />
|
|
103
|
+
<state x="2001" y="289" width="524" height="500" key="#com.intellij.refactoring.safeDelete.UnsafeUsagesDialog" timestamp="1596655255973">
|
|
104
|
+
<screen x="1280" y="0" width="1920" height="1080" />
|
|
105
|
+
</state>
|
|
106
|
+
<state x="2001" y="289" width="524" height="500" key="#com.intellij.refactoring.safeDelete.UnsafeUsagesDialog/56.28.1224.996/1280.0.1920.1080@1280.0.1920.1080" timestamp="1596655255973" />
|
|
107
|
+
<state width="1897" height="350" key="GridCell.Tab.0.bottom" timestamp="1596234979449">
|
|
87
108
|
<screen x="1280" y="0" width="1920" height="1080" />
|
|
88
109
|
</state>
|
|
89
|
-
<state width="1897" height="
|
|
90
|
-
<state width="1897" height="
|
|
110
|
+
<state width="1897" height="350" key="GridCell.Tab.0.bottom/0.28.1280.952/1280.0.1920.1080@1280.0.1920.1080" timestamp="1596234979449" />
|
|
111
|
+
<state width="1897" height="350" key="GridCell.Tab.0.center" timestamp="1596234979448">
|
|
91
112
|
<screen x="1280" y="0" width="1920" height="1080" />
|
|
92
113
|
</state>
|
|
93
|
-
<state width="1897" height="
|
|
94
|
-
<state width="1897" height="
|
|
114
|
+
<state width="1897" height="350" key="GridCell.Tab.0.center/0.28.1280.952/1280.0.1920.1080@1280.0.1920.1080" timestamp="1596234979448" />
|
|
115
|
+
<state width="1897" height="350" key="GridCell.Tab.0.left" timestamp="1596234979448">
|
|
95
116
|
<screen x="1280" y="0" width="1920" height="1080" />
|
|
96
117
|
</state>
|
|
97
|
-
<state width="1897" height="
|
|
98
|
-
<state width="1897" height="
|
|
118
|
+
<state width="1897" height="350" key="GridCell.Tab.0.left/0.28.1280.952/1280.0.1920.1080@1280.0.1920.1080" timestamp="1596234979448" />
|
|
119
|
+
<state width="1897" height="350" key="GridCell.Tab.0.right" timestamp="1596234979448">
|
|
99
120
|
<screen x="1280" y="0" width="1920" height="1080" />
|
|
100
121
|
</state>
|
|
101
|
-
<state width="1897" height="
|
|
122
|
+
<state width="1897" height="350" key="GridCell.Tab.0.right/0.28.1280.952/1280.0.1920.1080@1280.0.1920.1080" timestamp="1596234979448" />
|
|
102
123
|
<state x="297" y="176" width="676" height="651" key="com.intellij.openapi.editor.actions.MultiplePasteAction$ClipboardContentChooser" timestamp="1596217249617">
|
|
103
124
|
<screen x="0" y="28" width="1280" height="952" />
|
|
104
125
|
</state>
|
|
105
126
|
<state x="297" y="176" width="676" height="651" key="com.intellij.openapi.editor.actions.MultiplePasteAction$ClipboardContentChooser/0.28.1280.952/1280.0.1920.1080@0.28.1280.952" timestamp="1596217249617" />
|
|
106
|
-
<state x="
|
|
107
|
-
<screen x="
|
|
127
|
+
<state x="1735" y="235" width="1008" height="770" key="search.everywhere.popup" timestamp="1596653523011">
|
|
128
|
+
<screen x="1280" y="0" width="1920" height="1080" />
|
|
108
129
|
</state>
|
|
109
|
-
<state x="455" y="273" width="1008" height="805" key="search.everywhere.popup/0.27.1920.1130/1920.0.1920.1200@0.27.1920.1130" timestamp="1596298437575" />
|
|
110
130
|
<state x="303" y="235" width="672" height="678" key="search.everywhere.popup/0.28.1280.952/1280.0.1920.1080@0.28.1280.952" timestamp="1596216913180" />
|
|
131
|
+
<state x="1735" y="235" width="1008" height="770" key="search.everywhere.popup/56.28.1224.996/1280.0.1920.1080@1280.0.1920.1080" timestamp="1596653523011" />
|
|
111
132
|
</component>
|
|
112
133
|
</project>
|
package/README.md
CHANGED
package/build/main/index.d.ts
CHANGED
|
@@ -29,6 +29,8 @@ export * from './lib/principal.dto';
|
|
|
29
29
|
export * from './lib/principal.controller';
|
|
30
30
|
export * from './lib/principal.resolver';
|
|
31
31
|
export * from './lib/principal.gateway';
|
|
32
|
+
export * from './lib/principal-mongo.controller';
|
|
33
|
+
export * from './lib/principal-mongo.service';
|
|
32
34
|
export * from './lib/interfaces-util/funciones-edicion-varias-tablas/registro-edicion-varias-tablas';
|
|
33
35
|
export * from './lib/interfaces-util/funciones.gateway';
|
|
34
36
|
export * from './lib/interfaces-util/funciones-middleware';
|
|
@@ -52,3 +54,20 @@ export * from './lib/politicas/revisar-si-tiene-nombre-permiso';
|
|
|
52
54
|
export * from './lib/politicas/revisar-si-tiene-rol';
|
|
53
55
|
export * from './lib/decoradores/mlab-swagger/mlab-swagger';
|
|
54
56
|
export * from './lib/decoradores/mlab-swagger/utils/definir-documentacion-swagger';
|
|
57
|
+
export * from './lib/google-cloud/google-cloud-vision-api/interfaces/texto-imagen.interface';
|
|
58
|
+
export * from './lib/google-cloud/google-cloud-vision-api/constants';
|
|
59
|
+
export * from './lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.module';
|
|
60
|
+
export * from './lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.service';
|
|
61
|
+
export * from './lib/modulos-configuracion/base-datos/base-datos.module';
|
|
62
|
+
export * from './lib/modulos-configuracion/base-datos/base-datos.core.module';
|
|
63
|
+
export * from './lib/modulos-configuracion/base-datos/base-datos.service';
|
|
64
|
+
export * from './lib/modulos-configuracion/base-datos/base-datos.helper';
|
|
65
|
+
export * from './lib/modulos-configuracion/base-datos/interfaces/conexion-base-datos.interface';
|
|
66
|
+
export * from './lib/modulos-configuracion/base-datos/interfaces/configuracion-bd.interface';
|
|
67
|
+
export * from './lib/modulos-configuracion/base-datos/interfaces/entidades.interface';
|
|
68
|
+
export * from './lib/modulos-configuracion/base-datos/interfaces/entorno-configuracion.interface';
|
|
69
|
+
export * from './lib/modulos-configuracion/base-datos/interfaces/respuesta-validacion.interface';
|
|
70
|
+
export * from './lib/modulos-configuracion/base-datos/interfaces/meta-dato-prueba.interface';
|
|
71
|
+
export * from './lib/decoradores/dto/validadores-or-and/esTipo';
|
|
72
|
+
export * from './lib/decoradores/dto/validadores-or-and/interfaces';
|
|
73
|
+
export * from './lib/principal.http.service';
|
package/build/main/index.js
CHANGED
|
@@ -41,6 +41,8 @@ __exportStar(require("./lib/principal.dto"), exports);
|
|
|
41
41
|
__exportStar(require("./lib/principal.controller"), exports);
|
|
42
42
|
__exportStar(require("./lib/principal.resolver"), exports);
|
|
43
43
|
__exportStar(require("./lib/principal.gateway"), exports);
|
|
44
|
+
__exportStar(require("./lib/principal-mongo.controller"), exports);
|
|
45
|
+
__exportStar(require("./lib/principal-mongo.service"), exports);
|
|
44
46
|
__exportStar(require("./lib/interfaces-util/funciones-edicion-varias-tablas/registro-edicion-varias-tablas"), exports);
|
|
45
47
|
__exportStar(require("./lib/interfaces-util/funciones.gateway"), exports);
|
|
46
48
|
__exportStar(require("./lib/interfaces-util/funciones-middleware"), exports);
|
|
@@ -64,4 +66,21 @@ __exportStar(require("./lib/politicas/revisar-si-tiene-nombre-permiso"), exports
|
|
|
64
66
|
__exportStar(require("./lib/politicas/revisar-si-tiene-rol"), exports);
|
|
65
67
|
__exportStar(require("./lib/decoradores/mlab-swagger/mlab-swagger"), exports);
|
|
66
68
|
__exportStar(require("./lib/decoradores/mlab-swagger/utils/definir-documentacion-swagger"), exports);
|
|
67
|
-
|
|
69
|
+
__exportStar(require("./lib/google-cloud/google-cloud-vision-api/interfaces/texto-imagen.interface"), exports);
|
|
70
|
+
__exportStar(require("./lib/google-cloud/google-cloud-vision-api/constants"), exports);
|
|
71
|
+
__exportStar(require("./lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.module"), exports);
|
|
72
|
+
__exportStar(require("./lib/google-cloud/google-cloud-vision-api/google-cloud-vision-api.service"), exports);
|
|
73
|
+
__exportStar(require("./lib/modulos-configuracion/base-datos/base-datos.module"), exports);
|
|
74
|
+
__exportStar(require("./lib/modulos-configuracion/base-datos/base-datos.core.module"), exports);
|
|
75
|
+
__exportStar(require("./lib/modulos-configuracion/base-datos/base-datos.service"), exports);
|
|
76
|
+
__exportStar(require("./lib/modulos-configuracion/base-datos/base-datos.helper"), exports);
|
|
77
|
+
__exportStar(require("./lib/modulos-configuracion/base-datos/interfaces/conexion-base-datos.interface"), exports);
|
|
78
|
+
__exportStar(require("./lib/modulos-configuracion/base-datos/interfaces/configuracion-bd.interface"), exports);
|
|
79
|
+
__exportStar(require("./lib/modulos-configuracion/base-datos/interfaces/entidades.interface"), exports);
|
|
80
|
+
__exportStar(require("./lib/modulos-configuracion/base-datos/interfaces/entorno-configuracion.interface"), exports);
|
|
81
|
+
__exportStar(require("./lib/modulos-configuracion/base-datos/interfaces/respuesta-validacion.interface"), exports);
|
|
82
|
+
__exportStar(require("./lib/modulos-configuracion/base-datos/interfaces/meta-dato-prueba.interface"), exports);
|
|
83
|
+
__exportStar(require("./lib/decoradores/dto/validadores-or-and/esTipo"), exports);
|
|
84
|
+
__exportStar(require("./lib/decoradores/dto/validadores-or-and/interfaces"), exports);
|
|
85
|
+
__exportStar(require("./lib/principal.http.service"), exports);
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsK0RBQTZDO0FBQzdDLDREQUEwQztBQUUxQywwR0FBd0Y7QUFDeEYsNEZBQTBFO0FBQzFFLGtGQUFnRTtBQUVoRSw2RUFBMkQ7QUFDM0QsOEVBQTREO0FBQzVELHlFQUF1RDtBQUV2RCw4RUFBNEQ7QUFDNUQscUdBQW1GO0FBRW5GLHNFQUFvRDtBQUNwRCx5RUFBdUQ7QUFFdkQsa0ZBQWdFO0FBQ2hFLGtGQUFnRTtBQUNoRSxvRkFBa0U7QUFDbEUscUZBQW1FO0FBRW5FLGtGQUFnRTtBQUNoRSxnRkFBOEQ7QUFDOUQsc0ZBQW9FO0FBQ3BFLHVGQUFxRTtBQUNyRSwyR0FBeUY7QUFDekYsZ0dBQThFO0FBQzlFLGlGQUErRDtBQUMvRCw4RUFBNEQ7QUFDNUQsc0ZBQW9FO0FBRXBFLHlEQUF1QztBQUN2QywwREFBd0M7QUFDeEMsc0RBQW9DO0FBQ3BDLDZEQUEyQztBQUMzQywyREFBeUM7QUFDekMsMERBQXdDO0FBQ3hDLG1FQUFpRDtBQUNqRCxnRUFBOEM7QUFFOUMsdUhBQXFHO0FBQ3JHLDBFQUF3RDtBQUN4RCw2RUFBMkQ7QUFDM0QsNEVBQTBEO0FBQzFELDZFQUEyRDtBQUMzRCx3RUFBc0Q7QUFDdEQsb0ZBQWtFO0FBQ2xFLCtFQUE2RDtBQUM3RCx1RUFBcUQ7QUFDckQsNERBQTBDO0FBQzFDLDRFQUEwRDtBQUMxRCwrRUFBNkQ7QUFDN0Qsa0ZBQWdFO0FBRWhFLDZGQUEyRTtBQUUzRSxxR0FBbUY7QUFDbkYsNEdBQTBGO0FBRTFGLDBGQUF3RTtBQUV4RSxrRUFBZ0Q7QUFFaEQsMEZBQXdFO0FBRXhFLGtGQUFnRTtBQUNoRSx1RUFBcUQ7QUFHckQsOEVBQTREO0FBQzVELHFHQUFtRjtBQUduRiwrR0FBNkY7QUFDN0YsdUZBQXFFO0FBQ3JFLDRHQUEwRjtBQUMxRiw2R0FBMkY7QUFHM0YsMkZBQXlFO0FBQ3pFLGdHQUE4RTtBQUM5RSw0RkFBMEU7QUFDMUUsMkZBQXlFO0FBQ3pFLGtIQUFnRztBQUNoRywrR0FBNkY7QUFDN0Ysd0dBQXNGO0FBQ3RGLG9IQUFrRztBQUNsRyxtSEFBaUc7QUFDakcsK0dBQTZGO0FBRTdGLGtGQUFnRTtBQUNoRSxzRkFBb0U7QUFDcEUsK0RBQTZDIn0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { UserData } from 'auth0';
|
|
1
|
+
import { FindManyOptions, ObjectID } from 'typeorm';
|
|
2
|
+
import { AuthenticationClient, UpdateUserData, UserData } from 'auth0';
|
|
3
3
|
import { ErrorServicioInterface } from '../principal.service';
|
|
4
4
|
import { CamposABuscarInterface } from '../interfaces-util/campos-a-buscar';
|
|
5
5
|
import { Auth0Config } from './interfaces/auth0-config';
|
|
@@ -12,7 +12,7 @@ export declare abstract class PrincipalAuth0Service {
|
|
|
12
12
|
private readonly sort;
|
|
13
13
|
private readonly debug;
|
|
14
14
|
managementClient: any;
|
|
15
|
-
authenticationClient:
|
|
15
|
+
authenticationClient: AuthenticationClient;
|
|
16
16
|
constructor(AUTH0_CONFIG: Auth0Config, _datosUsuarioService?: any, datosUsuarioDto?: any, AUTH0_CONFIG_PASSWORD?: any, search_engine?: string, sort?: string, debug?: boolean);
|
|
17
17
|
findOne(id?: string | number | Date | ObjectID): Promise<UsuarioEntity | ErrorServicioInterface>;
|
|
18
18
|
create(registro: UsuarioEntity): Promise<UserData | ErrorServicioInterface>;
|
|
@@ -43,6 +43,10 @@ export declare abstract class PrincipalAuth0Service {
|
|
|
43
43
|
findAll(criterioBusqueda: FindManyOptions<any>, skip: number, take: number): Promise<[UsuarioEntity[], number] | ErrorServicioInterface>;
|
|
44
44
|
login(username: string, password: string): Promise<RespuestaLoginPassword | ErrorServicioInterface>;
|
|
45
45
|
requestChangePasswordByEmail(email: string, connection?: string): Promise<ErrorServicioInterface>;
|
|
46
|
+
restablecerCorreo(id: any, correo: string): Promise<import("auth0").User<import("auth0").AppMetadata, import("auth0").UserMetadata>>;
|
|
47
|
+
bloquearUsuario(id: any): Promise<import("auth0").User<import("auth0").AppMetadata, import("auth0").UserMetadata>>;
|
|
48
|
+
updateOne(id: any, datos: UpdateUserData): Promise<import("auth0").User<import("auth0").AppMetadata, import("auth0").UserMetadata>>;
|
|
49
|
+
reenviarCorreo(id: string): Promise<import("auth0").VerificationEmailJob>;
|
|
46
50
|
}
|
|
47
51
|
export interface UsuarioEntity extends UserData {
|
|
48
52
|
user_metadata?: any;
|
|
@@ -19,7 +19,6 @@ const buscar_registro_1 = require("../funciones-util/buscar-registro");
|
|
|
19
19
|
const principal_find_many_options_1 = require("../principal.find-many-options");
|
|
20
20
|
const axios_1 = __importDefault(require("axios"));
|
|
21
21
|
const axios = axios_1.default;
|
|
22
|
-
const ManagementClient = require('auth0').ManagementClient;
|
|
23
22
|
let PrincipalAuth0Service = class PrincipalAuth0Service {
|
|
24
23
|
constructor(AUTH0_CONFIG, _datosUsuarioService, datosUsuarioDto, AUTH0_CONFIG_PASSWORD, search_engine = 'v3', sort = 'created_at:-1', debug = true) {
|
|
25
24
|
this.AUTH0_CONFIG = AUTH0_CONFIG;
|
|
@@ -29,7 +28,7 @@ let PrincipalAuth0Service = class PrincipalAuth0Service {
|
|
|
29
28
|
this.search_engine = search_engine;
|
|
30
29
|
this.sort = sort;
|
|
31
30
|
this.debug = debug;
|
|
32
|
-
this.managementClient = new ManagementClient({
|
|
31
|
+
this.managementClient = new auth0_1.ManagementClient({
|
|
33
32
|
domain: `${this.AUTH0_CONFIG.CUENTA}.auth0.com`,
|
|
34
33
|
clientId: `${this.AUTH0_CONFIG.CLIENT_ID}`,
|
|
35
34
|
clientSecret: `${this.AUTH0_CONFIG.SECRET}`,
|
|
@@ -599,6 +598,28 @@ let PrincipalAuth0Service = class PrincipalAuth0Service {
|
|
|
599
598
|
});
|
|
600
599
|
});
|
|
601
600
|
}
|
|
601
|
+
async restablecerCorreo(id, correo) {
|
|
602
|
+
const cliente = this.managementClient;
|
|
603
|
+
const datos = {
|
|
604
|
+
email: correo
|
|
605
|
+
};
|
|
606
|
+
return await cliente.updateUser({ id }, datos);
|
|
607
|
+
}
|
|
608
|
+
async bloquearUsuario(id) {
|
|
609
|
+
const cliente = this.managementClient;
|
|
610
|
+
const datos = {
|
|
611
|
+
blocked: true
|
|
612
|
+
};
|
|
613
|
+
return await cliente.updateUser({ id }, datos);
|
|
614
|
+
}
|
|
615
|
+
async updateOne(id, datos) {
|
|
616
|
+
const cliente = this.managementClient;
|
|
617
|
+
return await cliente.updateUser({ id }, datos);
|
|
618
|
+
}
|
|
619
|
+
async reenviarCorreo(id) {
|
|
620
|
+
const cliente = this.managementClient;
|
|
621
|
+
return await cliente.sendEmailVerification({ user_id: id });
|
|
622
|
+
}
|
|
602
623
|
};
|
|
603
624
|
PrincipalAuth0Service = __decorate([
|
|
604
625
|
common_1.Injectable(),
|
|
@@ -645,4 +666,4 @@ function elaborarUserMetadataAActualizar(user_metadata, user_metadataAActualizar
|
|
|
645
666
|
});
|
|
646
667
|
return user_metadataClonado;
|
|
647
668
|
}
|
|
648
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aDAuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvYXV0aDAvYXV0aDAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyQ0FBNEM7QUFFNUMsaUNBQXVEO0FBR3ZELHVFQUEwRTtBQUMxRSxnRkFBMEU7QUFDMUUsa0RBQXlCO0FBR3pCLE1BQU0sS0FBSyxHQUFRLGVBQUksQ0FBQztBQUN4QixNQUFNLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQztBQUczRCxJQUFzQixxQkFBcUIsR0FBM0MsTUFBc0IscUJBQXFCO0lBSXpDLFlBQTZCLFlBQXlCLEVBQzFCLG9CQUEwQixFQUMxQixlQUFxQixFQUNwQixxQkFBMkIsRUFDM0IsZ0JBQXdCLElBQUksRUFDNUIsT0FBZSxlQUFlLEVBQzlCLFFBQWlCLElBQUk7UUFOckIsaUJBQVksR0FBWixZQUFZLENBQWE7UUFDMUIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFNO1FBQzFCLG9CQUFlLEdBQWYsZUFBZSxDQUFNO1FBQ3BCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBTTtRQUMzQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixTQUFJLEdBQUosSUFBSSxDQUEwQjtRQUM5QixVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNoRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQztZQUMzQyxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sWUFBWTtZQUMvQyxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRTtZQUMxQyxZQUFZLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRTtZQUMzQyxLQUFLLEVBQUUsMkRBQTJEO1NBQ25FLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxv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
|
|
669
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aDAuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvYXV0aDAvYXV0aDAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyQ0FBMEM7QUFFMUMsaUNBQXVGO0FBR3ZGLHVFQUF3RTtBQUN4RSxnRkFBd0U7QUFDeEUsa0RBQXlCO0FBR3pCLE1BQU0sS0FBSyxHQUFRLGVBQUksQ0FBQztBQUd4QixJQUFzQixxQkFBcUIsR0FBM0MsTUFBc0IscUJBQXFCO0lBSXZDLFlBQTZCLFlBQXlCLEVBQzFCLG9CQUEwQixFQUMxQixlQUFxQixFQUNwQixxQkFBMkIsRUFDM0IsZ0JBQXdCLElBQUksRUFDNUIsT0FBZSxlQUFlLEVBQzlCLFFBQWlCLElBQUk7UUFOckIsaUJBQVksR0FBWixZQUFZLENBQWE7UUFDMUIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFNO1FBQzFCLG9CQUFlLEdBQWYsZUFBZSxDQUFNO1FBQ3BCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBTTtRQUMzQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixTQUFJLEdBQUosSUFBSSxDQUEwQjtRQUM5QixVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUM5QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSx3QkFBZ0IsQ0FBQztZQUN6QyxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sWUFBWTtZQUMvQyxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRTtZQUMxQyxZQUFZLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRTtZQUMzQyxLQUFLLEVBQUUsMkRBQTJEO1NBQ3JFLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLDRCQUFvQixDQUFDO1lBQ2pELE1BQU0sRUFBRSxHQUFHLFlBQVksQ0FBQyxN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
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ArgumentosValidacionTipos, ColeccionTipos } from './interfaces';
|
|
2
|
+
import { ValidationOptions } from 'class-validator';
|
|
3
|
+
export declare function EsTipo<Tipo = ColeccionTipos>(estrategiaDeValidacionTipos: ColeccionTipos, paraTodo?: boolean, argsDic?: ArgumentosValidacionTipos<Tipo>, opcionesValidacion?: ValidationOptions): (objecto: Object, nombrePropiedad: string) => void;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EsTipo = void 0;
|
|
4
|
+
const class_validator_1 = require("class-validator");
|
|
5
|
+
function EsTipo(estrategiaDeValidacionTipos, paraTodo, argsDic, opcionesValidacion) {
|
|
6
|
+
const estrategiasValidacion = Object.keys(estrategiaDeValidacionTipos);
|
|
7
|
+
const tieneArgumentosDiccionario = !!(argsDic && Object.keys(argsDic).length > 0);
|
|
8
|
+
return function (objecto, nombrePropiedad) {
|
|
9
|
+
class_validator_1.registerDecorator({
|
|
10
|
+
name: 'incorrectType',
|
|
11
|
+
target: objecto.constructor,
|
|
12
|
+
propertyName: nombrePropiedad,
|
|
13
|
+
options: opcionesValidacion,
|
|
14
|
+
validator: {
|
|
15
|
+
validate(value) {
|
|
16
|
+
const validacionGeneralCB = (estrategia) => {
|
|
17
|
+
const parametros = tieneArgumentosDiccionario ? argsDic[estrategia] : undefined;
|
|
18
|
+
const callback = estrategiaDeValidacionTipos[estrategia];
|
|
19
|
+
return callback(value, parametros);
|
|
20
|
+
};
|
|
21
|
+
if (paraTodo) {
|
|
22
|
+
return estrategiasValidacion.every(validacionGeneralCB);
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
return estrategiasValidacion.some(validacionGeneralCB);
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
defaultMessage() {
|
|
29
|
+
const ultimoTipo = estrategiasValidacion.pop();
|
|
30
|
+
if (estrategiasValidacion.length === 0)
|
|
31
|
+
return `El valor debe ser ${ultimoTipo}`;
|
|
32
|
+
return `Puede ser solo ${estrategiasValidacion.join(', ')} ${paraTodo ? 'y' : 'o'} ${ultimoTipo}.`;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
exports.EsTipo = EsTipo;
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNUaXBvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9kZWNvcmFkb3Jlcy9kdG8vdmFsaWRhZG9yZXMtb3ItYW5kL2VzVGlwby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxxREFBcUU7QUFFckUsU0FBZ0IsTUFBTSxDQUNsQiwyQkFBMkMsRUFDM0MsUUFBa0IsRUFDbEIsT0FBeUMsRUFDekMsa0JBQXNDO0lBRXRDLE1BQU0scUJBQXFCLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0lBQ3ZFLE1BQU0sMEJBQTBCLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBRWxGLE9BQU8sVUFDSCxPQUFlLEVBQ2YsZUFBdUI7UUFFdkIsbUNBQWlCLENBQ2I7WUFDSSxJQUFJLEVBQUUsZUFBZTtZQUNyQixNQUFNLEVBQUUsT0FBTyxDQUFDLFdBQVc7WUFDM0IsWUFBWSxFQUFFLGVBQWU7WUFDN0IsT0FBTyxFQUFFLGtCQUFrQjtZQUMzQixTQUFTLEVBQUU7Z0JBQ1AsUUFBUSxDQUFDLEtBQVU7b0JBQ2YsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLFVBQWtCLEVBQUUsRUFBRTt3QkFDL0MsTUFBTSxVQUFVLEdBQUcsMEJBQTBCLENBQUMsQ0FBQyxDQUFFLE9BQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO3dCQUN6RixNQUFNLFFBQVEsR0FBdUIsMkJBQTJCLENBQUMsVUFBVSxDQUFDLENBQUM7d0JBQzdFLE9BQU8sUUFBUSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztvQkFDdkMsQ0FBQyxDQUFBO29CQUNELElBQUksUUFBUSxFQUFFO3dCQUNWLE9BQU8scUJBQXFCLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUE7cUJBQzFEO3lCQUFNO3dCQUNILE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7cUJBQzFEO2dCQUNMLENBQUM7Z0JBQ0QsY0FBYztvQkFDVixNQUFNLFVBQVUsR0FBRyxxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDL0MsSUFBSSxxQkFBcUIsQ0FBQyxNQUFNLEtBQUssQ0FBQzt3QkFDbEMsT0FBTyxxQkFBcUIsVUFBVSxFQUFFLENBQUM7b0JBQzdDLE9BQU8sa0JBQWtCLHFCQUFxQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLFVBQVUsR0FBRyxDQUFDO2dCQUN2RyxDQUFDO2FBQ0o7U0FDSixDQUNKLENBQUM7SUFDTixDQUFDLENBQUE7QUFDTCxDQUFDO0FBMUNELHdCQTBDQyJ9
|
|
@@ -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,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZGVjb3JhZG9yZXMvZHRvL3ZhbGlkYWRvcmVzLW9yLWFuZC9pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
|
|
@@ -6,7 +6,9 @@ exports.NOMBRE_METODOS_CRUD_API = {
|
|
|
6
6
|
update: 'update',
|
|
7
7
|
delete: 'delete',
|
|
8
8
|
findOne: 'findOne',
|
|
9
|
-
findAll: 'findAll'
|
|
9
|
+
findAll: 'findAll',
|
|
10
|
+
findFull: 'findFull',
|
|
11
|
+
find: 'find',
|
|
10
12
|
};
|
|
11
13
|
exports.BODY_METADATA_DEFECTO = {
|
|
12
14
|
type: String,
|
|
@@ -19,4 +21,4 @@ exports.OPCIONES_QUERY_POR_DEFECTO = {
|
|
|
19
21
|
exports.OPCIONES_HEADER_DEFECTO = {
|
|
20
22
|
name: '',
|
|
21
23
|
};
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZGVjb3JhZG9yZXMvbWxhYi1zd2FnZ2VyL2NvbnN0YW50ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBR2EsUUFBQSx1QkFBdUIsR0FBZTtJQUNqRCxNQUFNLEVBQUUsUUFBUTtJQUNoQixNQUFNLEVBQUUsUUFBUTtJQUNoQixNQUFNLEVBQUUsUUFBUTtJQUNoQixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsU0FBUztJQUNsQixRQUFRLEVBQUUsVUFBVTtJQUNwQixJQUFJLEVBQUUsTUFBTTtDQUNiLENBQUE7QUFFWSxRQUFBLHFCQUFxQixHQUFvQjtJQUNwRCxJQUFJLEVBQUUsTUFBTTtJQUNaLFFBQVEsRUFBRSxJQUFJO0NBQ2YsQ0FBQztBQUVXLFFBQUEsMEJBQTBCLEdBQW9CO0lBQ3pELElBQUksRUFBRSxFQUFFO0lBQ1IsUUFBUSxFQUFFLElBQUk7Q0FDZixDQUFDO0FBRVcsUUFBQSx1QkFBdUIsR0FBOEI7SUFDaEUsSUFBSSxFQUFFLEVBQUU7Q0FDVCxDQUFDIn0=
|
|
@@ -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
|
|
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
|
|
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[];
|
|
@@ -13,11 +13,16 @@ function ValorEstaDentroDeArreglo(property, validationOptions) {
|
|
|
13
13
|
validator: {
|
|
14
14
|
validate(value, args) {
|
|
15
15
|
const arreglo = args.constraints[0];
|
|
16
|
-
return arreglo.some((valorEnArreglo) =>
|
|
16
|
+
return arreglo.some((valorEnArreglo) => {
|
|
17
|
+
if (value === 0 && valorEnArreglo === 0) {
|
|
18
|
+
return true;
|
|
19
|
+
}
|
|
20
|
+
return valorEnArreglo === value;
|
|
21
|
+
});
|
|
17
22
|
}
|
|
18
23
|
}
|
|
19
24
|
});
|
|
20
25
|
};
|
|
21
26
|
}
|
|
22
27
|
exports.ValorEstaDentroDeArreglo = ValorEstaDentroDeArreglo;
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsb3ItZXN0YS1kZW50cm8tZGVsLWFycmVnbG8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2Z1bmNpb25lcy11dGlsL3R5cGVvcm0vdmFsb3ItZXN0YS1kZW50cm8tZGVsLWFycmVnbG8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscURBQTBGO0FBRTFGLFNBQWdCLHdCQUF3QixDQUFDLFFBQWUsRUFBRSxpQkFBcUM7SUFDM0YsT0FBTyxVQUFVLE1BQWMsRUFBRSxZQUFvQjtRQUNqRCxtQ0FBaUIsQ0FBQztZQUNkLElBQUksRUFBRSwwQkFBMEI7WUFDaEMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxXQUFXO1lBQzFCLFlBQVksRUFBRSxZQUFZO1lBQzFCLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQztZQUN2QixPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFNBQVMsRUFBRTtnQkFDUCxRQUFRLENBQUMsS0FBVSxFQUFFLElBQXlCO29CQUMxQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUNwQyxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQ2YsQ0FBQyxjQUFjLEVBQUUsRUFBRTt3QkFDZixJQUFJLEtBQUssS0FBSyxDQUFDLElBQUksY0FBYyxLQUFLLENBQUMsRUFBRTs0QkFDckMsT0FBTyxJQUFJLENBQUE7eUJBQ2Q7d0JBQ0QsT0FBTyxjQUFjLEtBQUssS0FBSyxDQUFDO29CQUNwQyxDQUFDLENBQUMsQ0FBQztnQkFDWCxDQUFDO2FBQ0o7U0FDSixDQUFDLENBQUM7SUFDUCxDQUFDLENBQUM7QUFDTixDQUFDO0FBdEJELDREQXNCQyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const GCP_VISION_API_CLIENT = "GCP_VISION_API_CLIENT";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GCP_VISION_API_CLIENT = void 0;
|
|
4
|
+
exports.GCP_VISION_API_CLIENT = 'GCP_VISION_API_CLIENT';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9nb29nbGUtY2xvdWQvZ29vZ2xlLWNsb3VkLXZpc2lvbi1hcGkvY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFhLFFBQUEscUJBQXFCLEdBQUcsdUJBQXVCLENBQUMifQ==
|