rez_core 1.0.41 → 1.0.42

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 (35) hide show
  1. package/.idea/250218_nodejs_core.iml +12 -0
  2. package/.idea/codeStyles/Project.xml +59 -0
  3. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  4. package/.idea/dataSources.xml +12 -0
  5. package/.idea/modules.xml +8 -0
  6. package/.idea/prettier.xml +6 -0
  7. package/.idea/vcs.xml +6 -0
  8. package/dist/module/auth/guards/role.guard.js +3 -3
  9. package/dist/module/meta/service/media-data.service.js +1 -1
  10. package/dist/module/meta/service/media-data.service.js.map +1 -1
  11. package/dist/tsconfig.build.tsbuildinfo +1 -1
  12. package/package.json +1 -1
  13. package/src/module/auth/guards/jwt.guard.ts +22 -22
  14. package/src/module/auth/guards/role.guard.ts +68 -68
  15. package/src/module/auth/services/jwt.service.ts +11 -11
  16. package/src/module/auth/strategies/local.strategy.ts +13 -13
  17. package/src/module/dev/dev.module.ts +12 -12
  18. package/src/module/dev/service/dev.service.ts +7 -7
  19. package/src/module/enterprise/entity/enterprise.entity.ts +37 -37
  20. package/src/module/enterprise/entity/organization.entity.ts +80 -80
  21. package/src/module/meta/dto/entity-list-data.dto.ts +6 -6
  22. package/src/module/meta/entity/preference.entity.ts +65 -65
  23. package/src/module/meta/repository/preference.repository.ts +20 -20
  24. package/src/module/meta/service/media-data.service.ts +1 -1
  25. package/src/module/module/controller/menu.controller.ts +15 -15
  26. package/src/module/module/entity/module-access.entity.ts +22 -22
  27. package/src/module/module/entity/module-action.entity.ts +19 -19
  28. package/src/module/user/controller/user.controller.ts +28 -28
  29. package/src/module/user/dto/update-user.dto.ts +4 -4
  30. package/src/module/user/entity/user-role-mapping.entity.ts +21 -21
  31. package/src/module/user/entity/user-session.entity.ts +61 -61
  32. package/src/module/user/repository/userSession.repository.ts +33 -33
  33. package/src/utils/service/encryptUtil.service.ts +97 -97
  34. package/src/utils/service/excelUtil.service.ts +15 -15
  35. package/src/utils/service/reflection-helper.service.ts +53 -53
@@ -1,20 +1,20 @@
1
- import { Injectable } from '@nestjs/common';
2
- import { InjectRepository } from '@nestjs/typeorm';
3
- import { PreferenceMaster } from '../entity/preference.entity';
4
- import { Repository } from 'typeorm';
5
-
6
- @Injectable()
7
- export class PreferenceRepository {
8
- constructor(
9
- @InjectRepository(PreferenceMaster)
10
- private readonly preferenceRepository: Repository<PreferenceMaster>,
11
- ) {}
12
-
13
- async findByPreferenceKey(
14
- preferenceKey: string,
15
- ): Promise<PreferenceMaster | null> {
16
- return await this.preferenceRepository.findOne({
17
- where: { preference_key: preferenceKey },
18
- });
19
- }
20
- }
1
+ import { Injectable } from '@nestjs/common';
2
+ import { InjectRepository } from '@nestjs/typeorm';
3
+ import { PreferenceMaster } from '../entity/preference.entity';
4
+ import { Repository } from 'typeorm';
5
+
6
+ @Injectable()
7
+ export class PreferenceRepository {
8
+ constructor(
9
+ @InjectRepository(PreferenceMaster)
10
+ private readonly preferenceRepository: Repository<PreferenceMaster>,
11
+ ) {}
12
+
13
+ async findByPreferenceKey(
14
+ preferenceKey: string,
15
+ ): Promise<PreferenceMaster | null> {
16
+ return await this.preferenceRepository.findOne({
17
+ where: { preference_key: preferenceKey },
18
+ });
19
+ }
20
+ }
@@ -44,7 +44,7 @@ export class MediaDataService extends EntityServiceImpl {
44
44
  const ext = fileName.split('.').pop()?.toLowerCase() ?? '';
45
45
 
46
46
  const id = uuidv4();
47
- const s3Key = `uploads/${mappedAttributeKey}/${id}.${ext}`;
47
+ const s3Key = `uploads/${id}.${ext}`;
48
48
  console.log(s3Key)
49
49
 
50
50
  const uploadUrl = await this.s3.getSignedUrlPromise('putObject', {
@@ -1,15 +1,15 @@
1
- import { Controller, Get, Request, UseGuards } from '@nestjs/common';
2
- import { MenuService } from '../service/menu.service';
3
- import { JwtAuthGuard } from 'src/module/auth/guards/jwt.guard';
4
-
5
- @Controller('menu')
6
- export class MenuController {
7
- constructor(private readonly menuService: MenuService) {}
8
-
9
- @UseGuards(JwtAuthGuard)
10
- @Get()
11
- async getMenu(@Request() req) {
12
- const userId = req.user.userId;
13
- return this.menuService.getUserMenu(userId);
14
- }
15
- }
1
+ import { Controller, Get, Request, UseGuards } from '@nestjs/common';
2
+ import { MenuService } from '../service/menu.service';
3
+ import { JwtAuthGuard } from 'src/module/auth/guards/jwt.guard';
4
+
5
+ @Controller('menu')
6
+ export class MenuController {
7
+ constructor(private readonly menuService: MenuService) {}
8
+
9
+ @UseGuards(JwtAuthGuard)
10
+ @Get()
11
+ async getMenu(@Request() req) {
12
+ const userId = req.user.userId;
13
+ return this.menuService.getUserMenu(userId);
14
+ }
15
+ }
@@ -1,22 +1,22 @@
1
- import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm';
2
-
3
- @Entity({ name: 'cr_module_access' })
4
- export class ModuleAccess {
5
- @PrimaryGeneratedColumn()
6
- id: number;
7
-
8
- @Column({type: 'varchar', length: 100, nullable: true})
9
- module_code: string;
10
-
11
- @Column({type: 'varchar', length: 100, nullable: true })
12
- role_code: string;
13
-
14
- @Column({type: 'int', nullable: true })
15
- access_flag: number;
16
-
17
- @Column({type: 'varchar', length: 100, nullable: true })
18
- action_type: string;
19
-
20
- @Column({type: 'varchar', length: 100, nullable: true})
21
- app_code: string;
22
- }
1
+ import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm';
2
+
3
+ @Entity({ name: 'cr_module_access' })
4
+ export class ModuleAccess {
5
+ @PrimaryGeneratedColumn()
6
+ id: number;
7
+
8
+ @Column({type: 'varchar', length: 100, nullable: true})
9
+ module_code: string;
10
+
11
+ @Column({type: 'varchar', length: 100, nullable: true })
12
+ role_code: string;
13
+
14
+ @Column({type: 'int', nullable: true })
15
+ access_flag: number;
16
+
17
+ @Column({type: 'varchar', length: 100, nullable: true })
18
+ action_type: string;
19
+
20
+ @Column({type: 'varchar', length: 100, nullable: true})
21
+ app_code: string;
22
+ }
@@ -1,19 +1,19 @@
1
- import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm';
2
-
3
- @Entity({ name: 'module_action' })
4
- export class ModuleAction {
5
- @PrimaryGeneratedColumn()
6
- id: number;
7
-
8
- @Column({type: 'int', nullable: true})
9
- module_id: number;
10
-
11
- @Column({type: 'varchar', length: 100, nullable: true })
12
- module_code: string;
13
-
14
- @Column({type: 'varchar', length: 100, nullable: true })
15
- action_name:string
16
-
17
- @Column({type: 'varchar', length: 50, nullable: true })
18
- action_type: string;
19
- }
1
+ import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm';
2
+
3
+ @Entity({ name: 'module_action' })
4
+ export class ModuleAction {
5
+ @PrimaryGeneratedColumn()
6
+ id: number;
7
+
8
+ @Column({type: 'int', nullable: true})
9
+ module_id: number;
10
+
11
+ @Column({type: 'varchar', length: 100, nullable: true })
12
+ module_code: string;
13
+
14
+ @Column({type: 'varchar', length: 100, nullable: true })
15
+ action_name:string
16
+
17
+ @Column({type: 'varchar', length: 50, nullable: true })
18
+ action_type: string;
19
+ }
@@ -1,28 +1,28 @@
1
- import {
2
- Body,
3
- Controller,
4
- HttpStatus,
5
- Inject,
6
- Post,
7
- Res,
8
- ValidationPipe,
9
- } from '@nestjs/common';
10
- import { UserService } from '../service/user.service';
11
- import { CreateUserDto } from '../dto/create-user.dto';
12
- import { Response } from 'express';
13
-
14
- @Controller('user')
15
- export class UserController {
16
- constructor(
17
- @Inject('UserService') private readonly userService: UserService,
18
- ) {}
19
-
20
- @Post('signup')
21
- async signup(
22
- @Body(new ValidationPipe()) createUserDto: CreateUserDto,
23
- @Res() res: Response,
24
- ) {
25
- const result = await this.userService.createEntity(createUserDto, null);
26
- res.status(HttpStatus.OK).json(result);
27
- }
28
- }
1
+ import {
2
+ Body,
3
+ Controller,
4
+ HttpStatus,
5
+ Inject,
6
+ Post,
7
+ Res,
8
+ ValidationPipe,
9
+ } from '@nestjs/common';
10
+ import { UserService } from '../service/user.service';
11
+ import { CreateUserDto } from '../dto/create-user.dto';
12
+ import { Response } from 'express';
13
+
14
+ @Controller('user')
15
+ export class UserController {
16
+ constructor(
17
+ @Inject('UserService') private readonly userService: UserService,
18
+ ) {}
19
+
20
+ @Post('signup')
21
+ async signup(
22
+ @Body(new ValidationPipe()) createUserDto: CreateUserDto,
23
+ @Res() res: Response,
24
+ ) {
25
+ const result = await this.userService.createEntity(createUserDto, null);
26
+ res.status(HttpStatus.OK).json(result);
27
+ }
28
+ }
@@ -1,4 +1,4 @@
1
- import { PartialType } from '@nestjs/mapped-types';
2
- import { CreateUserDto } from './create-user.dto';
3
-
4
- export class UpdateUserDto extends PartialType(CreateUserDto) {}
1
+ import { PartialType } from '@nestjs/mapped-types';
2
+ import { CreateUserDto } from './create-user.dto';
3
+
4
+ export class UpdateUserDto extends PartialType(CreateUserDto) {}
@@ -1,21 +1,21 @@
1
- import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm';
2
-
3
- @Entity({ name: 'cr_user_role_mapping' })
4
- export class UserRoleMapping {
5
- constructor(user_id: number, role_id: number) {
6
- this.user_id = user_id;
7
- this.role_id = role_id;
8
- }
9
-
10
- @PrimaryGeneratedColumn()
11
- id: number;
12
-
13
- @Column({ type: 'bigint', nullable: true })
14
- user_id: number;
15
-
16
- @Column({ type: 'bigint', nullable: true })
17
- role_id: number;
18
-
19
- @Column({ type: 'int', nullable: true })
20
- is_default: number;
21
- }
1
+ import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm';
2
+
3
+ @Entity({ name: 'cr_user_role_mapping' })
4
+ export class UserRoleMapping {
5
+ constructor(user_id: number, role_id: number) {
6
+ this.user_id = user_id;
7
+ this.role_id = role_id;
8
+ }
9
+
10
+ @PrimaryGeneratedColumn()
11
+ id: number;
12
+
13
+ @Column({ type: 'bigint', nullable: true })
14
+ user_id: number;
15
+
16
+ @Column({ type: 'bigint', nullable: true })
17
+ role_id: number;
18
+
19
+ @Column({ type: 'int', nullable: true })
20
+ is_default: number;
21
+ }
@@ -1,61 +1,61 @@
1
- import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm';
2
-
3
- @Entity({ name: 'cr_user_session' })
4
- export class UserSession {
5
- @PrimaryGeneratedColumn()
6
- id: number;
7
-
8
- @Column({
9
- name: 'is_session_loggedout',
10
- nullable: true,
11
- type: 'int',
12
- })
13
- is_session_loggedout: number;
14
-
15
- @Column({
16
- name: 'login_id',
17
- nullable: true,
18
- length: 50,
19
- })
20
- login_id: string;
21
-
22
- @Column({
23
- name: 'login_time',
24
- nullable: true,
25
- })
26
- login_time: Date;
27
-
28
- @Column({
29
- name: 'logout_time',
30
- nullable: true,
31
- })
32
- logout_time: Date;
33
-
34
- @Column({
35
- name: 'session_key',
36
- nullable: true,
37
- length: 100,
38
- })
39
- session_key: string;
40
-
41
- @Column({
42
- name: 'user_id',
43
- nullable: true,
44
- type: 'bigint',
45
- })
46
- user_id: number;
47
-
48
- @Column({
49
- name: 'access_token',
50
- nullable: true,
51
- type: 'varchar',
52
- length: 5000,
53
- })
54
- access_token: string;
55
-
56
- @Column({
57
- name: 'expiry_date',
58
- nullable: true,
59
- })
60
- expiry_date: Date;
61
- }
1
+ import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm';
2
+
3
+ @Entity({ name: 'cr_user_session' })
4
+ export class UserSession {
5
+ @PrimaryGeneratedColumn()
6
+ id: number;
7
+
8
+ @Column({
9
+ name: 'is_session_loggedout',
10
+ nullable: true,
11
+ type: 'int',
12
+ })
13
+ is_session_loggedout: number;
14
+
15
+ @Column({
16
+ name: 'login_id',
17
+ nullable: true,
18
+ length: 50,
19
+ })
20
+ login_id: string;
21
+
22
+ @Column({
23
+ name: 'login_time',
24
+ nullable: true,
25
+ })
26
+ login_time: Date;
27
+
28
+ @Column({
29
+ name: 'logout_time',
30
+ nullable: true,
31
+ })
32
+ logout_time: Date;
33
+
34
+ @Column({
35
+ name: 'session_key',
36
+ nullable: true,
37
+ length: 100,
38
+ })
39
+ session_key: string;
40
+
41
+ @Column({
42
+ name: 'user_id',
43
+ nullable: true,
44
+ type: 'bigint',
45
+ })
46
+ user_id: number;
47
+
48
+ @Column({
49
+ name: 'access_token',
50
+ nullable: true,
51
+ type: 'varchar',
52
+ length: 5000,
53
+ })
54
+ access_token: string;
55
+
56
+ @Column({
57
+ name: 'expiry_date',
58
+ nullable: true,
59
+ })
60
+ expiry_date: Date;
61
+ }
@@ -1,33 +1,33 @@
1
- import { Repository } from 'typeorm';
2
- import { UserSession } from '../entity/user-session.entity';
3
- import { Injectable } from '@nestjs/common';
4
- import { InjectRepository } from '@nestjs/typeorm';
5
-
6
- @Injectable()
7
- export class UserSessionRepository {
8
- constructor(
9
- @InjectRepository(UserSession)
10
- private userSessionRepo: Repository<UserSession>,
11
- ) {}
12
-
13
- async findBySessionKey(sessionKey: string): Promise<UserSession | null> {
14
- return this.userSessionRepo.findOne({ where: { session_key: sessionKey } });
15
- }
16
-
17
- async findActiveSessionByUserId(userId: number): Promise<UserSession | null> {
18
- return this.userSessionRepo.findOne({
19
- where: { user_id: userId, is_session_loggedout: 0 },
20
- });
21
- }
22
-
23
- async saveSession(session: UserSession): Promise<UserSession> {
24
- return this.userSessionRepo.save(session);
25
- }
26
-
27
- async logoutSession(sessionKey: string): Promise<void> {
28
- await this.userSessionRepo.update(
29
- { session_key: sessionKey },
30
- { is_session_loggedout: 1, logout_time: new Date() },
31
- );
32
- }
33
- }
1
+ import { Repository } from 'typeorm';
2
+ import { UserSession } from '../entity/user-session.entity';
3
+ import { Injectable } from '@nestjs/common';
4
+ import { InjectRepository } from '@nestjs/typeorm';
5
+
6
+ @Injectable()
7
+ export class UserSessionRepository {
8
+ constructor(
9
+ @InjectRepository(UserSession)
10
+ private userSessionRepo: Repository<UserSession>,
11
+ ) {}
12
+
13
+ async findBySessionKey(sessionKey: string): Promise<UserSession | null> {
14
+ return this.userSessionRepo.findOne({ where: { session_key: sessionKey } });
15
+ }
16
+
17
+ async findActiveSessionByUserId(userId: number): Promise<UserSession | null> {
18
+ return this.userSessionRepo.findOne({
19
+ where: { user_id: userId, is_session_loggedout: 0 },
20
+ });
21
+ }
22
+
23
+ async saveSession(session: UserSession): Promise<UserSession> {
24
+ return this.userSessionRepo.save(session);
25
+ }
26
+
27
+ async logoutSession(sessionKey: string): Promise<void> {
28
+ await this.userSessionRepo.update(
29
+ { session_key: sessionKey },
30
+ { is_session_loggedout: 1, logout_time: new Date() },
31
+ );
32
+ }
33
+ }
@@ -1,97 +1,97 @@
1
- import { Injectable, InternalServerErrorException } from '@nestjs/common';
2
- import * as crypto from 'crypto';
3
-
4
- const CryptoJS = require('crypto-js');
5
- const encryptionType = 'aes-256-cbc';
6
-
7
- @Injectable()
8
- export class EncryptUtilService {
9
- constructor() {}
10
-
11
- static encryptGCM(data: any, Datakey: string, Dataiv: string) {
12
- try {
13
- const cipher = crypto.createCipheriv('aes-256-gcm', Datakey, Dataiv);
14
- let encrypted = Buffer.concat([
15
- cipher.update(data, 'utf8'),
16
- cipher.final(),
17
- ]);
18
- const tag = cipher.getAuthTag();
19
- return Buffer.concat([encrypted, tag]).toString('base64');
20
- } catch (error) {
21
- throw new InternalServerErrorException('Encryption process failed');
22
- }
23
- }
24
-
25
- static decryptGCM(data: any, Datakey: any, Dataiv: any) {
26
- try {
27
- data = Buffer.from(data, 'base64');
28
- const decipher = crypto.createDecipheriv('aes-256-gcm', Datakey, Dataiv);
29
- const tag = data.slice(data.length - 16);
30
- decipher.setAuthTag(tag);
31
- data = data.slice(0, data.length - 16);
32
- let decrypted = decipher.update(data, 'utf8') + decipher.final('utf8');
33
- return decrypted;
34
- } catch (error) {
35
- throw new InternalServerErrorException('Encryption process failed');
36
- }
37
- }
38
-
39
- static encryptCBC(data: any, Datakey: any, Dataiv: any) {
40
- let encryptedRequest;
41
- try {
42
- let cipher = CryptoJS.AES.encrypt(data, Datakey, {
43
- iv: Dataiv,
44
- mode: CryptoJS.mode.CBC,
45
- });
46
- encryptedRequest = cipher.toString();
47
- } catch (error) {
48
- console.log(error);
49
- throw new InternalServerErrorException('Encryption process failed');
50
- }
51
- return encryptedRequest;
52
- }
53
-
54
- static decryptCBC(data: any, Datakey: any, Dataiv: any) {
55
- let decryptRequest;
56
- try {
57
- let cipher = CryptoJS.AES.decrypt(data, Datakey, {
58
- iv: Dataiv,
59
- mode: CryptoJS.mode.CBC,
60
- });
61
- decryptRequest = cipher.toString(CryptoJS.enc.Utf8);
62
- } catch (error) {
63
- throw new InternalServerErrorException('Encryption process failed');
64
- }
65
- return decryptRequest;
66
- }
67
-
68
- static encryptRequest(data: any, Datakey: any, Dataiv: any, type?: any) {
69
- try {
70
- switch (type) {
71
- case 'GCM':
72
- return this.encryptGCM(data, Datakey, Dataiv);
73
- case 'CBC':
74
- return this.encryptCBC(data, Datakey, Dataiv);
75
- default:
76
- return this.encryptCBC(data, Datakey, Dataiv);
77
- }
78
- } catch (error) {
79
- throw new InternalServerErrorException('Encryption process failed');
80
- }
81
- }
82
-
83
- static decryptRequest(data: any, Datakey: any, Dataiv: any, type?: any) {
84
- try {
85
- switch (type) {
86
- case 'GCM':
87
- return this.decryptGCM(data, Datakey, Dataiv);
88
- case 'CBC':
89
- return this.decryptCBC(data, Datakey, Dataiv);
90
- default:
91
- return this.decryptCBC(data, Datakey, Dataiv);
92
- }
93
- } catch (error) {
94
- throw new InternalServerErrorException('Encryption process failed');
95
- }
96
- }
97
- }
1
+ import { Injectable, InternalServerErrorException } from '@nestjs/common';
2
+ import * as crypto from 'crypto';
3
+
4
+ const CryptoJS = require('crypto-js');
5
+ const encryptionType = 'aes-256-cbc';
6
+
7
+ @Injectable()
8
+ export class EncryptUtilService {
9
+ constructor() {}
10
+
11
+ static encryptGCM(data: any, Datakey: string, Dataiv: string) {
12
+ try {
13
+ const cipher = crypto.createCipheriv('aes-256-gcm', Datakey, Dataiv);
14
+ let encrypted = Buffer.concat([
15
+ cipher.update(data, 'utf8'),
16
+ cipher.final(),
17
+ ]);
18
+ const tag = cipher.getAuthTag();
19
+ return Buffer.concat([encrypted, tag]).toString('base64');
20
+ } catch (error) {
21
+ throw new InternalServerErrorException('Encryption process failed');
22
+ }
23
+ }
24
+
25
+ static decryptGCM(data: any, Datakey: any, Dataiv: any) {
26
+ try {
27
+ data = Buffer.from(data, 'base64');
28
+ const decipher = crypto.createDecipheriv('aes-256-gcm', Datakey, Dataiv);
29
+ const tag = data.slice(data.length - 16);
30
+ decipher.setAuthTag(tag);
31
+ data = data.slice(0, data.length - 16);
32
+ let decrypted = decipher.update(data, 'utf8') + decipher.final('utf8');
33
+ return decrypted;
34
+ } catch (error) {
35
+ throw new InternalServerErrorException('Encryption process failed');
36
+ }
37
+ }
38
+
39
+ static encryptCBC(data: any, Datakey: any, Dataiv: any) {
40
+ let encryptedRequest;
41
+ try {
42
+ let cipher = CryptoJS.AES.encrypt(data, Datakey, {
43
+ iv: Dataiv,
44
+ mode: CryptoJS.mode.CBC,
45
+ });
46
+ encryptedRequest = cipher.toString();
47
+ } catch (error) {
48
+ console.log(error);
49
+ throw new InternalServerErrorException('Encryption process failed');
50
+ }
51
+ return encryptedRequest;
52
+ }
53
+
54
+ static decryptCBC(data: any, Datakey: any, Dataiv: any) {
55
+ let decryptRequest;
56
+ try {
57
+ let cipher = CryptoJS.AES.decrypt(data, Datakey, {
58
+ iv: Dataiv,
59
+ mode: CryptoJS.mode.CBC,
60
+ });
61
+ decryptRequest = cipher.toString(CryptoJS.enc.Utf8);
62
+ } catch (error) {
63
+ throw new InternalServerErrorException('Encryption process failed');
64
+ }
65
+ return decryptRequest;
66
+ }
67
+
68
+ static encryptRequest(data: any, Datakey: any, Dataiv: any, type?: any) {
69
+ try {
70
+ switch (type) {
71
+ case 'GCM':
72
+ return this.encryptGCM(data, Datakey, Dataiv);
73
+ case 'CBC':
74
+ return this.encryptCBC(data, Datakey, Dataiv);
75
+ default:
76
+ return this.encryptCBC(data, Datakey, Dataiv);
77
+ }
78
+ } catch (error) {
79
+ throw new InternalServerErrorException('Encryption process failed');
80
+ }
81
+ }
82
+
83
+ static decryptRequest(data: any, Datakey: any, Dataiv: any, type?: any) {
84
+ try {
85
+ switch (type) {
86
+ case 'GCM':
87
+ return this.decryptGCM(data, Datakey, Dataiv);
88
+ case 'CBC':
89
+ return this.decryptCBC(data, Datakey, Dataiv);
90
+ default:
91
+ return this.decryptCBC(data, Datakey, Dataiv);
92
+ }
93
+ } catch (error) {
94
+ throw new InternalServerErrorException('Encryption process failed');
95
+ }
96
+ }
97
+ }