@serene-dev/la-nest-library 0.0.172 → 0.0.173
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/dist/libs/la-library/src/modules/authentication/authentication.guard.d.ts +1 -1
- package/dist/libs/la-library/src/modules/authentication/authentication.guard.js +2 -2
- package/dist/libs/la-library/src/modules/authentication/authentication.guard.js.map +1 -1
- package/dist/libs/la-library/src/services/custom-repository.service.d.ts +2 -0
- package/dist/libs/la-library/src/services/custom-repository.service.js +6 -28
- package/dist/libs/la-library/src/services/custom-repository.service.js.map +1 -1
- package/dist/libs/la-library/src/services/shared-repository.service.d.ts +11 -0
- package/dist/libs/la-library/src/services/shared-repository.service.js +43 -0
- package/dist/libs/la-library/src/services/shared-repository.service.js.map +1 -0
- package/package.json +1 -1
|
@@ -14,7 +14,7 @@ export declare class AuthenticationGuard<TEntity extends AuthEntity = AuthEntity
|
|
|
14
14
|
extraCheck?: (context: ExecutionContext, payload: IAuthParam) => Promise<boolean>;
|
|
15
15
|
canActivate(context: ExecutionContext): Promise<boolean>;
|
|
16
16
|
private extractTokenFromHeader;
|
|
17
|
-
requestPatcher: (request: any, payload: any) => void
|
|
17
|
+
requestPatcher: (request: any, payload: any) => Promise<void>;
|
|
18
18
|
static provideGuard(): {
|
|
19
19
|
provide: string;
|
|
20
20
|
useClass: typeof AuthenticationGuard;
|
|
@@ -24,7 +24,7 @@ let AuthenticationGuard = AuthenticationGuard_1 = class AuthenticationGuard {
|
|
|
24
24
|
this.authS = authS;
|
|
25
25
|
this.reflector = reflector;
|
|
26
26
|
this.skipEnvironment = 'dev';
|
|
27
|
-
this.requestPatcher = (request, payload) => {
|
|
27
|
+
this.requestPatcher = async (request, payload) => {
|
|
28
28
|
request['user'] = payload;
|
|
29
29
|
};
|
|
30
30
|
}
|
|
@@ -46,7 +46,7 @@ let AuthenticationGuard = AuthenticationGuard_1 = class AuthenticationGuard {
|
|
|
46
46
|
payload = await this.tokenService.decryptToken(token);
|
|
47
47
|
payload.token = token;
|
|
48
48
|
await this.authS.verifyAuthToken(token);
|
|
49
|
-
this.requestPatcher(request, payload);
|
|
49
|
+
await this.requestPatcher(request, payload);
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
52
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authentication.guard.js","sourceRoot":"","sources":["../../../../../../libs/la-library/src/modules/authentication/authentication.guard.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAMwB;AAExB,gEAA4D;AAC5D,qEAAiE;AACjE,+DAAuD;AACvD,2CAA6C;AAC7C,uCAAoD;AACpD,4EAAyD;AAMlD,IAAM,mBAAmB,2BAAzB,MAAM,mBAAmB;IAI9B,YACY,YAA0B,EAC1B,KAAqC,EACrC,SAAoB;QAFpB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,UAAK,GAAL,KAAK,CAAgC;QACrC,cAAS,GAAT,SAAS,CAAW;QAJhC,oBAAe,GAA2B,KAAK,CAAC;QA+ChD,mBAAc,GAAG,
|
|
1
|
+
{"version":3,"file":"authentication.guard.js","sourceRoot":"","sources":["../../../../../../libs/la-library/src/modules/authentication/authentication.guard.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,10 +2,12 @@ import { DataSource, EntityTarget, FindOptionsWhere, QueryRunner, Repository } f
|
|
|
2
2
|
import { BaseEntity } from '../entities/base.entity';
|
|
3
3
|
import { ICheckByParams } from '../interfaces/base.interface';
|
|
4
4
|
import { ToggleActiveDTO } from '../dtos/base.dto';
|
|
5
|
+
import { SharedRepositoryService } from './shared-repository.service';
|
|
5
6
|
export declare class CustomRepositoryService<TEntity extends BaseEntity> extends Repository<BaseEntity & TEntity> {
|
|
6
7
|
target: EntityTarget<TEntity>;
|
|
7
8
|
dataSource: DataSource;
|
|
8
9
|
queryRunner?: QueryRunner;
|
|
10
|
+
protected sharedRepositoryService: SharedRepositoryService<TEntity>;
|
|
9
11
|
constructor(target: EntityTarget<TEntity>, dataSource: DataSource, queryRunner?: QueryRunner);
|
|
10
12
|
_checkIfExistsById(id: string, config?: Pick<ICheckByParams<TEntity>['config'], 'throwError' | 'errorMessage'>): Promise<boolean>;
|
|
11
13
|
_checkExistenceBy(where: FindOptionsWhere<TEntity> | FindOptionsWhere<TEntity>[], config: ICheckByParams<TEntity>['config']): Promise<boolean>;
|
|
@@ -12,48 +12,26 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.CustomRepositoryService = void 0;
|
|
13
13
|
const common_1 = require("@nestjs/common");
|
|
14
14
|
const typeorm_1 = require("typeorm");
|
|
15
|
-
const
|
|
15
|
+
const shared_repository_service_1 = require("./shared-repository.service");
|
|
16
16
|
let CustomRepositoryService = class CustomRepositoryService extends typeorm_1.Repository {
|
|
17
17
|
constructor(target, dataSource, queryRunner) {
|
|
18
18
|
super(target, dataSource.createEntityManager(), queryRunner);
|
|
19
19
|
this.target = target;
|
|
20
20
|
this.dataSource = dataSource;
|
|
21
21
|
this.queryRunner = queryRunner;
|
|
22
|
+
this.sharedRepositoryService = new shared_repository_service_1.SharedRepositoryService();
|
|
22
23
|
}
|
|
23
24
|
async _checkIfExistsById(id, config) {
|
|
24
|
-
return this.
|
|
25
|
-
shouldExist: true,
|
|
26
|
-
...(config || {}),
|
|
27
|
-
});
|
|
25
|
+
return this.sharedRepositoryService.checkIfExistsById(this, id, config);
|
|
28
26
|
}
|
|
29
27
|
async _checkExistenceBy(where, config) {
|
|
30
|
-
|
|
31
|
-
where: where,
|
|
32
|
-
});
|
|
33
|
-
if (exists != config.shouldExist &&
|
|
34
|
-
((config.errorMessage && config.throwError !== false) ||
|
|
35
|
-
config.throwError === true))
|
|
36
|
-
utility_service_1.UtilityClass.throwError({
|
|
37
|
-
statusCode: config.shouldExist ? 404 : 409,
|
|
38
|
-
message: config.errorMessage ||
|
|
39
|
-
(config.shouldExist ? `It does not exist` : `It already exists`),
|
|
40
|
-
});
|
|
41
|
-
return exists;
|
|
28
|
+
return this.sharedRepositoryService.checkExistenceBy(this, where, config);
|
|
42
29
|
}
|
|
43
30
|
async _getAllIDs(where) {
|
|
44
|
-
return
|
|
45
|
-
select: { id: true },
|
|
46
|
-
where: where,
|
|
47
|
-
})).map((x) => x.id);
|
|
31
|
+
return this.sharedRepositoryService.getAllIDs(this, where);
|
|
48
32
|
}
|
|
49
33
|
async _toggleActive(id, body) {
|
|
50
|
-
|
|
51
|
-
utility_service_1.UtilityClass.throwError({
|
|
52
|
-
message: `ID does not exist`,
|
|
53
|
-
statusCode: 404,
|
|
54
|
-
});
|
|
55
|
-
await this.update({ id: id }, body);
|
|
56
|
-
return true;
|
|
34
|
+
return this.sharedRepositoryService.toggleActive(this, id, body);
|
|
57
35
|
}
|
|
58
36
|
};
|
|
59
37
|
exports.CustomRepositoryService = CustomRepositoryService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-repository.service.js","sourceRoot":"","sources":["../../../../../libs/la-library/src/services/custom-repository.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,
|
|
1
|
+
{"version":3,"file":"custom-repository.service.js","sourceRoot":"","sources":["../../../../../libs/la-library/src/services/custom-repository.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,qCAMiB;AAIjB,2EAAsE;AAG/D,IAAM,uBAAuB,GAA7B,MAAM,uBAEX,SAAQ,oBAAgC;IAExC,YACkB,MAA6B,EACtC,UAAsB,EACb,WAAyB;QAEzC,KAAK,CAAC,MAAM,EAAE,UAAU,CAAC,mBAAmB,EAAE,EAAE,WAAW,CAAC,CAAC;QAJ7C,WAAM,GAAN,MAAM,CAAuB;QACtC,eAAU,GAAV,UAAU,CAAY;QACb,gBAAW,GAAX,WAAW,CAAc;QAJjC,4BAAuB,GAAG,IAAI,mDAAuB,EAAW,CAAC;IAO3E,CAAC;IACD,KAAK,CAAC,kBAAkB,CACtB,EAAU,EACV,MAGC;QAED,OAAO,IAAI,CAAC,uBAAuB,CAAC,iBAAiB,CACnD,IAA2B,EAC3B,EAAE,EACF,MAAM,CACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,KAA8D,EAC9D,MAAyC;QAEzC,OAAO,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,CAClD,IAA2B,EAC3B,KAAK,EACL,MAAM,CACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CACd,KAA+D;QAE/D,OAAO,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAC3C,IAA2B,EAC3B,KAAK,CACN,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,EAAU,EAAE,IAAqB;QACnD,OAAO,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAC9C,IAA2B,EAC3B,EAAE,EACF,IAAI,CACL,CAAC;IACJ,CAAC;CACF,CAAA;AApDY,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,mBAAU,GAAE;6CAOU,oBAAU;GANpB,uBAAuB,CAoDnC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { FindOptionsWhere, Repository } from 'typeorm';
|
|
2
|
+
import { ICheckByParams } from '../interfaces/base.interface';
|
|
3
|
+
import { ToggleActiveDTO } from '../dtos/base.dto';
|
|
4
|
+
export declare class SharedRepositoryService<TEntity extends {
|
|
5
|
+
id?: string;
|
|
6
|
+
}> {
|
|
7
|
+
checkIfExistsById(repo: Repository<TEntity>, id: string, config?: Pick<ICheckByParams<TEntity>['config'], 'throwError' | 'errorMessage'>): Promise<boolean>;
|
|
8
|
+
checkExistenceBy(repo: Repository<TEntity>, where: FindOptionsWhere<TEntity> | FindOptionsWhere<TEntity>[], config: ICheckByParams<TEntity>['config']): Promise<boolean>;
|
|
9
|
+
getAllIDs(repo: Repository<TEntity>, where?: FindOptionsWhere<TEntity> | FindOptionsWhere<TEntity>[]): Promise<string[]>;
|
|
10
|
+
toggleActive(repo: Repository<TEntity>, id: string, body: ToggleActiveDTO): Promise<boolean>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SharedRepositoryService = void 0;
|
|
4
|
+
const utility_service_1 = require("./utility.service");
|
|
5
|
+
class SharedRepositoryService {
|
|
6
|
+
async checkIfExistsById(repo, id, config) {
|
|
7
|
+
return this.checkExistenceBy(repo, { id }, {
|
|
8
|
+
shouldExist: true,
|
|
9
|
+
...(config || {}),
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
async checkExistenceBy(repo, where, config) {
|
|
13
|
+
const exists = await repo.exist({
|
|
14
|
+
where: where,
|
|
15
|
+
});
|
|
16
|
+
if (exists != config.shouldExist &&
|
|
17
|
+
((config.errorMessage && config.throwError !== false) ||
|
|
18
|
+
config.throwError === true))
|
|
19
|
+
utility_service_1.UtilityClass.throwError({
|
|
20
|
+
statusCode: config.shouldExist ? 404 : 409,
|
|
21
|
+
message: config.errorMessage ||
|
|
22
|
+
(config.shouldExist ? `It does not exist` : `It already exists`),
|
|
23
|
+
});
|
|
24
|
+
return exists;
|
|
25
|
+
}
|
|
26
|
+
async getAllIDs(repo, where) {
|
|
27
|
+
return (await repo.find({
|
|
28
|
+
select: { id: true },
|
|
29
|
+
where: where,
|
|
30
|
+
})).map((x) => x.id);
|
|
31
|
+
}
|
|
32
|
+
async toggleActive(repo, id, body) {
|
|
33
|
+
if (!(await this.checkIfExistsById(repo, id)))
|
|
34
|
+
utility_service_1.UtilityClass.throwError({
|
|
35
|
+
message: `ID does not exist`,
|
|
36
|
+
statusCode: 404,
|
|
37
|
+
});
|
|
38
|
+
await repo.update({ id: id }, body);
|
|
39
|
+
return true;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.SharedRepositoryService = SharedRepositoryService;
|
|
43
|
+
//# sourceMappingURL=shared-repository.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared-repository.service.js","sourceRoot":"","sources":["../../../../../libs/la-library/src/services/shared-repository.service.ts"],"names":[],"mappings":";;;AAEA,uDAAiD;AAIjD,MAAa,uBAAuB;IAClC,KAAK,CAAC,iBAAiB,CACrB,IAAyB,EACzB,EAAU,EACV,MAGC;QAED,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,EAAE,EAAS,EAAE;YAChD,WAAW,EAAE,IAAI;YACjB,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;SAClB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,IAAyB,EACzB,KAA8D,EAC9D,MAAyC;QAEzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC;YAC9B,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;QACH,IACE,MAAM,IAAI,MAAM,CAAC,WAAW;YAC5B,CAAC,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,UAAU,KAAK,KAAK,CAAC;gBACnD,MAAM,CAAC,UAAU,KAAK,IAAI,CAAC;YAE7B,8BAAY,CAAC,UAAU,CAAC;gBACtB,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;gBAC1C,OAAO,EACL,MAAM,CAAC,YAAY;oBACnB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,mBAAmB,CAAC;aACnE,CAAC,CAAC;QACL,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,SAAS,CACb,IAAyB,EACzB,KAA+D;QAE/D,OAAO,CACL,MAAM,IAAI,CAAC,IAAI,CAAC;YACd,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAgC;YAClD,KAAK,EAAE,KAAK;SACb,CAAC,CACH,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,IAAyB,EACzB,EAAU,EACV,IAAqB;QAErB,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC3C,8BAAY,CAAC,UAAU,CAAC;gBACtB,OAAO,EAAE,mBAAmB;gBAC5B,UAAU,EAAE,GAAG;aAChB,CAAC,CAAC;QACL,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAS,EAAE,EAAE,IAAmC,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AA9DD,0DA8DC"}
|