@alacard-project/shared 1.0.6 → 1.0.8

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.
@@ -34,4 +34,18 @@ export declare const LOGGING_MESSAGES: {
34
34
  PASSWORD_RESET_TOKEN_CREATED: string;
35
35
  PASSWORD_RESET_SUCCESSFUL: string;
36
36
  PASSWORD_RESET_FAILED: string;
37
+ LOG_EVENT_FAILED: string;
38
+ LOG_USER_ACTION_FAILED: string;
39
+ UPDATE_SERVICE_STATUS_FAILED: string;
40
+ GET_SERVICE_LOGS_FAILED: string;
41
+ GET_SERVICE_STATUS_FAILED: string;
42
+ GET_USER_ACTIONS_FAILED: string;
43
+ };
44
+ export declare const LOG_CLEANUP_MESSAGES: {
45
+ CLEANUP_STARTED: string;
46
+ CLEANUP_COMPLETED: string;
47
+ CLEANUP_FAILED: string;
48
+ FILE_CLEANUP_SUCCESS: string;
49
+ FILE_CLEANUP_FAILED: string;
50
+ RETENTION_UPDATED: string;
37
51
  };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LOGGING_MESSAGES = void 0;
3
+ exports.LOG_CLEANUP_MESSAGES = exports.LOGGING_MESSAGES = void 0;
4
4
  exports.LOGGING_MESSAGES = {
5
5
  USER_LOGGED_IN: 'User successfully logged in',
6
6
  USER_REGISTERED: 'New user registered',
@@ -37,5 +37,19 @@ exports.LOGGING_MESSAGES = {
37
37
  PASSWORD_RESET_TOKEN_CREATED: 'Password reset token created',
38
38
  PASSWORD_RESET_SUCCESSFUL: 'Password reset successful',
39
39
  PASSWORD_RESET_FAILED: 'Password reset failed',
40
+ LOG_EVENT_FAILED: 'Failed to log event',
41
+ LOG_USER_ACTION_FAILED: 'Failed to log user action',
42
+ UPDATE_SERVICE_STATUS_FAILED: 'Failed to update service status',
43
+ GET_SERVICE_LOGS_FAILED: 'Failed to get service logs',
44
+ GET_SERVICE_STATUS_FAILED: 'Failed to get service status',
45
+ GET_USER_ACTIONS_FAILED: 'Failed to get user actions',
46
+ };
47
+ exports.LOG_CLEANUP_MESSAGES = {
48
+ CLEANUP_STARTED: 'Log cleanup started',
49
+ CLEANUP_COMPLETED: 'Log cleanup completed',
50
+ CLEANUP_FAILED: 'Log cleanup failed',
51
+ FILE_CLEANUP_SUCCESS: 'File cleanup successful',
52
+ FILE_CLEANUP_FAILED: 'File cleanup failed',
53
+ RETENTION_UPDATED: 'Retention period updated',
40
54
  };
41
55
  //# sourceMappingURL=logging-messages.constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logging-messages.constants.js","sourceRoot":"","sources":["../../src/constants/logging-messages.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG;IAC5B,cAAc,EAAE,6BAA6B;IAC7C,eAAe,EAAE,qBAAqB;IACtC,eAAe,EAAE,iBAAiB;IAElC,+BAA+B,EAAE,uCAAuC;IACxE,8BAA8B,EAAE,qCAAqC;IAErE,sBAAsB,EAAE,qCAAqC;IAC7D,8BAA8B,EAAE,gCAAgC;IAEhE,eAAe,EAAE,qCAAqC;IACtD,eAAe,EAAE,8BAA8B;IAC/C,uBAAuB,EAAE,sCAAsC;IAE/D,YAAY,EAAE,cAAc;IAC5B,2BAA2B,EAAE,kCAAkC;IAC/D,cAAc,EAAE,gBAAgB;IAChC,sBAAsB,EAAE,wBAAwB;IAChD,qBAAqB,EAAE,uBAAuB;IAC9C,6BAA6B,EAAE,+BAA+B;IAC9D,oBAAoB,EAAE,sBAAsB;IAC5C,mCAAmC,EAAE,0CAA0C;IAC/E,mBAAmB,EAAE,qBAAqB;IAC1C,qBAAqB,EAAE,uBAAuB;IAC9C,qBAAqB,EAAE,uBAAuB;IAC9C,8BAA8B,EAAE,gCAAgC;IAChE,mCAAmC,EAAE,qCAAqC;IAC1E,kBAAkB,EAAE,oBAAoB;IACxC,0BAA0B,EAAE,4BAA4B;IACxD,sBAAsB,EAAE,wBAAwB;IAChD,0BAA0B,EAAE,4BAA4B;IACxD,gCAAgC,EAAE,kCAAkC;IAEpE,kBAAkB,EAAE,oBAAoB;IACxC,oBAAoB,EAAE,sBAAsB;IAC5C,4BAA4B,EAAE,8BAA8B;IAC5D,eAAe,EAAE,iBAAiB;IAElC,4BAA4B,EAAE,8BAA8B;IAC5D,yBAAyB,EAAE,2BAA2B;IACtD,qBAAqB,EAAE,uBAAuB;CACjD,CAAC"}
1
+ {"version":3,"file":"logging-messages.constants.js","sourceRoot":"","sources":["../../src/constants/logging-messages.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG;IAC5B,cAAc,EAAE,6BAA6B;IAC7C,eAAe,EAAE,qBAAqB;IACtC,eAAe,EAAE,iBAAiB;IAElC,+BAA+B,EAAE,uCAAuC;IACxE,8BAA8B,EAAE,qCAAqC;IAErE,sBAAsB,EAAE,qCAAqC;IAC7D,8BAA8B,EAAE,gCAAgC;IAEhE,eAAe,EAAE,qCAAqC;IACtD,eAAe,EAAE,8BAA8B;IAC/C,uBAAuB,EAAE,sCAAsC;IAE/D,YAAY,EAAE,cAAc;IAC5B,2BAA2B,EAAE,kCAAkC;IAC/D,cAAc,EAAE,gBAAgB;IAChC,sBAAsB,EAAE,wBAAwB;IAChD,qBAAqB,EAAE,uBAAuB;IAC9C,6BAA6B,EAAE,+BAA+B;IAC9D,oBAAoB,EAAE,sBAAsB;IAC5C,mCAAmC,EAAE,0CAA0C;IAC/E,mBAAmB,EAAE,qBAAqB;IAC1C,qBAAqB,EAAE,uBAAuB;IAC9C,qBAAqB,EAAE,uBAAuB;IAC9C,8BAA8B,EAAE,gCAAgC;IAChE,mCAAmC,EAAE,qCAAqC;IAC1E,kBAAkB,EAAE,oBAAoB;IACxC,0BAA0B,EAAE,4BAA4B;IACxD,sBAAsB,EAAE,wBAAwB;IAChD,0BAA0B,EAAE,4BAA4B;IACxD,gCAAgC,EAAE,kCAAkC;IAEpE,kBAAkB,EAAE,oBAAoB;IACxC,oBAAoB,EAAE,sBAAsB;IAC5C,4BAA4B,EAAE,8BAA8B;IAC5D,eAAe,EAAE,iBAAiB;IAElC,4BAA4B,EAAE,8BAA8B;IAC5D,yBAAyB,EAAE,2BAA2B;IACtD,qBAAqB,EAAE,uBAAuB;IAG9C,gBAAgB,EAAE,qBAAqB;IACvC,sBAAsB,EAAE,2BAA2B;IACnD,4BAA4B,EAAE,iCAAiC;IAC/D,uBAAuB,EAAE,4BAA4B;IACrD,yBAAyB,EAAE,8BAA8B;IACzD,uBAAuB,EAAE,4BAA4B;CACxD,CAAC;AAEW,QAAA,oBAAoB,GAAG;IAChC,eAAe,EAAE,qBAAqB;IACtC,iBAAiB,EAAE,uBAAuB;IAC1C,cAAc,EAAE,oBAAoB;IACpC,oBAAoB,EAAE,yBAAyB;IAC/C,mBAAmB,EAAE,qBAAqB;IAC1C,iBAAiB,EAAE,0BAA0B;CAChD,CAAC"}
@@ -5,7 +5,6 @@ export declare enum UserRole {
5
5
  ACCOUNTANT = "ACCOUNTANT",
6
6
  PARTNER = "PARTNER",
7
7
  CLIENT = "CLIENT",
8
- USER = "USER"
9
8
  }
10
9
  export declare enum UserStatus {
11
10
  ACTIVE = "ACTIVE",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alacard-project/shared",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "engines": {
5
5
  "node": ">=24.0.0"
6
6
  },
@@ -32,4 +32,4 @@
32
32
  "@types/node": "^24.10.0",
33
33
  "typescript": "^5.9.3"
34
34
  }
35
- }
35
+ }
package/proto/auth.proto CHANGED
@@ -3,7 +3,7 @@ syntax = "proto3";
3
3
  package auth;
4
4
 
5
5
  service AuthService {
6
- rpc Register (RegisterRequest) returns (TokenResponse);
6
+ rpc CreateIdentity (CreateIdentityRequest) returns (TokenResponse);
7
7
  rpc Login (LoginRequest) returns (TokenResponse);
8
8
  rpc Validate (ValidateRequest) returns (ValidateResponse);
9
9
  rpc GetUserById (GetUserByIdRequest) returns (UserResponse);
@@ -11,14 +11,23 @@ service AuthService {
11
11
  rpc ValidateToken (ValidateTokenRequest) returns (ValidateTokenResponse);
12
12
  rpc RefreshToken (RefreshTokenRequest) returns (TokenResponse);
13
13
  rpc RevokeToken (RevokeTokenRequest) returns (RevokeTokenResponse);
14
+ rpc GenerateTokens (GenerateTokensRequest) returns (TokenResponse);
14
15
  rpc CheckPermission (CheckPermissionRequest) returns (CheckPermissionResponse);
15
16
  rpc GetUserPermissions (GetUserPermissionsRequest) returns (GetUserPermissionsResponse);
16
17
  }
17
18
 
18
- message RegisterRequest {
19
+ message GenerateTokensRequest {
20
+ string userId = 1;
21
+ string email = 2;
22
+ string role = 3;
23
+ }
24
+
25
+ message CreateIdentityRequest {
19
26
  string email = 1;
20
27
  string password = 2;
21
28
  string name = 3;
29
+ string userId = 4;
30
+ string role = 5;
22
31
  }
23
32
 
24
33
  message LoginRequest {
@@ -8,6 +8,7 @@ export const ENV_KEYS = {
8
8
  KAFKA_BROKERS: 'KAFKA_BROKERS',
9
9
  JWT_SECRET: 'JWT_SECRET',
10
10
  JWT_EXPIRES_IN: 'JWT_EXPIRES_IN',
11
+ JWT_REFRESH_SECRET: 'JWT_REFRESH_SECRET',
11
12
  JWT_REFRESH_EXPIRES_IN: 'JWT_REFRESH_EXPIRES_IN',
12
13
  GRPC_PORT: 'GRPC_PORT',
13
14
  GRPC_URL: 'GRPC_URL',
@@ -19,13 +19,14 @@ export const GRPC_METHODS = {
19
19
  AUTH: {
20
20
  SERVICE: 'AuthService',
21
21
  LOGIN: 'Login',
22
- REGISTER: 'Register',
22
+ CREATE_IDENTITY: 'CreateIdentity',
23
23
  VALIDATE: 'Validate',
24
24
  GET_USER_BY_ID: 'GetUserById',
25
25
  GET_USER_BY_EMAIL: 'GetUserByEmail',
26
26
  VALIDATE_TOKEN: 'ValidateToken',
27
27
  REFRESH_TOKEN: 'RefreshToken',
28
28
  REVOKE_TOKEN: 'RevokeToken',
29
+ GENERATE_TOKENS: 'GenerateTokens',
29
30
  CHECK_PERMISSION: 'CheckPermission',
30
31
  GET_USER_PERMISSIONS: 'GetUserPermissions',
31
32
  },
@@ -40,4 +40,21 @@ export const LOGGING_MESSAGES = {
40
40
  PASSWORD_RESET_TOKEN_CREATED: 'Password reset token created',
41
41
  PASSWORD_RESET_SUCCESSFUL: 'Password reset successful',
42
42
  PASSWORD_RESET_FAILED: 'Password reset failed',
43
+
44
+ // Service Logging
45
+ LOG_EVENT_FAILED: 'Failed to log event',
46
+ LOG_USER_ACTION_FAILED: 'Failed to log user action',
47
+ UPDATE_SERVICE_STATUS_FAILED: 'Failed to update service status',
48
+ GET_SERVICE_LOGS_FAILED: 'Failed to get service logs',
49
+ GET_SERVICE_STATUS_FAILED: 'Failed to get service status',
50
+ GET_USER_ACTIONS_FAILED: 'Failed to get user actions',
51
+ };
52
+
53
+ export const LOG_CLEANUP_MESSAGES = {
54
+ CLEANUP_STARTED: 'Log cleanup started',
55
+ CLEANUP_COMPLETED: 'Log cleanup completed',
56
+ CLEANUP_FAILED: 'Log cleanup failed',
57
+ FILE_CLEANUP_SUCCESS: 'File cleanup successful',
58
+ FILE_CLEANUP_FAILED: 'File cleanup failed',
59
+ RETENTION_UPDATED: 'Retention period updated',
43
60
  };
@@ -54,6 +54,14 @@ export interface GetUserPermissionsGrpcRequest {
54
54
  userId: string;
55
55
  }
56
56
 
57
+ export interface CreateIdentityRequest {
58
+ email: string;
59
+ password: string;
60
+ name?: string;
61
+ userId: string;
62
+ role: string;
63
+ }
64
+
57
65
  export interface GetUserPermissionsGrpcResponse {
58
66
  userId: string;
59
67
  permissions: Array<{ resource: string; action: string }>;
@@ -101,9 +109,12 @@ export type GetUserByEmailRequest = GetUserByEmailGrpcRequest;
101
109
  export type GetUserPermissionsRequest = GetUserPermissionsGrpcRequest;
102
110
  export type DeleteUserResponse = { success: boolean };
103
111
 
112
+ import { GenerateTokensRequest } from './token.contract';
113
+
104
114
  export interface IAuthService {
105
115
  loginGrpc(data: LoginDto): Observable<JwtTokens>;
106
- registerGrpc(data: RegisterDto): Observable<any>;
116
+ generateTokensGrpc(data: GenerateTokensRequest): Observable<JwtTokens>;
117
+ createIdentityGrpc(data: CreateIdentityRequest): Observable<any>;
107
118
  validateGrpc(data: { token: string }): Observable<{ valid: boolean; userId?: string; email?: string; role?: string }>;
108
119
  validateTokenGrpc(data: ValidateTokenGrpcRequest): Observable<ValidateTokenGrpcResponse>;
109
120
  refreshTokenGrpc(data: RefreshTokenGrpcRequest): Observable<JwtTokens>;
@@ -1,4 +1,14 @@
1
1
  export * from './config.contract';
2
2
  export * from './logging.contract';
3
3
  export * from './auth.contract';
4
- export * from './token.contract';
4
+ // export * from './token.contract';
5
+ export type {
6
+ GenerateTokensRequest,
7
+ TokensResponse,
8
+ ITokenService,
9
+ ValidateTokenRequest,
10
+ ValidateTokenResponse,
11
+ RefreshTokensRequest,
12
+ RevokeTokenRequest,
13
+ RevokeTokenResponse
14
+ } from './token.contract';
@@ -1,7 +1,3 @@
1
- /**
2
- * Application Setup Utilities
3
- */
4
-
5
1
  import { INestApplication, ValidationPipe } from '@nestjs/common';
6
2
  import { API_PREFIX } from '../constants/http.constants';
7
3
  import helmet from 'helmet';
@@ -13,9 +9,6 @@ export interface AppSetupOptions {
13
9
  validation?: boolean;
14
10
  }
15
11
 
16
- /**
17
- * Setup standard NestJS application middleware
18
- */
19
12
  export function setupStandardApp(
20
13
  app: INestApplication,
21
14
  options: AppSetupOptions = {}
@@ -27,21 +20,17 @@ export function setupStandardApp(
27
20
  validation = true,
28
21
  } = options;
29
22
 
30
- // CORS
31
23
  app.enableCors({
32
24
  origin: corsOrigins,
33
25
  credentials: true,
34
26
  });
35
27
 
36
- // API Prefix
37
28
  app.setGlobalPrefix(apiPrefix);
38
29
 
39
- // Security
40
30
  if (useHelmet) {
41
31
  app.use(helmet());
42
32
  }
43
33
 
44
- // Validation
45
34
  if (validation) {
46
35
  app.useGlobalPipes(
47
36
  new ValidationPipe({