@alacard-project/shared 1.1.1 → 1.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/dist/dto/index.d.ts +1 -0
- package/dist/dto/index.js +1 -0
- package/dist/dto/index.js.map +1 -1
- package/dist/dto/invoice.dto.d.ts +12 -0
- package/dist/dto/invoice.dto.js +62 -0
- package/dist/dto/invoice.dto.js.map +1 -0
- package/dist/enums/auth.enum.d.ts +2 -3
- package/dist/enums/auth.enum.js +2 -3
- package/dist/enums/auth.enum.js.map +1 -1
- package/dist/index.d.ts +5 -4
- package/dist/index.js +5 -4
- package/dist/index.js.map +1 -1
- package/dist/resilience/circuit-breaker.service.d.ts +2 -3
- package/dist/resilience/circuit-breaker.service.js +9 -15
- package/dist/resilience/circuit-breaker.service.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/{filters/http-exception.filter.js → utils/filters.js} +3 -12
- package/dist/utils/filters.js.map +1 -0
- package/dist/{interceptors/transform.interceptor.d.ts → utils/interceptors.d.ts} +0 -1
- package/dist/{interceptors/transform.interceptor.js → utils/interceptors.js} +3 -3
- package/dist/utils/interceptors.js.map +1 -0
- package/dist/utils/tracing.utils.js +7 -0
- package/dist/utils/tracing.utils.js.map +1 -0
- package/package.json +25 -27
- package/dist/config/base-config.service.d.ts +0 -25
- package/dist/config/base-config.service.js +0 -87
- package/dist/config/base-config.service.js.map +0 -1
- package/dist/constants/logging.constants.d.ts +0 -24
- package/dist/constants/logging.constants.js +0 -28
- package/dist/constants/logging.constants.js.map +0 -1
- package/dist/constants/monitoring.constants.d.ts +0 -51
- package/dist/constants/monitoring.constants.js +0 -55
- package/dist/constants/monitoring.constants.js.map +0 -1
- package/dist/constants/tokens.constants.d.ts +0 -6
- package/dist/constants/tokens.constants.js +0 -10
- package/dist/constants/tokens.constants.js.map +0 -1
- package/dist/filters/http-exception.filter.js.map +0 -1
- package/dist/filters/index.d.ts +0 -1
- package/dist/filters/index.js +0 -18
- package/dist/filters/index.js.map +0 -1
- package/dist/interceptors/http-logging.interceptor.d.ts +0 -10
- package/dist/interceptors/http-logging.interceptor.js +0 -74
- package/dist/interceptors/http-logging.interceptor.js.map +0 -1
- package/dist/interceptors/index.d.ts +0 -2
- package/dist/interceptors/index.js +0 -19
- package/dist/interceptors/index.js.map +0 -1
- package/dist/interceptors/logging.interceptor.d.ts +0 -6
- package/dist/interceptors/logging.interceptor.js +0 -41
- package/dist/interceptors/logging.interceptor.js.map +0 -1
- package/dist/interceptors/transform.interceptor.js.map +0 -1
- package/dist/observability/index.d.ts +0 -2
- package/dist/observability/index.js +0 -19
- package/dist/observability/index.js.map +0 -1
- package/dist/observability/metrics/metrics.module.d.ts +0 -2
- package/dist/observability/metrics/metrics.module.js +0 -28
- package/dist/observability/metrics/metrics.module.js.map +0 -1
- package/dist/observability/tracing.js +0 -28
- package/dist/observability/tracing.js.map +0 -1
- package/dist/utils/logging-client.d.ts +0 -9
- package/dist/utils/logging-client.js +0 -58
- package/dist/utils/logging-client.js.map +0 -1
- package/dist/utils/prometheus.utils.d.ts +0 -9
- package/dist/utils/prometheus.utils.js +0 -66
- package/dist/utils/prometheus.utils.js.map +0 -1
- package/proto/auth.proto +0 -123
- package/proto/card.proto +0 -43
- package/proto/client.proto +0 -45
- package/proto/config.proto +0 -39
- package/proto/dbf.proto +0 -183
- package/proto/logging.proto +0 -143
- package/proto/partner.proto +0 -18
- package/proto/terminal.proto +0 -18
- package/proto/transaction.proto +0 -45
- package/proto/user.proto +0 -122
- package/src/constants/auth-config.constants.ts +0 -16
- package/src/constants/auth.constants.ts +0 -50
- package/src/constants/common.constants.ts +0 -16
- package/src/constants/env.constants.ts +0 -49
- package/src/constants/error-messages.ts +0 -10
- package/src/constants/grpc.constants.ts +0 -43
- package/src/constants/http.constants.ts +0 -11
- package/src/constants/index.ts +0 -11
- package/src/constants/logging-messages.constants.ts +0 -60
- package/src/constants/microservices.constants.ts +0 -62
- package/src/constants/queue.constants.ts +0 -8
- package/src/constants/routes.constants.ts +0 -21
- package/src/contracts/auth.contract.ts +0 -146
- package/src/contracts/config.contract.ts +0 -14
- package/src/contracts/index.ts +0 -14
- package/src/contracts/logging.contract.ts +0 -115
- package/src/contracts/token.contract.ts +0 -47
- package/src/decorators/index.ts +0 -3
- package/src/decorators/permissions.decorator.ts +0 -5
- package/src/decorators/roles.decorator.ts +0 -5
- package/src/decorators/scopes.decorator.ts +0 -4
- package/src/dto/account.dto.ts +0 -28
- package/src/dto/auth.dto.ts +0 -233
- package/src/dto/card.dto.ts +0 -64
- package/src/dto/client.dto.ts +0 -137
- package/src/dto/index.ts +0 -8
- package/src/dto/logging.dto.ts +0 -101
- package/src/dto/partner.dto.ts +0 -18
- package/src/dto/transaction.dto.ts +0 -52
- package/src/dto/user.dto.ts +0 -28
- package/src/enums/auth.enum.ts +0 -13
- package/src/enums/env.enum.ts +0 -7
- package/src/enums/error.enum.ts +0 -28
- package/src/enums/events.enum.ts +0 -22
- package/src/enums/health.enum.ts +0 -7
- package/src/enums/iam.enum.ts +0 -28
- package/src/enums/index.ts +0 -10
- package/src/enums/logging.enum.ts +0 -7
- package/src/enums/notification.enum.ts +0 -5
- package/src/enums/permission.enum.ts +0 -31
- package/src/enums/user.enum.ts +0 -27
- package/src/errors/app.error.ts +0 -33
- package/src/errors/error-map.ts +0 -105
- package/src/filters/http-exception.filter.ts +0 -49
- package/src/filters/index.ts +0 -2
- package/src/index.ts +0 -17
- package/src/interceptors/index.ts +0 -3
- package/src/interceptors/logging.interceptor.ts +0 -37
- package/src/interceptors/transform.interceptor.ts +0 -21
- package/src/observability/index.ts +0 -3
- package/src/observability/metrics/metrics.module.ts +0 -16
- package/src/observability/tracing.ts +0 -33
- package/src/resilience/circuit-breaker.service.ts +0 -46
- package/src/resilience/resilience.module.ts +0 -9
- package/src/types/auth.types.ts +0 -38
- package/src/types/common.types.ts +0 -18
- package/src/types/config.types.ts +0 -32
- package/src/types/iam.types.ts +0 -78
- package/src/types/index.ts +0 -6
- package/src/types/monitoring.types.ts +0 -77
- package/src/types/user.types.ts +0 -11
- package/src/utils/app.utils.ts +0 -52
- package/src/utils/health.utils.ts +0 -24
- package/src/utils/proto-path.ts +0 -21
- package/src/utils/user.utils.ts +0 -3
- package/tsconfig.json +0 -28
- /package/dist/{filters/http-exception.filter.d.ts → utils/filters.d.ts} +0 -0
- /package/dist/{observability/tracing.d.ts → utils/tracing.utils.d.ts} +0 -0
package/src/dto/card.dto.ts
DELETED
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { IsString, IsOptional, IsNumber, IsDate } from 'class-validator';
|
|
2
|
-
import { Type } from 'class-transformer';
|
|
3
|
-
|
|
4
|
-
export class CreateCardDto {
|
|
5
|
-
@IsString()
|
|
6
|
-
cardNumber!: string;
|
|
7
|
-
|
|
8
|
-
@IsOptional()
|
|
9
|
-
@IsString()
|
|
10
|
-
clientId?: string;
|
|
11
|
-
|
|
12
|
-
@IsOptional()
|
|
13
|
-
@IsString()
|
|
14
|
-
accountId?: string;
|
|
15
|
-
|
|
16
|
-
@IsOptional()
|
|
17
|
-
@IsString()
|
|
18
|
-
cardType?: string;
|
|
19
|
-
|
|
20
|
-
@IsOptional()
|
|
21
|
-
@IsString()
|
|
22
|
-
cardStatus?: string;
|
|
23
|
-
|
|
24
|
-
@IsOptional()
|
|
25
|
-
@Type(() => Date)
|
|
26
|
-
@IsDate()
|
|
27
|
-
issuedAt?: Date;
|
|
28
|
-
|
|
29
|
-
@IsOptional()
|
|
30
|
-
@Type(() => Date)
|
|
31
|
-
@IsDate()
|
|
32
|
-
expiresAt?: Date;
|
|
33
|
-
|
|
34
|
-
@IsOptional()
|
|
35
|
-
@IsNumber()
|
|
36
|
-
balance?: number;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export class UpdateCardDto {
|
|
40
|
-
@IsOptional()
|
|
41
|
-
@IsString()
|
|
42
|
-
clientId?: string;
|
|
43
|
-
|
|
44
|
-
@IsOptional()
|
|
45
|
-
@IsString()
|
|
46
|
-
accountId?: string;
|
|
47
|
-
|
|
48
|
-
@IsOptional()
|
|
49
|
-
@IsString()
|
|
50
|
-
cardType?: string;
|
|
51
|
-
|
|
52
|
-
@IsOptional()
|
|
53
|
-
@IsString()
|
|
54
|
-
cardStatus?: string;
|
|
55
|
-
|
|
56
|
-
@IsOptional()
|
|
57
|
-
@Type(() => Date)
|
|
58
|
-
@IsDate()
|
|
59
|
-
expiresAt?: Date;
|
|
60
|
-
|
|
61
|
-
@IsOptional()
|
|
62
|
-
@IsNumber()
|
|
63
|
-
balance?: number;
|
|
64
|
-
}
|
package/src/dto/client.dto.ts
DELETED
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
import { IsString, IsOptional, IsBoolean, IsArray, ValidateNested, IsNumber, IsEnum, IsObject } from 'class-validator';
|
|
2
|
-
import { Type } from 'class-transformer';
|
|
3
|
-
import { RegisterDto } from './auth.dto';
|
|
4
|
-
|
|
5
|
-
export class CreateClientContactDto {
|
|
6
|
-
@IsString()
|
|
7
|
-
contactType!: string;
|
|
8
|
-
|
|
9
|
-
@IsString()
|
|
10
|
-
value!: string;
|
|
11
|
-
|
|
12
|
-
@IsOptional()
|
|
13
|
-
@IsBoolean()
|
|
14
|
-
isPrimary?: boolean;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export class CreateClientDetailDto {
|
|
18
|
-
@IsString()
|
|
19
|
-
detailType!: string;
|
|
20
|
-
|
|
21
|
-
@IsString()
|
|
22
|
-
value!: string;
|
|
23
|
-
|
|
24
|
-
@IsOptional()
|
|
25
|
-
@IsBoolean()
|
|
26
|
-
isActive?: boolean;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
export class CreateClientDto {
|
|
30
|
-
@IsString()
|
|
31
|
-
clientNumber!: string;
|
|
32
|
-
|
|
33
|
-
@IsOptional()
|
|
34
|
-
@IsString()
|
|
35
|
-
clientNumberFormatted?: string;
|
|
36
|
-
|
|
37
|
-
@IsString()
|
|
38
|
-
clientType!: string;
|
|
39
|
-
|
|
40
|
-
@IsOptional()
|
|
41
|
-
@IsString()
|
|
42
|
-
shortName?: string;
|
|
43
|
-
|
|
44
|
-
@IsString()
|
|
45
|
-
fullName!: string;
|
|
46
|
-
|
|
47
|
-
@IsOptional()
|
|
48
|
-
@IsBoolean()
|
|
49
|
-
isActive?: boolean;
|
|
50
|
-
|
|
51
|
-
@IsOptional()
|
|
52
|
-
@IsArray()
|
|
53
|
-
@ValidateNested({ each: true })
|
|
54
|
-
@Type(() => CreateClientContactDto)
|
|
55
|
-
contacts?: CreateClientContactDto[];
|
|
56
|
-
|
|
57
|
-
@IsOptional()
|
|
58
|
-
@IsArray()
|
|
59
|
-
@ValidateNested({ each: true })
|
|
60
|
-
@Type(() => CreateClientDetailDto)
|
|
61
|
-
details?: CreateClientDetailDto[];
|
|
62
|
-
|
|
63
|
-
@IsOptional()
|
|
64
|
-
@ValidateNested()
|
|
65
|
-
@Type(() => RegisterDto)
|
|
66
|
-
adminUser?: RegisterDto;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
export class UpdateClientDto {
|
|
70
|
-
@IsOptional()
|
|
71
|
-
@IsString()
|
|
72
|
-
clientNumber?: string;
|
|
73
|
-
|
|
74
|
-
@IsOptional()
|
|
75
|
-
@IsString()
|
|
76
|
-
clientNumberFormatted?: string;
|
|
77
|
-
|
|
78
|
-
@IsOptional()
|
|
79
|
-
@IsString()
|
|
80
|
-
clientType?: string;
|
|
81
|
-
|
|
82
|
-
@IsOptional()
|
|
83
|
-
@IsString()
|
|
84
|
-
shortName?: string;
|
|
85
|
-
|
|
86
|
-
@IsOptional()
|
|
87
|
-
@IsString()
|
|
88
|
-
fullName?: string;
|
|
89
|
-
|
|
90
|
-
@IsOptional()
|
|
91
|
-
@IsBoolean()
|
|
92
|
-
isActive?: boolean;
|
|
93
|
-
|
|
94
|
-
@IsOptional()
|
|
95
|
-
@IsArray()
|
|
96
|
-
@ValidateNested({ each: true })
|
|
97
|
-
@Type(() => CreateClientContactDto)
|
|
98
|
-
contacts?: CreateClientContactDto[];
|
|
99
|
-
|
|
100
|
-
@IsOptional()
|
|
101
|
-
@IsArray()
|
|
102
|
-
@ValidateNested({ each: true })
|
|
103
|
-
@Type(() => CreateClientDetailDto)
|
|
104
|
-
details?: CreateClientDetailDto[];
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
export class FindClientsQueryDto {
|
|
108
|
-
@IsOptional()
|
|
109
|
-
@IsString()
|
|
110
|
-
search?: string;
|
|
111
|
-
|
|
112
|
-
@IsOptional()
|
|
113
|
-
@IsString()
|
|
114
|
-
searchType?: string;
|
|
115
|
-
|
|
116
|
-
@IsOptional()
|
|
117
|
-
@IsString()
|
|
118
|
-
status?: string;
|
|
119
|
-
|
|
120
|
-
@IsOptional()
|
|
121
|
-
@Type(() => Number)
|
|
122
|
-
@IsNumber()
|
|
123
|
-
skip?: number;
|
|
124
|
-
|
|
125
|
-
@IsOptional()
|
|
126
|
-
@Type(() => Number)
|
|
127
|
-
@IsNumber()
|
|
128
|
-
take?: number;
|
|
129
|
-
|
|
130
|
-
@IsOptional()
|
|
131
|
-
@IsString()
|
|
132
|
-
sortBy?: string;
|
|
133
|
-
|
|
134
|
-
@IsOptional()
|
|
135
|
-
@IsString()
|
|
136
|
-
sortOrder?: 'asc' | 'desc';
|
|
137
|
-
}
|
package/src/dto/index.ts
DELETED
package/src/dto/logging.dto.ts
DELETED
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { IsOptional, IsString, IsEnum, IsDateString, IsInt, Min, Max } from 'class-validator';
|
|
2
|
-
import { Type } from 'class-transformer';
|
|
3
|
-
import { LogLevel } from '../enums';
|
|
4
|
-
|
|
5
|
-
export class LogFilterDto {
|
|
6
|
-
@IsOptional()
|
|
7
|
-
@IsDateString()
|
|
8
|
-
startDate?: string;
|
|
9
|
-
|
|
10
|
-
@IsOptional()
|
|
11
|
-
@IsDateString()
|
|
12
|
-
endDate?: string;
|
|
13
|
-
|
|
14
|
-
@IsOptional()
|
|
15
|
-
@IsString()
|
|
16
|
-
serviceName?: string;
|
|
17
|
-
|
|
18
|
-
@IsOptional()
|
|
19
|
-
@IsEnum(LogLevel)
|
|
20
|
-
level?: LogLevel;
|
|
21
|
-
|
|
22
|
-
@IsOptional()
|
|
23
|
-
@IsString()
|
|
24
|
-
userId?: string;
|
|
25
|
-
|
|
26
|
-
@IsOptional()
|
|
27
|
-
@IsString()
|
|
28
|
-
requestId?: string;
|
|
29
|
-
|
|
30
|
-
@IsOptional()
|
|
31
|
-
@Type(() => Number)
|
|
32
|
-
@IsInt()
|
|
33
|
-
@Min(1)
|
|
34
|
-
page?: number = 1;
|
|
35
|
-
|
|
36
|
-
@IsOptional()
|
|
37
|
-
@Type(() => Number)
|
|
38
|
-
@IsInt()
|
|
39
|
-
@Min(1)
|
|
40
|
-
@Max(100)
|
|
41
|
-
pageSize?: number = 20;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export class LogCleanupDto {
|
|
45
|
-
@IsDateString()
|
|
46
|
-
startDate!: string;
|
|
47
|
-
|
|
48
|
-
@IsDateString()
|
|
49
|
-
endDate!: string;
|
|
50
|
-
|
|
51
|
-
@IsOptional()
|
|
52
|
-
@IsString()
|
|
53
|
-
serviceName?: string;
|
|
54
|
-
|
|
55
|
-
@IsOptional()
|
|
56
|
-
@IsEnum(LogLevel)
|
|
57
|
-
level?: LogLevel;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
export class RetentionPeriodDto {
|
|
61
|
-
@Type(() => Number)
|
|
62
|
-
@IsInt()
|
|
63
|
-
@Min(1)
|
|
64
|
-
@Max(365)
|
|
65
|
-
retentionDays!: number;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
export class UserActionFilterDto {
|
|
69
|
-
@IsOptional()
|
|
70
|
-
@IsDateString()
|
|
71
|
-
startDate?: string;
|
|
72
|
-
|
|
73
|
-
@IsOptional()
|
|
74
|
-
@IsDateString()
|
|
75
|
-
endDate?: string;
|
|
76
|
-
|
|
77
|
-
@IsOptional()
|
|
78
|
-
@IsString()
|
|
79
|
-
userId?: string;
|
|
80
|
-
|
|
81
|
-
@IsOptional()
|
|
82
|
-
@IsString()
|
|
83
|
-
action?: string;
|
|
84
|
-
|
|
85
|
-
@IsOptional()
|
|
86
|
-
@IsString()
|
|
87
|
-
resource?: string;
|
|
88
|
-
|
|
89
|
-
@IsOptional()
|
|
90
|
-
@Type(() => Number)
|
|
91
|
-
@IsInt()
|
|
92
|
-
@Min(1)
|
|
93
|
-
page?: number = 1;
|
|
94
|
-
|
|
95
|
-
@IsOptional()
|
|
96
|
-
@Type(() => Number)
|
|
97
|
-
@IsInt()
|
|
98
|
-
@Min(1)
|
|
99
|
-
@Max(100)
|
|
100
|
-
pageSize?: number = 20;
|
|
101
|
-
}
|
package/src/dto/partner.dto.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { IsString, IsOptional, IsBoolean, ValidateNested, IsObject } from 'class-validator';
|
|
2
|
-
import { Type } from 'class-transformer';
|
|
3
|
-
import { RegisterDto } from './auth.dto';
|
|
4
|
-
|
|
5
|
-
export class PartnerDto {
|
|
6
|
-
@IsString()
|
|
7
|
-
name!: string;
|
|
8
|
-
|
|
9
|
-
@IsString()
|
|
10
|
-
type!: string;
|
|
11
|
-
|
|
12
|
-
@IsOptional()
|
|
13
|
-
@IsBoolean()
|
|
14
|
-
isActive?: boolean;
|
|
15
|
-
@IsObject()
|
|
16
|
-
@Type(() => RegisterDto)
|
|
17
|
-
adminUser?: RegisterDto;
|
|
18
|
-
}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { IsString, IsOptional, IsNumber, Min, IsUUID } from 'class-validator';
|
|
2
|
-
import { Type } from 'class-transformer';
|
|
3
|
-
import type { JsonValue } from '../types/common.types';
|
|
4
|
-
|
|
5
|
-
export class CreateTransactionDto {
|
|
6
|
-
@IsOptional()
|
|
7
|
-
@IsString()
|
|
8
|
-
externalId?: string;
|
|
9
|
-
|
|
10
|
-
@IsString()
|
|
11
|
-
cardId!: string;
|
|
12
|
-
|
|
13
|
-
@IsNumber()
|
|
14
|
-
@Min(0)
|
|
15
|
-
amount!: number;
|
|
16
|
-
|
|
17
|
-
@IsOptional()
|
|
18
|
-
@IsString()
|
|
19
|
-
currency?: string;
|
|
20
|
-
|
|
21
|
-
@IsOptional()
|
|
22
|
-
@IsString()
|
|
23
|
-
description?: string;
|
|
24
|
-
|
|
25
|
-
@IsOptional()
|
|
26
|
-
@IsString()
|
|
27
|
-
type?: string;
|
|
28
|
-
|
|
29
|
-
@IsOptional()
|
|
30
|
-
@IsString()
|
|
31
|
-
status?: string;
|
|
32
|
-
|
|
33
|
-
@IsOptional()
|
|
34
|
-
@IsUUID()
|
|
35
|
-
id?: string;
|
|
36
|
-
|
|
37
|
-
@IsOptional()
|
|
38
|
-
@Type(() => Date)
|
|
39
|
-
transactionDate?: Date;
|
|
40
|
-
|
|
41
|
-
@IsOptional()
|
|
42
|
-
metadata?: any;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
export class UpdateTransactionDto {
|
|
46
|
-
@IsOptional()
|
|
47
|
-
@IsString()
|
|
48
|
-
status?: string;
|
|
49
|
-
|
|
50
|
-
@IsOptional()
|
|
51
|
-
metadata?: JsonValue;
|
|
52
|
-
}
|
package/src/dto/user.dto.ts
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { IsEmail, IsEnum, IsOptional, IsString, IsUUID } from 'class-validator';
|
|
2
|
-
import { UserRole } from '../enums';
|
|
3
|
-
|
|
4
|
-
export class UserDto {
|
|
5
|
-
@IsUUID()
|
|
6
|
-
id!: string;
|
|
7
|
-
|
|
8
|
-
@IsEmail()
|
|
9
|
-
email!: string;
|
|
10
|
-
|
|
11
|
-
@IsString()
|
|
12
|
-
@IsOptional()
|
|
13
|
-
firstName?: string;
|
|
14
|
-
|
|
15
|
-
@IsString()
|
|
16
|
-
@IsOptional()
|
|
17
|
-
lastName?: string;
|
|
18
|
-
|
|
19
|
-
@IsEnum(UserRole)
|
|
20
|
-
role!: UserRole;
|
|
21
|
-
|
|
22
|
-
@IsString()
|
|
23
|
-
@IsOptional()
|
|
24
|
-
phoneNumber?: string;
|
|
25
|
-
|
|
26
|
-
createdAt!: Date;
|
|
27
|
-
updatedAt!: Date;
|
|
28
|
-
}
|
package/src/enums/auth.enum.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export enum CredentialStatus {
|
|
2
|
-
ACTIVE = 'ACTIVE',
|
|
3
|
-
INACTIVE = 'INACTIVE',
|
|
4
|
-
LOCKED = 'LOCKED',
|
|
5
|
-
SUSPENDED = 'SUSPENDED',
|
|
6
|
-
DELETED = 'DELETED',
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export enum ServiceTokenType {
|
|
10
|
-
API = 'API',
|
|
11
|
-
INTERNAL = 'INTERNAL',
|
|
12
|
-
WEBHOOK = 'WEBHOOK',
|
|
13
|
-
}
|
package/src/enums/env.enum.ts
DELETED
package/src/enums/error.enum.ts
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
export enum ErrorCode {
|
|
2
|
-
// Auth Errors
|
|
3
|
-
AUTH_USER_NOT_FOUND = 'AUTH_USER_NOT_FOUND',
|
|
4
|
-
AUTH_USER_ALREADY_EXISTS = 'AUTH_USER_ALREADY_EXISTS',
|
|
5
|
-
AUTH_USER_INACTIVE = 'AUTH_USER_INACTIVE',
|
|
6
|
-
AUTH_INVALID_PASSWORD = 'AUTH_INVALID_PASSWORD',
|
|
7
|
-
AUTH_INVALID_TOKEN = 'AUTH_INVALID_TOKEN',
|
|
8
|
-
AUTH_TOKEN_EXPIRED = 'AUTH_TOKEN_EXPIRED',
|
|
9
|
-
AUTH_ACCESS_DENIED = 'AUTH_ACCESS_DENIED',
|
|
10
|
-
AUTH_INSUFFICIENT_SCOPES = 'AUTH_INSUFFICIENT_SCOPES',
|
|
11
|
-
AUTH_INVALID_CREDENTIALS = 'AUTH_INVALID_CREDENTIALS',
|
|
12
|
-
|
|
13
|
-
// Config Errors
|
|
14
|
-
CONFIG_NOT_FOUND = 'CONFIG_NOT_FOUND',
|
|
15
|
-
CONFIG_LOAD_FAILED = 'CONFIG_LOAD_FAILED',
|
|
16
|
-
|
|
17
|
-
// Logging Errors
|
|
18
|
-
LOG_WRITE_FAILED = 'LOG_WRITE_FAILED',
|
|
19
|
-
LOG_READ_FAILED = 'LOG_READ_FAILED',
|
|
20
|
-
|
|
21
|
-
// General Errors
|
|
22
|
-
INTERNAL_SERVER_ERROR = 'INTERNAL_SERVER_ERROR',
|
|
23
|
-
BAD_REQUEST = 'BAD_REQUEST',
|
|
24
|
-
NOT_FOUND = 'NOT_FOUND',
|
|
25
|
-
VALIDATION_ERROR = 'VALIDATION_ERROR',
|
|
26
|
-
AUTH_USER_BLOCKED = 'AUTH_USER_BLOCKED',
|
|
27
|
-
INVALID_TOKEN = 'INVALID_TOKEN',
|
|
28
|
-
}
|
package/src/enums/events.enum.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
export enum ServiceEventType {
|
|
2
|
-
AUTH_USER_REGISTERED = 'auth.user.registered',
|
|
3
|
-
AUTH_USER_LOGGED_IN = 'auth.user.logged_in',
|
|
4
|
-
AUTH_PASSWORD_RESET_REQUESTED = 'auth.password_reset_requested',
|
|
5
|
-
AUTH_PASSWORD_RESET_SUCCESS = 'auth.password_reset_success',
|
|
6
|
-
USER_PROFILE_UPDATED = 'user.profile_updated',
|
|
7
|
-
USER_DELETED = 'user.deleted',
|
|
8
|
-
AUTH_USER_BLOCKED = 'auth.user.blocked',
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export interface AuthUserRegisteredEvent {
|
|
12
|
-
userId: string;
|
|
13
|
-
email: string;
|
|
14
|
-
role: string;
|
|
15
|
-
occurredAt: Date;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export interface AuthUserBlockedEvent {
|
|
19
|
-
userId: string;
|
|
20
|
-
reason?: string;
|
|
21
|
-
blockedAt: Date;
|
|
22
|
-
}
|
package/src/enums/health.enum.ts
DELETED
package/src/enums/iam.enum.ts
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Subject Type Enum
|
|
3
|
-
* Defines the type of subject in the system (immutable after creation)
|
|
4
|
-
*/
|
|
5
|
-
export enum SubjectType {
|
|
6
|
-
EMPLOYEE = 'EMPLOYEE',
|
|
7
|
-
CLIENT = 'CLIENT',
|
|
8
|
-
PARTNER = 'PARTNER',
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Identifier Type Enum
|
|
13
|
-
* Defines the type of login identifier used for authentication
|
|
14
|
-
*/
|
|
15
|
-
export enum IdentifierType {
|
|
16
|
-
EMAIL = 'EMAIL',
|
|
17
|
-
USERNAME = 'USERNAME',
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* Identity Status Enum
|
|
22
|
-
* Defines the status of an identity in the IAM system
|
|
23
|
-
*/
|
|
24
|
-
export enum IdentityStatus {
|
|
25
|
-
ACTIVE = 'ACTIVE',
|
|
26
|
-
BLOCKED = 'BLOCKED',
|
|
27
|
-
DELETED = 'DELETED',
|
|
28
|
-
}
|
package/src/enums/index.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export * from './env.enum';
|
|
2
|
-
export * from './user.enum';
|
|
3
|
-
export * from './iam.enum';
|
|
4
|
-
export * from './health.enum';
|
|
5
|
-
export * from './logging.enum';
|
|
6
|
-
export * from './notification.enum';
|
|
7
|
-
export * from './error.enum';
|
|
8
|
-
export * from './auth.enum';
|
|
9
|
-
export * from './permission.enum';
|
|
10
|
-
export * from './events.enum';
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
export enum PermissionScope {
|
|
2
|
-
// User Management
|
|
3
|
-
USERS_VIEW = 'users:view',
|
|
4
|
-
USERS_MANAGE = 'users:manage',
|
|
5
|
-
|
|
6
|
-
// Auth Management
|
|
7
|
-
ROLES_MANAGE = 'roles:manage',
|
|
8
|
-
PERMISSIONS_MANAGE = 'permissions:manage',
|
|
9
|
-
|
|
10
|
-
// Client Management
|
|
11
|
-
CLIENTS_VIEW = 'clients:view',
|
|
12
|
-
CLIENTS_MANAGE = 'clients:manage',
|
|
13
|
-
|
|
14
|
-
// Partner Management
|
|
15
|
-
PARTNERS_VIEW = 'partners:view',
|
|
16
|
-
PARTNERS_MANAGE = 'partners:manage',
|
|
17
|
-
|
|
18
|
-
// Financial/Accounting
|
|
19
|
-
INVOICES_VIEW = 'invoices:view',
|
|
20
|
-
INVOICES_MANAGE = 'invoices:manage',
|
|
21
|
-
TRANSACTIONS_VIEW = 'transactions:view',
|
|
22
|
-
TRANSACTIONS_MANAGE = 'transactions:manage',
|
|
23
|
-
|
|
24
|
-
// System Config
|
|
25
|
-
CONFIG_VIEW = 'config:view',
|
|
26
|
-
CONFIG_MANAGE = 'config:manage',
|
|
27
|
-
|
|
28
|
-
// Logging/Monitoring
|
|
29
|
-
LOGS_VIEW = 'logs:view',
|
|
30
|
-
METRICS_VIEW = 'metrics:view',
|
|
31
|
-
}
|
package/src/enums/user.enum.ts
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
export enum UserRole {
|
|
2
|
-
SUPER_ADMIN = 'SUPER_ADMIN',
|
|
3
|
-
ADMIN = 'ADMIN',
|
|
4
|
-
MANAGER = 'MANAGER',
|
|
5
|
-
ACCOUNTANT = 'ACCOUNTANT',
|
|
6
|
-
PARTNER = 'PARTNER',
|
|
7
|
-
CLIENT = 'CLIENT',
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export enum UserStatus {
|
|
11
|
-
ACTIVE = 'ACTIVE',
|
|
12
|
-
INACTIVE = 'INACTIVE',
|
|
13
|
-
PENDING = 'PENDING',
|
|
14
|
-
SUSPENDED = 'SUSPENDED',
|
|
15
|
-
BLOCKED = 'BLOCKED',
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export enum UserScope {
|
|
19
|
-
READ = 'READ',
|
|
20
|
-
WRITE = 'WRITE',
|
|
21
|
-
DELETE = 'DELETE',
|
|
22
|
-
ADMIN = 'ADMIN',
|
|
23
|
-
PROFILE_READ = 'PROFILE_READ',
|
|
24
|
-
CARDS_READ = 'CARDS_READ',
|
|
25
|
-
TRANSACTIONS_READ = 'TRANSACTIONS_READ',
|
|
26
|
-
LOGS_READ = 'LOGS_READ',
|
|
27
|
-
}
|
package/src/errors/app.error.ts
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { ErrorCode } from '../enums/error.enum';
|
|
2
|
-
import { ERROR_MAP } from './error-map';
|
|
3
|
-
|
|
4
|
-
export class AppError extends Error {
|
|
5
|
-
public readonly code: ErrorCode;
|
|
6
|
-
public readonly statusCode: number;
|
|
7
|
-
public readonly description?: string;
|
|
8
|
-
public readonly metadata?: any;
|
|
9
|
-
|
|
10
|
-
constructor(code: ErrorCode, customMessage?: string, metadata?: any) {
|
|
11
|
-
const errorDetail = ERROR_MAP[code] || ERROR_MAP[ErrorCode.INTERNAL_SERVER_ERROR];
|
|
12
|
-
super(customMessage || errorDetail.message);
|
|
13
|
-
|
|
14
|
-
this.code = code;
|
|
15
|
-
this.statusCode = errorDetail.statusCode;
|
|
16
|
-
this.description = errorDetail.description;
|
|
17
|
-
this.metadata = metadata;
|
|
18
|
-
|
|
19
|
-
Object.setPrototypeOf(this, AppError.prototype);
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
toJSON() {
|
|
23
|
-
return {
|
|
24
|
-
success: false,
|
|
25
|
-
error: {
|
|
26
|
-
code: this.code,
|
|
27
|
-
message: this.message,
|
|
28
|
-
description: this.description,
|
|
29
|
-
metadata: this.metadata,
|
|
30
|
-
},
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
}
|