@flexmatch-dev/interface 0.1.3 → 0.1.4

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.
@@ -0,0 +1,22 @@
1
+ export declare enum ERROR_CODE {
2
+ UNKNOWN_ERROR = "UNKNOWN_ERROR",
3
+ DEFAULT_NOT_FOUND = "DEFAULT_NOT_FOUND",
4
+ UNAUTHORIZED = "UNAUTHORIZED",
5
+ UNAUTHORIZED_NO_USER = "UNAUTHORIZED_NO_USER",
6
+ UNAUTHORIZED_INVALID_ROLE = "UNAUTHORIZED_INVALID_ROLE",
7
+ UNAUTHORIZED_INVALID_REFRESH_TOKEN = "UNAUTHORIZED_INVALID_REFRESH_TOKEN",
8
+ UNAUTHORIZED_INVALID_CREDENTIALS = "UNAUTHORIZED_INVALID_CREDENTIALS",
9
+ BAD_REQUEST_INVALID_PARAMETERS = "BAD_REQUEST_INVALID_PARAMETERS",
10
+ BAD_REQUEST_INVALID_NICKNAME_LENGTH = "BAD_REQUEST_INVALID_NICKNAME_LENGTH",
11
+ BAD_REQUEST_INVALID_NICKNAME_FORMAT = "BAD_REQUEST_INVALID_NICKNAME_FORMAT",
12
+ BAD_REQUEST_INVALID_NICKNAME_BANNED_WORD = "BAD_REQUEST_INVALID_NICKNAME_BANNED_WORD",
13
+ CONFLICT_NICKNAME_DUPLICATE = "CONFLICT_NICKNAME_DUPLICATE",
14
+ CONFLICT_ALREADY_LINKED_ACCOUNT = "CONFLICT_ALREADY_LINKED_ACCOUNT",
15
+ CONFLICT_USER_EMAIL = "CONFLICT_USER_EMAIL",
16
+ CONFLICT_GOOGLE_ACCOUNT = "CONFLICT_GOOGLE_ACCOUNT",
17
+ CONFLICT_KAKAO_ACCOUNT = "CONFLICT_KAKAO_ACCOUNT",
18
+ CONFLICT_NAVER_ACCOUNT = "CONFLICT_NAVER_ACCOUNT",
19
+ CONFLICT_INSTAGRAM_ACCOUNT = "CONFLICT_INSTAGRAM_ACCOUNT",
20
+ FORBIDDEN_ROOM_ACCESS = "FORBIDDEN_ROOM_ACCESS"
21
+ }
22
+ export declare const ERROR_MESSAGE: Record<ERROR_CODE, [number, string | undefined]>;
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ERROR_MESSAGE = exports.ERROR_CODE = void 0;
4
+ var ERROR_CODE;
5
+ (function (ERROR_CODE) {
6
+ // 공통 에러 코드
7
+ ERROR_CODE["UNKNOWN_ERROR"] = "UNKNOWN_ERROR";
8
+ ERROR_CODE["DEFAULT_NOT_FOUND"] = "DEFAULT_NOT_FOUND";
9
+ ERROR_CODE["UNAUTHORIZED"] = "UNAUTHORIZED";
10
+ ERROR_CODE["UNAUTHORIZED_NO_USER"] = "UNAUTHORIZED_NO_USER";
11
+ ERROR_CODE["UNAUTHORIZED_INVALID_ROLE"] = "UNAUTHORIZED_INVALID_ROLE";
12
+ ERROR_CODE["UNAUTHORIZED_INVALID_REFRESH_TOKEN"] = "UNAUTHORIZED_INVALID_REFRESH_TOKEN";
13
+ ERROR_CODE["UNAUTHORIZED_INVALID_CREDENTIALS"] = "UNAUTHORIZED_INVALID_CREDENTIALS";
14
+ ERROR_CODE["BAD_REQUEST_INVALID_PARAMETERS"] = "BAD_REQUEST_INVALID_PARAMETERS";
15
+ // 닉네임 에러 코드
16
+ ERROR_CODE["BAD_REQUEST_INVALID_NICKNAME_LENGTH"] = "BAD_REQUEST_INVALID_NICKNAME_LENGTH";
17
+ ERROR_CODE["BAD_REQUEST_INVALID_NICKNAME_FORMAT"] = "BAD_REQUEST_INVALID_NICKNAME_FORMAT";
18
+ ERROR_CODE["BAD_REQUEST_INVALID_NICKNAME_BANNED_WORD"] = "BAD_REQUEST_INVALID_NICKNAME_BANNED_WORD";
19
+ ERROR_CODE["CONFLICT_NICKNAME_DUPLICATE"] = "CONFLICT_NICKNAME_DUPLICATE";
20
+ // 계정 에러 코드
21
+ ERROR_CODE["CONFLICT_ALREADY_LINKED_ACCOUNT"] = "CONFLICT_ALREADY_LINKED_ACCOUNT";
22
+ ERROR_CODE["CONFLICT_USER_EMAIL"] = "CONFLICT_USER_EMAIL";
23
+ ERROR_CODE["CONFLICT_GOOGLE_ACCOUNT"] = "CONFLICT_GOOGLE_ACCOUNT";
24
+ ERROR_CODE["CONFLICT_KAKAO_ACCOUNT"] = "CONFLICT_KAKAO_ACCOUNT";
25
+ ERROR_CODE["CONFLICT_NAVER_ACCOUNT"] = "CONFLICT_NAVER_ACCOUNT";
26
+ ERROR_CODE["CONFLICT_INSTAGRAM_ACCOUNT"] = "CONFLICT_INSTAGRAM_ACCOUNT";
27
+ // 채팅 에러 코드
28
+ ERROR_CODE["FORBIDDEN_ROOM_ACCESS"] = "FORBIDDEN_ROOM_ACCESS";
29
+ })(ERROR_CODE || (exports.ERROR_CODE = ERROR_CODE = {}));
30
+ exports.ERROR_MESSAGE = {
31
+ [ERROR_CODE.UNKNOWN_ERROR]: [500, 'Unknown error'],
32
+ [ERROR_CODE.DEFAULT_NOT_FOUND]: [404, 'Not found'],
33
+ [ERROR_CODE.UNAUTHORIZED]: [401, 'Unauthorized'],
34
+ [ERROR_CODE.UNAUTHORIZED_NO_USER]: [401, 'Unauthorized'],
35
+ [ERROR_CODE.UNAUTHORIZED_INVALID_ROLE]: [401, 'Unauthorized'],
36
+ [ERROR_CODE.UNAUTHORIZED_INVALID_REFRESH_TOKEN]: [
37
+ 401,
38
+ 'Invalid refresh token',
39
+ ],
40
+ [ERROR_CODE.UNAUTHORIZED_INVALID_CREDENTIALS]: [401, 'Invalid credentials'],
41
+ [ERROR_CODE.BAD_REQUEST_INVALID_PARAMETERS]: [400, 'Invalid parameters'],
42
+ [ERROR_CODE.BAD_REQUEST_INVALID_NICKNAME_LENGTH]: [
43
+ 400,
44
+ 'Nickname length is invalid',
45
+ ],
46
+ [ERROR_CODE.BAD_REQUEST_INVALID_NICKNAME_FORMAT]: [
47
+ 400,
48
+ 'Nickname format is invalid',
49
+ ],
50
+ [ERROR_CODE.BAD_REQUEST_INVALID_NICKNAME_BANNED_WORD]: [
51
+ 400,
52
+ 'Nickname banned word is invalid',
53
+ ],
54
+ [ERROR_CODE.CONFLICT_NICKNAME_DUPLICATE]: [
55
+ 409,
56
+ 'Nickname duplicate is invalid',
57
+ ],
58
+ [ERROR_CODE.CONFLICT_ALREADY_LINKED_ACCOUNT]: [409, 'Already linked account'],
59
+ [ERROR_CODE.CONFLICT_USER_EMAIL]: [409, 'User email already exists'],
60
+ [ERROR_CODE.CONFLICT_GOOGLE_ACCOUNT]: [409, 'Google account already exists'],
61
+ [ERROR_CODE.CONFLICT_KAKAO_ACCOUNT]: [409, 'Kakao account already exists'],
62
+ [ERROR_CODE.CONFLICT_NAVER_ACCOUNT]: [409, 'Naver account already exists'],
63
+ [ERROR_CODE.CONFLICT_INSTAGRAM_ACCOUNT]: [
64
+ 409,
65
+ 'Instagram account already exists',
66
+ ],
67
+ [ERROR_CODE.FORBIDDEN_ROOM_ACCESS]: [403, 'Forbidden room access'],
68
+ };
69
+ //# sourceMappingURL=error.constant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error.constant.js","sourceRoot":"","sources":["../../../src/@common/exception/error.constant.ts"],"names":[],"mappings":";;;AAAA,IAAY,UA0BX;AA1BD,WAAY,UAAU;IACpB,WAAW;IACX,6CAA+B,CAAA;IAC/B,qDAAuC,CAAA;IACvC,2CAA6B,CAAA;IAC7B,2DAA6C,CAAA;IAC7C,qEAAuD,CAAA;IACvD,uFAAyE,CAAA;IACzE,mFAAqE,CAAA;IACrE,+EAAiE,CAAA;IAEjE,YAAY;IACZ,yFAA2E,CAAA;IAC3E,yFAA2E,CAAA;IAC3E,mGAAqF,CAAA;IACrF,yEAA2D,CAAA;IAC3D,WAAW;IACX,iFAAmE,CAAA;IACnE,yDAA2C,CAAA;IAC3C,iEAAmD,CAAA;IACnD,+DAAiD,CAAA;IACjD,+DAAiD,CAAA;IACjD,uEAAyD,CAAA;IAEzD,WAAW;IACX,6DAA+C,CAAA;AACjD,CAAC,EA1BW,UAAU,0BAAV,UAAU,QA0BrB;AAEY,QAAA,aAAa,GAAqD;IAC7E,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,CAAC;IAClD,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,CAAC;IAClD,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,CAAC;IAChD,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,CAAC;IACxD,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,CAAC;IAC7D,CAAC,UAAU,CAAC,kCAAkC,CAAC,EAAE;QAC/C,GAAG;QACH,uBAAuB;KACxB;IACD,CAAC,UAAU,CAAC,gCAAgC,CAAC,EAAE,CAAC,GAAG,EAAE,qBAAqB,CAAC;IAC3E,CAAC,UAAU,CAAC,8BAA8B,CAAC,EAAE,CAAC,GAAG,EAAE,oBAAoB,CAAC;IAExE,CAAC,UAAU,CAAC,mCAAmC,CAAC,EAAE;QAChD,GAAG;QACH,4BAA4B;KAC7B;IACD,CAAC,UAAU,CAAC,mCAAmC,CAAC,EAAE;QAChD,GAAG;QACH,4BAA4B;KAC7B;IACD,CAAC,UAAU,CAAC,wCAAwC,CAAC,EAAE;QACrD,GAAG;QACH,iCAAiC;KAClC;IACD,CAAC,UAAU,CAAC,2BAA2B,CAAC,EAAE;QACxC,GAAG;QACH,+BAA+B;KAChC;IAED,CAAC,UAAU,CAAC,+BAA+B,CAAC,EAAE,CAAC,GAAG,EAAE,wBAAwB,CAAC;IAC7E,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC,GAAG,EAAE,2BAA2B,CAAC;IACpE,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,CAAC,GAAG,EAAE,+BAA+B,CAAC;IAC5E,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC,GAAG,EAAE,8BAA8B,CAAC;IAC1E,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC,GAAG,EAAE,8BAA8B,CAAC;IAC1E,CAAC,UAAU,CAAC,0BAA0B,CAAC,EAAE;QACvC,GAAG;QACH,kCAAkC;KACnC;IACD,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC,GAAG,EAAE,uBAAuB,CAAC;CACnE,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { ERROR_CODE } from './error.constant';
2
+ export interface IErrorResponse<T> {
3
+ code: ERROR_CODE;
4
+ status: number;
5
+ message: string | undefined;
6
+ data: T;
7
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=error.response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error.response.js","sourceRoot":"","sources":["../../../src/@common/exception/error.response.ts"],"names":[],"mappings":""}
@@ -1 +1,3 @@
1
1
  export * from './pagination';
2
+ export * from './exception/error.constant';
3
+ export * from './exception/error.response';
@@ -14,5 +14,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ // Pagination
17
18
  __exportStar(require("./pagination"), exports);
19
+ // Exception
20
+ __exportStar(require("./exception/error.constant"), exports);
21
+ __exportStar(require("./exception/error.response"), exports);
18
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/@common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/@common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,aAAa;AACb,+CAA6B;AAE7B,YAAY;AACZ,6DAA2C;AAC3C,6DAA2C"}
package/dist/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './@common';
2
2
  export * from './user';
3
+ export * from './log';
package/dist/index.js CHANGED
@@ -16,4 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./@common"), exports);
18
18
  __exportStar(require("./user"), exports);
19
+ __exportStar(require("./log"), exports);
19
20
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,yCAAuB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,yCAAuB;AACvB,wCAAsB"}
@@ -0,0 +1,3 @@
1
+ export * from './log.constant';
2
+ export * from './log.parse.utility';
3
+ export * from './log.system.payload';
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./log.constant"), exports);
18
+ __exportStar(require("./log.parse.utility"), exports);
19
+ __exportStar(require("./log.system.payload"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/log/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,sDAAoC;AACpC,uDAAqC"}
@@ -0,0 +1,8 @@
1
+ export declare const SYSTEM_LOG_TOPIC: {
2
+ readonly REQUEST: "REQUEST";
3
+ readonly RESPONSE: "RESPONSE";
4
+ readonly QUERY: "QUERY";
5
+ };
6
+ export type SystemLogTopic = (typeof SYSTEM_LOG_TOPIC)[keyof typeof SYSTEM_LOG_TOPIC];
7
+ export declare const SPLIT_CHAR_KAFKA = "\u00B6";
8
+ export type LogLevel = 'verbose' | 'debug' | 'log' | 'warn' | 'error' | 'fatal';
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SPLIT_CHAR_KAFKA = exports.SYSTEM_LOG_TOPIC = void 0;
4
+ exports.SYSTEM_LOG_TOPIC = {
5
+ REQUEST: 'REQUEST',
6
+ RESPONSE: 'RESPONSE',
7
+ QUERY: 'QUERY',
8
+ };
9
+ exports.SPLIT_CHAR_KAFKA = '¶';
10
+ //# sourceMappingURL=log.constant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log.constant.js","sourceRoot":"","sources":["../../src/log/log.constant.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG;IAC9B,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;CACN,CAAC;AAIE,QAAA,gBAAgB,GAAG,GAAG,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { LogPayloadInterface } from './log.system.payload';
2
+ export declare const ParseKafkaLog: (log: string) => LogPayloadInterface | null;
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ParseKafkaLog = void 0;
4
+ const log_constant_1 = require("./log.constant");
5
+ const GetKafkaLogType = (type) => {
6
+ const result = Object.values(log_constant_1.SYSTEM_LOG_TOPIC).find((topic) => topic === type);
7
+ return result !== null && result !== void 0 ? result : null;
8
+ };
9
+ const GetLogLevel = (level) => {
10
+ switch (level) {
11
+ case 'verbose':
12
+ return 'verbose';
13
+ case 'debug':
14
+ return 'debug';
15
+ case 'log':
16
+ return 'log';
17
+ case 'warn':
18
+ return 'warn';
19
+ case 'error':
20
+ return 'error';
21
+ case 'fatal':
22
+ return 'fatal';
23
+ default:
24
+ return null;
25
+ }
26
+ };
27
+ const ParseKafkaLog = (log) => {
28
+ const splited = log.split(log_constant_1.SPLIT_CHAR_KAFKA);
29
+ const type = GetKafkaLogType(splited[0]);
30
+ if (!type)
31
+ return null;
32
+ switch (type) {
33
+ case log_constant_1.SYSTEM_LOG_TOPIC.REQUEST:
34
+ return ParseSystemLogRequest(splited);
35
+ case log_constant_1.SYSTEM_LOG_TOPIC.RESPONSE:
36
+ return ParseSystemLogResponse(splited);
37
+ case log_constant_1.SYSTEM_LOG_TOPIC.QUERY:
38
+ return ParseSystemLogQuery(splited);
39
+ default:
40
+ return null;
41
+ }
42
+ };
43
+ exports.ParseKafkaLog = ParseKafkaLog;
44
+ function ParseSystemLogRequest(splited) {
45
+ const type = GetKafkaLogType(splited[0]);
46
+ const level = GetLogLevel(splited[1]);
47
+ if (!type || !level)
48
+ return null;
49
+ return {
50
+ type: type,
51
+ level: level,
52
+ uuid: splited[2],
53
+ method: splited[3],
54
+ userId: Number(splited[4]) || undefined,
55
+ url: splited[5],
56
+ timestampRequest: Number(splited[6]),
57
+ requestParams: splited[7] ? JSON.parse(splited[7]) : undefined,
58
+ requestBody: splited[8] ? JSON.parse(splited[8]) : undefined,
59
+ };
60
+ }
61
+ function ParseSystemLogResponse(splited) {
62
+ const type = GetKafkaLogType(splited[0]);
63
+ const level = GetLogLevel(splited[1]);
64
+ const success = splited[2] === '1';
65
+ if (!type || !level)
66
+ return null;
67
+ return {
68
+ type: type,
69
+ level: level,
70
+ success: success,
71
+ uuid: splited[3],
72
+ status: Number(splited[4]),
73
+ method: splited[5],
74
+ userId: Number(splited[6]) || undefined,
75
+ url: splited[7],
76
+ message: splited[8],
77
+ responseTimeMs: Number(splited[9]),
78
+ timestampResponse: Number(splited[10]),
79
+ responseBody: splited[11] ? JSON.parse(splited[11]) : undefined,
80
+ requestBody: undefined,
81
+ requestParams: undefined,
82
+ timestampRequest: 0,
83
+ };
84
+ }
85
+ function ParseSystemLogQuery(splited) {
86
+ const type = GetKafkaLogType(splited[0]);
87
+ const level = GetLogLevel(splited[1]);
88
+ const success = splited[2] === '1';
89
+ if (!type || !level)
90
+ return null;
91
+ return {
92
+ type: type,
93
+ level: level,
94
+ success: success,
95
+ duration: Number(splited[3]),
96
+ timestamp: Number(splited[4]),
97
+ isSlowQuery: splited[5] === '1',
98
+ query: splited[6],
99
+ params: splited[7] ? JSON.parse(splited[7]) : undefined,
100
+ };
101
+ }
102
+ //# sourceMappingURL=log.parse.utility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log.parse.utility.js","sourceRoot":"","sources":["../../src/log/log.parse.utility.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import { ERROR_CODE } from '../@common/exception/error.constant';
2
+ import { LogLevel, SystemLogTopic } from './log.constant';
3
+ export type LogPayloadInterface = ISystemLogRequestPayload | ISystemLogResponsePayload | ISystemLogErrorResponsePayload | ISystemLogQueryPayload;
4
+ export interface ISystemLogPayload {
5
+ type: SystemLogTopic;
6
+ message?: string | undefined;
7
+ level: LogLevel;
8
+ }
9
+ export interface ISystemLogRequestPayload extends ISystemLogPayload {
10
+ uuid: string;
11
+ method: string;
12
+ url: string;
13
+ timestampRequest: number;
14
+ requestParams: any;
15
+ requestBody: any;
16
+ userId: number | undefined;
17
+ }
18
+ export interface ISystemLogResponsePayload extends ISystemLogRequestPayload {
19
+ success: boolean;
20
+ status: number;
21
+ timestampResponse: number;
22
+ responseBody: any;
23
+ responseTimeMs: number;
24
+ }
25
+ export interface ISystemLogErrorResponsePayload extends ISystemLogResponsePayload {
26
+ code: ERROR_CODE;
27
+ errorMessage: string | undefined;
28
+ errorData: any;
29
+ }
30
+ export interface ISystemLogQueryPayload {
31
+ type: SystemLogTopic;
32
+ level: LogLevel;
33
+ success: boolean;
34
+ isSlowQuery: boolean;
35
+ query: string;
36
+ params: any;
37
+ duration: number;
38
+ timestamp: number;
39
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=log.system.payload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log.system.payload.js","sourceRoot":"","sources":["../../src/log/log.system.payload.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flexmatch-dev/interface",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "Shared API interfaces and constants for FlexMatch platform services.",
5
5
  "license": "MIT",
6
6
  "author": "",