@manticore-labs/nest 0.0.57 → 0.0.59
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 +114 -147
- package/build/main/index.d.ts +11 -0
- package/build/main/index.js +3 -1
- package/build/main/lib/auth0/auth0.controller.d.ts +7 -3
- package/build/main/lib/auth0/auth0.controller.js +54 -12
- package/build/main/lib/auth0/auth0.service.d.ts +2 -1
- package/build/main/lib/auth0/auth0.service.js +94 -25
- package/build/main/lib/auth0/interfaces/funciones-seguridad.d.ts +2 -1
- package/build/main/lib/one-signal/interfaces/funciones-seguridad.d.ts +9 -0
- package/build/main/lib/one-signal/interfaces/funciones-seguridad.js +3 -0
- package/build/main/lib/one-signal/interfaces/one-signal-device.d.ts +19 -0
- package/build/main/lib/one-signal/interfaces/one-signal-device.js +3 -0
- package/build/main/lib/one-signal/interfaces/one-signal-notification.d.ts +15 -0
- package/build/main/lib/one-signal/interfaces/one-signal-notification.js +3 -0
- package/build/main/lib/one-signal/interfaces/one-signal-notifications.d.ts +7 -0
- package/build/main/lib/one-signal/interfaces/one-signal-notifications.js +3 -0
- package/build/main/lib/one-signal/interfaces/one-signal-ok-create-notification-no-players.d.ts +5 -0
- package/build/main/lib/one-signal/interfaces/one-signal-ok-create-notification-no-players.js +3 -0
- package/build/main/lib/one-signal/interfaces/one-signal-ok-create-notification.d.ts +4 -0
- package/build/main/lib/one-signal/interfaces/one-signal-ok-create-notification.js +3 -0
- package/build/main/lib/one-signal/interfaces/one-signal-success.d.ts +3 -0
- package/build/main/lib/one-signal/interfaces/one-signal-success.js +3 -0
- package/build/main/lib/one-signal/interfaces/one-signal-tags.d.ts +3 -0
- package/build/main/lib/one-signal/interfaces/one-signal-tags.js +3 -0
- package/build/main/lib/one-signal/interfaces/one-signal-view-devices.d.ts +7 -0
- package/build/main/lib/one-signal/interfaces/one-signal-view-devices.js +3 -0
- package/build/main/lib/one-signal/one-signal.controller.d.ts +15 -0
- package/build/main/lib/one-signal/one-signal.controller.js +251 -0
- package/build/main/lib/one-signal/one-signal.service.d.ts +32 -0
- package/build/main/lib/one-signal/one-signal.service.js +85 -0
- package/build/module/index.d.ts +11 -0
- package/build/module/index.js +3 -1
- package/build/module/lib/auth0/auth0.controller.d.ts +7 -3
- package/build/module/lib/auth0/auth0.controller.js +55 -13
- package/build/module/lib/auth0/auth0.service.d.ts +2 -1
- package/build/module/lib/auth0/auth0.service.js +94 -25
- package/build/module/lib/auth0/interfaces/funciones-seguridad.d.ts +2 -1
- package/build/module/lib/one-signal/interfaces/funciones-seguridad.d.ts +9 -0
- package/build/module/lib/one-signal/interfaces/funciones-seguridad.js +1 -0
- package/build/module/lib/one-signal/interfaces/one-signal-device.d.ts +19 -0
- package/build/module/lib/one-signal/interfaces/one-signal-device.js +1 -0
- package/build/module/lib/one-signal/interfaces/one-signal-notification.d.ts +15 -0
- package/build/module/lib/one-signal/interfaces/one-signal-notification.js +1 -0
- package/build/module/lib/one-signal/interfaces/one-signal-notifications.d.ts +7 -0
- package/build/module/lib/one-signal/interfaces/one-signal-notifications.js +1 -0
- package/build/module/lib/one-signal/interfaces/one-signal-ok-create-notification-no-players.d.ts +5 -0
- package/build/module/lib/one-signal/interfaces/one-signal-ok-create-notification-no-players.js +1 -0
- package/build/module/lib/one-signal/interfaces/one-signal-ok-create-notification.d.ts +4 -0
- package/build/module/lib/one-signal/interfaces/one-signal-ok-create-notification.js +1 -0
- package/build/module/lib/one-signal/interfaces/one-signal-success.d.ts +3 -0
- package/build/module/lib/one-signal/interfaces/one-signal-success.js +1 -0
- package/build/module/lib/one-signal/interfaces/one-signal-tags.d.ts +3 -0
- package/build/module/lib/one-signal/interfaces/one-signal-tags.js +1 -0
- package/build/module/lib/one-signal/interfaces/one-signal-view-devices.d.ts +7 -0
- package/build/module/lib/one-signal/interfaces/one-signal-view-devices.js +1 -0
- package/build/module/lib/one-signal/one-signal.controller.d.ts +15 -0
- package/build/module/lib/one-signal/one-signal.controller.js +249 -0
- package/build/module/lib/one-signal/one-signal.service.d.ts +32 -0
- package/build/module/lib/one-signal/one-signal.service.js +83 -0
- package/package.json +114 -113
|
@@ -8,7 +8,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
8
8
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
9
9
|
};
|
|
10
10
|
import { ActualizarUsuarioCuentaDto } from './actualizar-usuario-cuenta-dto/actualizar-usuario-cuenta-dto';
|
|
11
|
-
import { BadRequestException, Body, Controller, HttpCode, Post, InternalServerErrorException, Param, Response, Request, Query, Get
|
|
11
|
+
import { BadRequestException, Body, Controller, HttpCode, Post, InternalServerErrorException, Param, Response, Request, Query, Get } from '@nestjs/common';
|
|
12
12
|
import { validate } from 'class-validator';
|
|
13
13
|
import { ActualizarUsuarioDto } from './actualizar-usuario-dto/actualizar-usuario-dto';
|
|
14
14
|
import { aplicarPoliticasDeSeguridad } from '../seguridad/aplicar-politicas-de-seguridad';
|
|
@@ -20,11 +20,13 @@ let PrincipalAuth0Controller = class PrincipalAuth0Controller {
|
|
|
20
20
|
mensajeProcesoInicial: 'Proceso inicial completado exitosamente.',
|
|
21
21
|
mensajeCuentaActualizada: 'Cuenta actualizada.',
|
|
22
22
|
mensajeCuentaYCorreoActualizado: 'Cuenta actualizada. Revise su correo para confirmar su email.'
|
|
23
|
-
}, debug = true, contexto) {
|
|
23
|
+
}, debug = true, skip = 0, take = 30, contexto) {
|
|
24
24
|
this._funcionesSeguridad = _funcionesSeguridad;
|
|
25
25
|
this._auth0Service = _auth0Service;
|
|
26
26
|
this._mensajes = _mensajes;
|
|
27
27
|
this.debug = debug;
|
|
28
|
+
this.skip = skip;
|
|
29
|
+
this.take = take;
|
|
28
30
|
this.contexto = contexto;
|
|
29
31
|
}
|
|
30
32
|
async actualizarUsuarioPorPrimeraVez(email, name, user_id, request, response) {
|
|
@@ -367,7 +369,7 @@ let PrincipalAuth0Controller = class PrincipalAuth0Controller {
|
|
|
367
369
|
}
|
|
368
370
|
};
|
|
369
371
|
}
|
|
370
|
-
|
|
372
|
+
findWhereOr(criterioBusqueda, request, response) {
|
|
371
373
|
const tipoPoliticaSeguridad = {
|
|
372
374
|
web: {
|
|
373
375
|
request,
|
|
@@ -375,13 +377,13 @@ let PrincipalAuth0Controller = class PrincipalAuth0Controller {
|
|
|
375
377
|
}
|
|
376
378
|
};
|
|
377
379
|
const objetoPoliticasDeSeguridad = {
|
|
378
|
-
funciones: this._funcionesSeguridad.
|
|
380
|
+
funciones: this._funcionesSeguridad.findWhereOr ? this._funcionesSeguridad.findWhereOr : []
|
|
379
381
|
};
|
|
380
382
|
const puedeRealizarAccion$ = aplicarPoliticasDeSeguridad(tipoPoliticaSeguridad, objetoPoliticasDeSeguridad, this.contexto);
|
|
381
383
|
puedeRealizarAccion$
|
|
382
384
|
.pipe(mergeMap((puedeRealizarAccion) => {
|
|
383
385
|
if (puedeRealizarAccion) {
|
|
384
|
-
return from(this.
|
|
386
|
+
return from(this.buscarUsuarioFindWhereOr(criterioBusqueda));
|
|
385
387
|
}
|
|
386
388
|
else {
|
|
387
389
|
return of({ error: 403, mensaje: 'No tiene permisos' });
|
|
@@ -401,21 +403,55 @@ let PrincipalAuth0Controller = class PrincipalAuth0Controller {
|
|
|
401
403
|
return response.status(500).send('Error del servidor');
|
|
402
404
|
});
|
|
403
405
|
}
|
|
404
|
-
|
|
406
|
+
buscarUsuarioFindWhereOr(criterioBusqueda) {
|
|
405
407
|
let camposUsuario;
|
|
406
408
|
try {
|
|
407
|
-
camposUsuario = JSON.parse(
|
|
409
|
+
camposUsuario = JSON.parse(criterioBusqueda);
|
|
408
410
|
}
|
|
409
411
|
catch (e) {
|
|
410
412
|
console.error('Error: ', e);
|
|
411
413
|
}
|
|
412
414
|
if (camposUsuario) {
|
|
413
|
-
return this._auth0Service.
|
|
415
|
+
return this._auth0Service.findWhereOr(camposUsuario);
|
|
414
416
|
}
|
|
415
417
|
else {
|
|
416
418
|
return of({ mensaje: 'Error en enviar parametros.', error: 400 });
|
|
417
419
|
}
|
|
418
420
|
}
|
|
421
|
+
findAllDatosUsuario(criterioBusqueda, request, response) {
|
|
422
|
+
const tipoPoliticaSeguridad = {
|
|
423
|
+
web: {
|
|
424
|
+
request,
|
|
425
|
+
response
|
|
426
|
+
}
|
|
427
|
+
};
|
|
428
|
+
const objetoPoliticasDeSeguridad = {
|
|
429
|
+
funciones: this._funcionesSeguridad.findAll ? this._funcionesSeguridad.findAll : []
|
|
430
|
+
};
|
|
431
|
+
const puedeRealizarAccion$ = aplicarPoliticasDeSeguridad(tipoPoliticaSeguridad, objetoPoliticasDeSeguridad, this.contexto);
|
|
432
|
+
puedeRealizarAccion$
|
|
433
|
+
.pipe(mergeMap((puedeRealizarAccion) => {
|
|
434
|
+
if (puedeRealizarAccion) {
|
|
435
|
+
return from(this._auth0Service.findAll(criterioBusqueda, this.skip, this.take));
|
|
436
|
+
}
|
|
437
|
+
else {
|
|
438
|
+
return of({ error: 403, mensaje: 'No tiene permisos' });
|
|
439
|
+
}
|
|
440
|
+
}))
|
|
441
|
+
.subscribe((respuesta) => {
|
|
442
|
+
if (respuesta.error) {
|
|
443
|
+
return response.status(respuesta.error).send(respuesta);
|
|
444
|
+
}
|
|
445
|
+
else {
|
|
446
|
+
return response.send(respuesta);
|
|
447
|
+
}
|
|
448
|
+
}, (error) => {
|
|
449
|
+
if (this.debug) {
|
|
450
|
+
console.error('Error', error);
|
|
451
|
+
}
|
|
452
|
+
return response.status(500).send('Error del servidor');
|
|
453
|
+
});
|
|
454
|
+
}
|
|
419
455
|
};
|
|
420
456
|
__decorate([
|
|
421
457
|
HttpCode(200),
|
|
@@ -437,7 +473,7 @@ __decorate([
|
|
|
437
473
|
], PrincipalAuth0Controller.prototype, "actualizarCuenta", null);
|
|
438
474
|
__decorate([
|
|
439
475
|
HttpCode(200),
|
|
440
|
-
|
|
476
|
+
Get(':id'),
|
|
441
477
|
__param(0, Param('id')),
|
|
442
478
|
__param(1, Request()),
|
|
443
479
|
__param(2, Response())
|
|
@@ -458,13 +494,19 @@ __decorate([
|
|
|
458
494
|
__param(3, Response())
|
|
459
495
|
], PrincipalAuth0Controller.prototype, "createOne", null);
|
|
460
496
|
__decorate([
|
|
461
|
-
Get('
|
|
462
|
-
__param(0, Query('
|
|
497
|
+
Get('findWhereOrDatosUsuario'),
|
|
498
|
+
__param(0, Query('criterioBusqueda')),
|
|
499
|
+
__param(1, Request()),
|
|
500
|
+
__param(2, Response())
|
|
501
|
+
], PrincipalAuth0Controller.prototype, "findWhereOr", null);
|
|
502
|
+
__decorate([
|
|
503
|
+
Get('findAllDatosUsuario'),
|
|
504
|
+
__param(0, Query('criterioBusqueda')),
|
|
463
505
|
__param(1, Request()),
|
|
464
506
|
__param(2, Response())
|
|
465
|
-
], PrincipalAuth0Controller.prototype, "
|
|
507
|
+
], PrincipalAuth0Controller.prototype, "findAllDatosUsuario", null);
|
|
466
508
|
PrincipalAuth0Controller = __decorate([
|
|
467
509
|
Controller('auth0')
|
|
468
510
|
], PrincipalAuth0Controller);
|
|
469
511
|
export { PrincipalAuth0Controller };
|
|
470
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aDAuY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvYXV0aDAvYXV0aDAuY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMzRyxPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLElBQUksRUFDSixVQUFVLEVBQ1YsUUFBUSxFQUNSLElBQUksRUFDSiw0QkFBNEIsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFDeEUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFNdkYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDMUYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQU14RSxJQUFzQix3QkFBd0IsR0FBOUM7SUFDRSxZQUNtQixtQkFBNEMsRUFDNUMsYUFBMEMsRUFDMUMsWUFBc0M7UUFDckQscUJBQXFCLEVBQUUsMENBQTBDO1FBQ2pFLHdCQUF3QixFQUFFLHFCQUFxQjtRQUMvQywrQkFBK0IsRUFBRSwrREFBK0Q7S0FDakcsRUFDZ0IsUUFBaUIsSUFBSSxFQUM1QixRQUFhO1FBUk4sd0JBQW1CLEdBQW5CLG1CQUFtQixDQUF5QjtRQUM1QyxrQkFBYSxHQUFiLGFBQWEsQ0FBNkI7UUFDMUMsY0FBUyxHQUFULFNBQVMsQ0FJekI7UUFDZ0IsVUFBSyxHQUFM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
|
|
512
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aDAuY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvYXV0aDAvYXV0aDAuY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMzRyxPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLElBQUksRUFDSixVQUFVLEVBQ1YsUUFBUSxFQUNSLElBQUksRUFDSiw0QkFBNEIsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUNuRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQU12RixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUMxRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBT3hFLElBQXNCLHdCQUF3QixHQUE5QztJQUNFLFlBQ21CLG1CQUE0QyxFQUM1QyxhQUEwQyxFQUMxQyxZQUFzQztRQUNyRCxxQkFBcUIsRUFBRSwwQ0FBMEM7UUFDakUsd0JBQXdCLEVBQUUscUJBQXFCO1FBQy9DLCtCQUErQixFQUFFLCtEQUErRDtLQUNqRyxFQUNnQixRQUFpQixJQUFJLEVBQ3JCLE9BQWUsQ0FBQyxFQUNoQixPQUFlLEVBQUUsRUFDeEIsUUFBYTtRQVZOLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBeUI7UUFDNUMsa0JBQWEsR0FBYixhQUFhLENBQTZCO1FBQzFDLGNBQVMsR0FBVCxTQUFT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
|
|
@@ -27,7 +27,8 @@ export declare abstract class PrincipalAuth0Service {
|
|
|
27
27
|
}>;
|
|
28
28
|
delete(id?: string | number | ObjectID): Promise<ErrorServicioInterface>;
|
|
29
29
|
createMany(nuevosRegistros: UsuarioEntity[]): Promise<any[] | any>;
|
|
30
|
-
|
|
30
|
+
findWhereOr(camposABuscar: CamposABuscarInterface[], skip?: number, take?: number): Promise<[UsuarioEntity[], number] | ErrorServicioInterface>;
|
|
31
|
+
findAll(criterioBusqueda: FindManyOptions<any>, skip: number, take: number): Promise<[UsuarioEntity[], number] | ErrorServicioInterface>;
|
|
31
32
|
}
|
|
32
33
|
export interface UsuarioEntity extends UserData {
|
|
33
34
|
user_metadata?: any;
|
|
@@ -6,6 +6,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { Injectable } from '@nestjs/common';
|
|
8
8
|
import { AuthenticationClient } from 'auth0';
|
|
9
|
+
import { buscarVariosRegistros } from '../funciones-util/buscar-registro';
|
|
10
|
+
import { PrincipalFindManyOptions } from '../principal.find-many-options';
|
|
9
11
|
const ManagementClient = require('auth0').ManagementClient;
|
|
10
12
|
let PrincipalAuth0Service = class PrincipalAuth0Service {
|
|
11
13
|
constructor(AUTH0_CONFIG, _datosUsuarioService, datosUsuarioDto, search_engine = 'v3', sort = 'created_at:-1', debug = true) {
|
|
@@ -345,7 +347,7 @@ let PrincipalAuth0Service = class PrincipalAuth0Service {
|
|
|
345
347
|
}
|
|
346
348
|
});
|
|
347
349
|
}
|
|
348
|
-
async
|
|
350
|
+
async findWhereOr(camposABuscar, skip = 0, take = 10) {
|
|
349
351
|
if (this._datosUsuarioService) {
|
|
350
352
|
if (this.debug) {
|
|
351
353
|
console.info('Consulta: ', camposABuscar);
|
|
@@ -356,36 +358,103 @@ let PrincipalAuth0Service = class PrincipalAuth0Service {
|
|
|
356
358
|
console.info('UsuariosEncontrados: ', usuariosEncontrados);
|
|
357
359
|
}
|
|
358
360
|
let consulta = '';
|
|
359
|
-
usuariosEncontrados[0]
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
361
|
+
const hayUsuarios = usuariosEncontrados[0].length > 0;
|
|
362
|
+
if (hayUsuarios) {
|
|
363
|
+
usuariosEncontrados[0]
|
|
364
|
+
.forEach((datosUsuario) => {
|
|
365
|
+
if (consulta === '') {
|
|
366
|
+
consulta = consulta + datosUsuario.user_id;
|
|
367
|
+
}
|
|
368
|
+
else {
|
|
369
|
+
consulta = consulta + ' OR ' + datosUsuario.user_id;
|
|
370
|
+
}
|
|
371
|
+
});
|
|
372
|
+
if (this.debug) {
|
|
373
|
+
console.info('Consulta de usuarios: ', consulta);
|
|
374
|
+
}
|
|
375
|
+
const respuesta = await this.find({
|
|
376
|
+
where: consulta
|
|
377
|
+
});
|
|
378
|
+
if (respuesta.error) {
|
|
379
|
+
const error = respuesta;
|
|
380
|
+
return { error: error.error, mensaje: error.mensaje };
|
|
363
381
|
}
|
|
364
382
|
else {
|
|
365
|
-
|
|
383
|
+
let usuariosAuth0 = respuesta;
|
|
384
|
+
usuariosAuth0 = usuariosAuth0
|
|
385
|
+
.map((usuarioAuth0) => {
|
|
386
|
+
usuarioAuth0.usuario = usuariosEncontrados[0]
|
|
387
|
+
.find((usuario) => {
|
|
388
|
+
return usuario.user_id === usuarioAuth0.user_id;
|
|
389
|
+
});
|
|
390
|
+
return usuarioAuth0;
|
|
391
|
+
});
|
|
392
|
+
return [usuariosAuth0, usuariosAuth0.length];
|
|
366
393
|
}
|
|
367
|
-
}
|
|
394
|
+
}
|
|
395
|
+
else {
|
|
396
|
+
if (this.debug) {
|
|
397
|
+
console.info('No se encontraron usuarios');
|
|
398
|
+
}
|
|
399
|
+
return { error: 404, mensaje: 'No se encontro ningun usuario' };
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
else {
|
|
368
403
|
if (this.debug) {
|
|
369
|
-
console.info('
|
|
404
|
+
console.info('No existe el servicio, añada como dependencia en el constructor el _datosUsuarioService');
|
|
370
405
|
}
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
406
|
+
return { error: 400, mensaje: 'No existe el servicio DatosUsuarioService' };
|
|
407
|
+
}
|
|
408
|
+
}
|
|
409
|
+
async findAll(criterioBusqueda, skip, take) {
|
|
410
|
+
if (this._datosUsuarioService) {
|
|
411
|
+
if (this.debug) {
|
|
412
|
+
console.info('Consulta: ', criterioBusqueda);
|
|
377
413
|
}
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
414
|
+
const usuariosEncontrados = await buscarVariosRegistros(criterioBusqueda, PrincipalFindManyOptions, skip, take, this._datosUsuarioService);
|
|
415
|
+
if (this.debug) {
|
|
416
|
+
console.info('UsuariosEncontrados: ', usuariosEncontrados);
|
|
417
|
+
}
|
|
418
|
+
let consulta = '';
|
|
419
|
+
const hayUsuarios = usuariosEncontrados[0].length > 0;
|
|
420
|
+
if (hayUsuarios) {
|
|
421
|
+
usuariosEncontrados[0]
|
|
422
|
+
.forEach((datosUsuario) => {
|
|
423
|
+
if (consulta === '') {
|
|
424
|
+
consulta = consulta + datosUsuario.user_id;
|
|
425
|
+
}
|
|
426
|
+
else {
|
|
427
|
+
consulta = consulta + ' OR ' + datosUsuario.user_id;
|
|
428
|
+
}
|
|
387
429
|
});
|
|
388
|
-
|
|
430
|
+
if (this.debug) {
|
|
431
|
+
console.info('Consulta de usuarios: ', consulta);
|
|
432
|
+
}
|
|
433
|
+
const respuesta = await this.find({
|
|
434
|
+
where: consulta
|
|
435
|
+
});
|
|
436
|
+
if (respuesta.error) {
|
|
437
|
+
const error = respuesta;
|
|
438
|
+
return { error: error.error, mensaje: error.mensaje };
|
|
439
|
+
}
|
|
440
|
+
else {
|
|
441
|
+
let usuariosAuth0 = respuesta;
|
|
442
|
+
usuariosAuth0 = usuariosAuth0
|
|
443
|
+
.map((usuarioAuth0) => {
|
|
444
|
+
usuarioAuth0.usuario = usuariosEncontrados[0]
|
|
445
|
+
.find((usuario) => {
|
|
446
|
+
return usuario.user_id === usuarioAuth0.user_id;
|
|
447
|
+
});
|
|
448
|
+
return usuarioAuth0;
|
|
449
|
+
});
|
|
450
|
+
return [usuariosAuth0, usuariosAuth0.length];
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
else {
|
|
454
|
+
if (this.debug) {
|
|
455
|
+
console.info('No se encontraron usuarios');
|
|
456
|
+
}
|
|
457
|
+
return { error: 404, mensaje: 'No se encontro ningun usuario' };
|
|
389
458
|
}
|
|
390
459
|
}
|
|
391
460
|
else {
|
|
@@ -440,4 +509,4 @@ function elaborarUserMetadataAActualizar(user_metadata, user_metadataAActualizar
|
|
|
440
509
|
});
|
|
441
510
|
return user_metadataClonado;
|
|
442
511
|
}
|
|
443
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aDAuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvYXV0aDAvYXV0aDAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUMsT0FBTyxFQUFZLG9CQUFvQixFQUFFLE1BQU0sT0FBTyxDQUFDO0FBSXZELE1BQU0sZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLGdCQUFnQixDQUFDO0FBRzNELElBQXNCLHFCQUFxQixHQUEzQztJQUlFLFlBQTZCLFlBQVksRUFDYixvQkFBMEIsRUFDMUIsZUFBcUIsRUFDcEIsZ0JBQXdCLElBQUksRUFDNUIsT0FBZSxlQUFlLEVBQzlCLFFBQWlCLElBQUk7UUFMckIsaUJBQVksR0FBWixZQUFZLENBQUE7UUFDYix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQU07UUFDMUIsb0JBQWUsR0FBZixlQUFlLENBQU07UUFDcEIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsU0FBSSxHQUFKLElBQUksQ0FBMEI7UUFDOUIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDaEQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksZ0JBQWdCLENBQUM7WUFDM0MsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLFlBQVk7WUFDL0MsUUFBUSxFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUU7WUFDMUMsWUFBWSxFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUU7WUFDM0MsS0FBSyxFQUFFLDJEQUEyRDtTQUNuRSxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQztZQUNuRCxNQUFNLEVBQUUsR0FBRyxZQUFZLENBQUMsTUFBTSxZQUFZO1lBQzFDLFFBQVEs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
|
|
512
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aDAuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvYXV0aDAvYXV0aDAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUMsT0FBTyxFQUFZLG9CQUFvQixFQUFFLE1BQU0sT0FBTyxDQUFDO0FBR3ZELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTFFLE1BQU0sZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLGdCQUFnQixDQUFDO0FBRzNELElBQXNCLHFCQUFxQixHQUEzQztJQUlFLFlBQTZCLFlBQVksRUFDYixvQkFBMEIsRUFDMUIsZUFBcUIsRUFDcEIsZ0JBQXdCLElBQUksRUFDNUIsT0FBZSxlQUFlLEVBQzlCLFFBQWlCLElBQUk7UUFMckIsaUJBQVksR0FBWixZQUFZLENBQUE7UUFDYix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQU07UUFDMUIsb0JBQWUsR0FBZixlQUFlLENBQU07UUFDcEIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsU0FBSSxHQUFKLElBQUksQ0FBMEI7UUFDOUIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDaEQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksZ0JBQWdCLENBQUM7WUFDM0MsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLFlBQVk7WUFDL0MsUUFBUSxFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUU7WUFDMUMsWUFBWSxFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUU7WUFDM0MsS0FBSyxFQUFFLDJEQUEyRDtTQUNuRSxDQUFDLENBQUM7UUFDSCxJ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
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { FuncionBooleana } from '../../interfaces-util/funciones-seguridad';
|
|
2
|
+
export interface FuncionesSeguridadOneSignal {
|
|
3
|
+
createNotification?: FuncionBooleana[];
|
|
4
|
+
cancelNotification?: FuncionBooleana[];
|
|
5
|
+
viewDevices?: FuncionBooleana[];
|
|
6
|
+
viewDevice?: FuncionBooleana[];
|
|
7
|
+
viewNotification?: FuncionBooleana[];
|
|
8
|
+
viewNotifications?: FuncionBooleana[];
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY2lvbmVzLXNlZ3VyaWRhZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvb25lLXNpZ25hbC9pbnRlcmZhY2VzL2Z1bmNpb25lcy1zZWd1cmlkYWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Tags } from './one-signal-tags';
|
|
2
|
+
export interface OneSignalDevice {
|
|
3
|
+
'identifier': string;
|
|
4
|
+
'session_count': number;
|
|
5
|
+
'language': string;
|
|
6
|
+
'timezone': number;
|
|
7
|
+
'game_version': string;
|
|
8
|
+
'device_os': string;
|
|
9
|
+
'device_type': number;
|
|
10
|
+
'device_model': string;
|
|
11
|
+
'ad_id': any;
|
|
12
|
+
'tags': Tags;
|
|
13
|
+
'last_active': number;
|
|
14
|
+
'amount_spent': number;
|
|
15
|
+
'created_at': number;
|
|
16
|
+
'invalid_identifier': boolean;
|
|
17
|
+
'badge_count': number;
|
|
18
|
+
'external_user_id': any;
|
|
19
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLXNpZ25hbC1kZXZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL29uZS1zaWduYWwvaW50ZXJmYWNlcy9vbmUtc2lnbmFsLWRldmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Tags } from './one-signal-tags';
|
|
2
|
+
export interface OneSignalNotification {
|
|
3
|
+
'id': string;
|
|
4
|
+
'successful': number;
|
|
5
|
+
'failed': number;
|
|
6
|
+
'converted': number;
|
|
7
|
+
'remaining': number;
|
|
8
|
+
'queued_at': number;
|
|
9
|
+
'send_after': number;
|
|
10
|
+
'canceled': boolean;
|
|
11
|
+
'url': string;
|
|
12
|
+
'data': any;
|
|
13
|
+
'headings': Tags;
|
|
14
|
+
'contents': Tags;
|
|
15
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLXNpZ25hbC1ub3RpZmljYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL29uZS1zaWduYWwvaW50ZXJmYWNlcy9vbmUtc2lnbmFsLW5vdGlmaWNhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLXNpZ25hbC1ub3RpZmljYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9vbmUtc2lnbmFsL2ludGVyZmFjZXMvb25lLXNpZ25hbC1ub3RpZmljYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
|
package/build/module/lib/one-signal/interfaces/one-signal-ok-create-notification-no-players.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLXNpZ25hbC1vay1jcmVhdGUtbm90aWZpY2F0aW9uLW5vLXBsYXllcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL29uZS1zaWduYWwvaW50ZXJmYWNlcy9vbmUtc2lnbmFsLW9rLWNyZWF0ZS1ub3RpZmljYXRpb24tbm8tcGxheWVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLXNpZ25hbC1vay1jcmVhdGUtbm90aWZpY2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9vbmUtc2lnbmFsL2ludGVyZmFjZXMvb25lLXNpZ25hbC1vay1jcmVhdGUtbm90aWZpY2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLXNpZ25hbC1zdWNjZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9vbmUtc2lnbmFsL2ludGVyZmFjZXMvb25lLXNpZ25hbC1zdWNjZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLXNpZ25hbC10YWdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9vbmUtc2lnbmFsL2ludGVyZmFjZXMvb25lLXNpZ25hbC10YWdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLXNpZ25hbC12aWV3LWRldmljZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL29uZS1zaWduYWwvaW50ZXJmYWNlcy9vbmUtc2lnbmFsLXZpZXctZGV2aWNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { FuncionesSeguridadOneSignal } from './interfaces/funciones-seguridad';
|
|
2
|
+
import { PrincipalOneSignalService } from './one-signal.service';
|
|
3
|
+
export declare abstract class PrincipalOneSignalController {
|
|
4
|
+
private readonly funcionesSeguridad;
|
|
5
|
+
private readonly oneSignalService;
|
|
6
|
+
private readonly debug;
|
|
7
|
+
protected contexto: any;
|
|
8
|
+
constructor(funcionesSeguridad: FuncionesSeguridadOneSignal, oneSignalService: PrincipalOneSignalService | any, debug: boolean, contexto: any);
|
|
9
|
+
createNotification(opciones: any, request: any, response: any): void;
|
|
10
|
+
cancelNotification(id: any, app_id: any, request: any, response: any): void;
|
|
11
|
+
viewDevices(app_id: any, limit: any, offset: any, request: any, response: any): void;
|
|
12
|
+
viewDevice(id: any, request: any, response: any): void;
|
|
13
|
+
viewNotifications(app_id: any, limit: any, offset: any, kind: any, request: any, response: any): void;
|
|
14
|
+
viewNotification(id: any, app_id: any, request: any, response: any): void;
|
|
15
|
+
}
|