exodus-framework 2.0.0

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 (155) hide show
  1. package/build/@types/app.d.ts +5 -0
  2. package/build/@types/app.d.ts.map +1 -0
  3. package/build/@types/app.js +5 -0
  4. package/build/@types/console.d.ts +2 -0
  5. package/build/@types/console.d.ts.map +1 -0
  6. package/build/@types/console.js +5 -0
  7. package/build/@types/entity.d.ts +42 -0
  8. package/build/@types/entity.d.ts.map +1 -0
  9. package/build/@types/entity.js +5 -0
  10. package/build/@types/express.d.js +5 -0
  11. package/build/@types/http.d.ts +62 -0
  12. package/build/@types/http.d.ts.map +1 -0
  13. package/build/@types/http.js +50 -0
  14. package/build/@types/index.d.ts +10 -0
  15. package/build/@types/index.d.ts.map +1 -0
  16. package/build/@types/index.js +93 -0
  17. package/build/@types/messaging.d.ts +22 -0
  18. package/build/@types/messaging.d.ts.map +1 -0
  19. package/build/@types/messaging.js +13 -0
  20. package/build/@types/service.d.ts +4 -0
  21. package/build/@types/service.d.ts.map +1 -0
  22. package/build/@types/service.js +5 -0
  23. package/build/@types/session.d.ts +9 -0
  24. package/build/@types/session.d.ts.map +1 -0
  25. package/build/@types/session.js +5 -0
  26. package/build/@types/singleton.d.ts +10 -0
  27. package/build/@types/singleton.d.ts.map +1 -0
  28. package/build/@types/singleton.js +5 -0
  29. package/build/@types/socket.d.ts +20 -0
  30. package/build/@types/socket.d.ts.map +1 -0
  31. package/build/@types/socket.js +11 -0
  32. package/build/app/app.d.ts +16 -0
  33. package/build/app/app.d.ts.map +1 -0
  34. package/build/app/app.js +68 -0
  35. package/build/app/controller.d.ts +28 -0
  36. package/build/app/controller.d.ts.map +1 -0
  37. package/build/app/controller.js +94 -0
  38. package/build/app/core.d.ts +7 -0
  39. package/build/app/core.d.ts.map +1 -0
  40. package/build/app/core.js +61 -0
  41. package/build/app/index.d.ts +8 -0
  42. package/build/app/index.d.ts.map +1 -0
  43. package/build/app/index.js +70 -0
  44. package/build/app/service.d.ts +6 -0
  45. package/build/app/service.d.ts.map +1 -0
  46. package/build/app/service.js +24 -0
  47. package/build/app/singleton.d.ts +9 -0
  48. package/build/app/singleton.d.ts.map +1 -0
  49. package/build/app/singleton.js +29 -0
  50. package/build/config/app.d.ts +16 -0
  51. package/build/config/app.d.ts.map +1 -0
  52. package/build/config/app.js +25 -0
  53. package/build/config/auth.d.ts +5 -0
  54. package/build/config/auth.d.ts.map +1 -0
  55. package/build/config/auth.js +11 -0
  56. package/build/config/cache.d.ts +7 -0
  57. package/build/config/cache.d.ts.map +1 -0
  58. package/build/config/cache.js +12 -0
  59. package/build/config/db.d.ts +13 -0
  60. package/build/config/db.d.ts.map +1 -0
  61. package/build/config/db.js +17 -0
  62. package/build/config/http.d.ts +5 -0
  63. package/build/config/http.d.ts.map +1 -0
  64. package/build/config/http.js +10 -0
  65. package/build/config/index.d.ts +9 -0
  66. package/build/config/index.d.ts.map +1 -0
  67. package/build/config/index.js +93 -0
  68. package/build/config/logger.d.ts +7 -0
  69. package/build/config/logger.d.ts.map +1 -0
  70. package/build/config/logger.js +33 -0
  71. package/build/config/messaging.d.ts +7 -0
  72. package/build/config/messaging.d.ts.map +1 -0
  73. package/build/config/messaging.js +12 -0
  74. package/build/config/task.d.ts +6 -0
  75. package/build/config/task.d.ts.map +1 -0
  76. package/build/config/task.js +13 -0
  77. package/build/controllers/api/file.d.ts +8 -0
  78. package/build/controllers/api/file.d.ts.map +1 -0
  79. package/build/controllers/api/file.js +24 -0
  80. package/build/controllers/api/index.d.ts +2 -0
  81. package/build/controllers/api/index.d.ts.map +1 -0
  82. package/build/controllers/api/index.js +16 -0
  83. package/build/controllers/index.d.ts +2 -0
  84. package/build/controllers/index.d.ts.map +1 -0
  85. package/build/controllers/index.js +16 -0
  86. package/build/index.d.ts +8 -0
  87. package/build/index.d.ts.map +1 -0
  88. package/build/index.js +82 -0
  89. package/build/middlewares/access.d.ts +8 -0
  90. package/build/middlewares/access.d.ts.map +1 -0
  91. package/build/middlewares/access.js +21 -0
  92. package/build/middlewares/authentication.d.ts +7 -0
  93. package/build/middlewares/authentication.d.ts.map +1 -0
  94. package/build/middlewares/authentication.js +22 -0
  95. package/build/middlewares/file.d.ts +10 -0
  96. package/build/middlewares/file.d.ts.map +1 -0
  97. package/build/middlewares/file.js +41 -0
  98. package/build/middlewares/index.d.ts +4 -0
  99. package/build/middlewares/index.d.ts.map +1 -0
  100. package/build/middlewares/index.js +38 -0
  101. package/build/models/Connection.d.ts +11 -0
  102. package/build/models/Connection.d.ts.map +1 -0
  103. package/build/models/Connection.js +50 -0
  104. package/build/models/index.d.ts +5 -0
  105. package/build/models/index.d.ts.map +1 -0
  106. package/build/models/index.js +14 -0
  107. package/build/server.d.ts +2 -0
  108. package/build/server.d.ts.map +1 -0
  109. package/build/server.js +33 -0
  110. package/build/services/error.d.ts +21 -0
  111. package/build/services/error.d.ts.map +1 -0
  112. package/build/services/error.js +55 -0
  113. package/build/services/express.d.ts +21 -0
  114. package/build/services/express.d.ts.map +1 -0
  115. package/build/services/express.js +142 -0
  116. package/build/services/file.d.ts +12 -0
  117. package/build/services/file.d.ts.map +1 -0
  118. package/build/services/file.js +54 -0
  119. package/build/services/index.d.ts +9 -0
  120. package/build/services/index.d.ts.map +1 -0
  121. package/build/services/index.js +93 -0
  122. package/build/services/rabitmq.d.ts +19 -0
  123. package/build/services/rabitmq.d.ts.map +1 -0
  124. package/build/services/rabitmq.js +87 -0
  125. package/build/services/redis.d.ts +14 -0
  126. package/build/services/redis.d.ts.map +1 -0
  127. package/build/services/redis.js +60 -0
  128. package/build/services/sequelize.d.ts +20 -0
  129. package/build/services/sequelize.d.ts.map +1 -0
  130. package/build/services/sequelize.js +193 -0
  131. package/build/services/socket.d.ts +18 -0
  132. package/build/services/socket.d.ts.map +1 -0
  133. package/build/services/socket.js +56 -0
  134. package/build/services/task.d.ts +53 -0
  135. package/build/services/task.d.ts.map +1 -0
  136. package/build/services/task.js +160 -0
  137. package/build/utils/api.d.ts +15 -0
  138. package/build/utils/api.d.ts.map +1 -0
  139. package/build/utils/api.js +50 -0
  140. package/build/utils/database.d.ts +4 -0
  141. package/build/utils/database.d.ts.map +1 -0
  142. package/build/utils/database.js +36 -0
  143. package/build/utils/date.d.ts +2 -0
  144. package/build/utils/date.d.ts.map +1 -0
  145. package/build/utils/date.js +28 -0
  146. package/build/utils/index.d.ts +6 -0
  147. package/build/utils/index.d.ts.map +1 -0
  148. package/build/utils/index.js +60 -0
  149. package/build/utils/logger.d.ts +3 -0
  150. package/build/utils/logger.d.ts.map +1 -0
  151. package/build/utils/logger.js +45 -0
  152. package/build/utils/session.d.ts +10 -0
  153. package/build/utils/session.d.ts.map +1 -0
  154. package/build/utils/session.js +21 -0
  155. package/package.json +80 -0
@@ -0,0 +1,5 @@
1
+ export type TApplicationCreationProps = {
2
+ maxClusters: number;
3
+ clustersRestarts: boolean;
4
+ };
5
+ //# sourceMappingURL=app.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/@types/app.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,yBAAyB,GAAG;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,OAAO,CAAC;CAC3B,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,2 @@
1
+ export type TLoggerLevel = 'info' | 'danger' | 'warning' | 'success' | 'especial' | 'comment' | 'normal';
2
+ //# sourceMappingURL=console.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../src/@types/console.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,QAAQ,GACR,SAAS,GACT,SAAS,GACT,UAAU,GACV,SAAS,GACT,QAAQ,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,42 @@
1
+ import { FindOptions, InferAttributes, InferCreationAttributes, Model, WhereOptions } from 'sequelize';
2
+ import { MakeNullishOptional } from 'sequelize/types/utils';
3
+ export type TPaginationAttributes = {
4
+ limit: number;
5
+ offset: number;
6
+ };
7
+ export type TFindParams<M extends Model> = FindOptions<InferAttributes<M, {
8
+ omit: never;
9
+ }>>;
10
+ export type TWhereParams<M extends Model> = WhereOptions<InferAttributes<M, {
11
+ omit: never;
12
+ }>>;
13
+ export type TCreateParams<M extends Model> = Omit<MakeNullishOptional<InferCreationAttributes<M>>, 'uuid'>;
14
+ export interface IAccount {
15
+ blockWithVenc: boolean;
16
+ blocked: boolean;
17
+ dateVenc: string | null;
18
+ envUuid: string | null;
19
+ lastAuthToken: string;
20
+ logedAt: string;
21
+ name: string;
22
+ params?: Record<string, any> | null;
23
+ picture: string | null;
24
+ type: string;
25
+ username: string;
26
+ uuid: string;
27
+ comments: string;
28
+ }
29
+ export interface IEnvironment {
30
+ uuid: string;
31
+ name: string;
32
+ email: string;
33
+ isotipo: string;
34
+ logotipo: string;
35
+ envToken: string;
36
+ blocked: string;
37
+ blockWithVenc: string;
38
+ dateVenc: Date;
39
+ database: string;
40
+ params: Record<string, any> | null;
41
+ }
42
+ //# sourceMappingURL=entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../src/@types/entity.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,eAAe,EACf,uBAAuB,EACvB,KAAK,EACL,YAAY,EACb,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAG5D,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,KAAK,IAAI,WAAW,CAAC,eAAe,CAAC,CAAC,EAAE;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,CAAC,CAAC,CAAC;AAC5F,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,KAAK,IAAI,YAAY,CAAC,eAAe,CAAC,CAAC,EAAE;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,CAAC,CAAC,CAAC;AAC9F,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,KAAK,IAAI,IAAI,CAC/C,mBAAmB,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,EAC/C,MAAM,CACP,CAAC;AAGF,MAAM,WAAW,QAAQ;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IACpC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AACD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,IAAI,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;CACpC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,62 @@
1
+ import { RequestHandler } from 'express';
2
+ export declare type TApplicationResponse = 'error' | 'success' | 'warning';
3
+ export declare type THttpResponse<D = unknown> = {
4
+ status: boolean;
5
+ message: string;
6
+ type: TApplicationResponse;
7
+ code?: number;
8
+ location?: string;
9
+ timestamp?: number;
10
+ data?: D;
11
+ };
12
+ export declare interface IHttpResponseError<D = unknown> {
13
+ message: string;
14
+ code: number;
15
+ data?: D;
16
+ }
17
+ export interface IApiResponse<D> {
18
+ req?: any;
19
+ message: string;
20
+ status: boolean;
21
+ type: TApplicationResponse;
22
+ data?: D;
23
+ code: number;
24
+ timestamp: number;
25
+ }
26
+ export declare enum EHttpResponseCode {
27
+ continue = 100,
28
+ accepted = 202,
29
+ created = 201,
30
+ successfullyProcessedInformation = 200,
31
+ partiallyCompletedProcess = 206,
32
+ redirectingForResponse = 303,
33
+ incompleteRequest = 400,
34
+ informationNotFound = 404,
35
+ informationAlreadyExists = 409,
36
+ preconditionRequired = 428,
37
+ iternalErro = 500,
38
+ methodNotAllowed = 405,
39
+ informationNotTrue = 406,
40
+ preProcessNotInitialized = 424,
41
+ requestTimeOut = 408,
42
+ informationUnauthorized = 401,
43
+ informationBlocked = 403
44
+ }
45
+ export declare enum EApiRequestMethod {
46
+ POST = "post",
47
+ GET = "get",
48
+ PUT = "put",
49
+ DELETE = "delete",
50
+ PATCH = "patch"
51
+ }
52
+ export interface IResponseListData<D> {
53
+ total: number;
54
+ pages: number;
55
+ hasMore: boolean;
56
+ nextCursor: string;
57
+ data: D[];
58
+ }
59
+ export interface IController {
60
+ }
61
+ export type THttpRequest<Body = any, Query = any> = RequestHandler<any, any, Body, Query>;
62
+ //# sourceMappingURL=http.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/@types/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAOzC,MAAM,CAAC,OAAO,MAAM,oBAAoB,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;AAO3E,MAAM,CAAC,OAAO,MAAM,aAAa,CAAC,CAAC,GAAG,OAAO,IAAI;IAC/C,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,oBAAoB,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,CAAC,CAAC;CACV,CAAC;AAEF,MAAM,CAAC,OAAO,WAAW,kBAAkB,CAAC,CAAC,GAAG,OAAO;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,CAAC,CAAC;CACV;AAED,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,GAAG,CAAC,EAAE,GAAG,CAAC;IACV,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,oBAAoB,CAAC;IAC3B,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAQD,oBAAY,iBAAiB;IAE3B,QAAQ,MAAM;IACd,QAAQ,MAAM;IACd,OAAO,MAAM;IACb,gCAAgC,MAAM;IAEtC,yBAAyB,MAAM;IAC/B,sBAAsB,MAAM;IAG5B,iBAAiB,MAAM;IACvB,mBAAmB,MAAM;IACzB,wBAAwB,MAAM;IAC9B,oBAAoB,MAAM;IAG1B,WAAW,MAAM;IACjB,gBAAgB,MAAM;IACtB,kBAAkB,MAAM;IACxB,wBAAwB,MAAM;IAC9B,cAAc,MAAM;IACpB,uBAAuB,MAAM;IAC7B,kBAAkB,MAAM;CACzB;AACD,oBAAY,iBAAiB;IAC3B,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AACD,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,CAAC,EAAE,CAAC;CACX;AAED,MAAM,WAAW,WAAW;CAAG;AAE/B,MAAM,MAAM,YAAY,CAAC,IAAI,GAAG,GAAG,EAAE,KAAK,GAAG,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.EHttpResponseCode = exports.EApiRequestMethod = void 0;
7
+ /**
8
+ * Tipo de respostas
9
+ * @date 26/03/2023 - 21:45:23
10
+ *
11
+ */
12
+ /**
13
+ * Objeto de response padronizado
14
+ * @date 26/03/2023 - 21:45:23
15
+ *
16
+ */
17
+ /**
18
+ * Tipos de Status-Code para responses do Express
19
+ *
20
+ * @export
21
+ * @enum {number}
22
+ */
23
+ let EHttpResponseCode = exports.EHttpResponseCode = /*#__PURE__*/function (EHttpResponseCode) {
24
+ EHttpResponseCode[EHttpResponseCode["continue"] = 100] = "continue";
25
+ EHttpResponseCode[EHttpResponseCode["accepted"] = 202] = "accepted";
26
+ EHttpResponseCode[EHttpResponseCode["created"] = 201] = "created";
27
+ EHttpResponseCode[EHttpResponseCode["successfullyProcessedInformation"] = 200] = "successfullyProcessedInformation";
28
+ EHttpResponseCode[EHttpResponseCode["partiallyCompletedProcess"] = 206] = "partiallyCompletedProcess";
29
+ EHttpResponseCode[EHttpResponseCode["redirectingForResponse"] = 303] = "redirectingForResponse";
30
+ EHttpResponseCode[EHttpResponseCode["incompleteRequest"] = 400] = "incompleteRequest";
31
+ EHttpResponseCode[EHttpResponseCode["informationNotFound"] = 404] = "informationNotFound";
32
+ EHttpResponseCode[EHttpResponseCode["informationAlreadyExists"] = 409] = "informationAlreadyExists";
33
+ EHttpResponseCode[EHttpResponseCode["preconditionRequired"] = 428] = "preconditionRequired";
34
+ EHttpResponseCode[EHttpResponseCode["iternalErro"] = 500] = "iternalErro";
35
+ EHttpResponseCode[EHttpResponseCode["methodNotAllowed"] = 405] = "methodNotAllowed";
36
+ EHttpResponseCode[EHttpResponseCode["informationNotTrue"] = 406] = "informationNotTrue";
37
+ EHttpResponseCode[EHttpResponseCode["preProcessNotInitialized"] = 424] = "preProcessNotInitialized";
38
+ EHttpResponseCode[EHttpResponseCode["requestTimeOut"] = 408] = "requestTimeOut";
39
+ EHttpResponseCode[EHttpResponseCode["informationUnauthorized"] = 401] = "informationUnauthorized";
40
+ EHttpResponseCode[EHttpResponseCode["informationBlocked"] = 403] = "informationBlocked";
41
+ return EHttpResponseCode;
42
+ }({});
43
+ let EApiRequestMethod = exports.EApiRequestMethod = /*#__PURE__*/function (EApiRequestMethod) {
44
+ EApiRequestMethod["POST"] = "post";
45
+ EApiRequestMethod["GET"] = "get";
46
+ EApiRequestMethod["PUT"] = "put";
47
+ EApiRequestMethod["DELETE"] = "delete";
48
+ EApiRequestMethod["PATCH"] = "patch";
49
+ return EApiRequestMethod;
50
+ }({});
@@ -0,0 +1,10 @@
1
+ export * from './app';
2
+ export * from './console';
3
+ export * from './entity';
4
+ export * from './http';
5
+ export * from './messaging';
6
+ export * from './service';
7
+ export * from './session';
8
+ export * from './session';
9
+ export * from './socket';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/@types/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _app = require("./app");
7
+ Object.keys(_app).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _app[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _app[key];
14
+ }
15
+ });
16
+ });
17
+ var _console = require("./console");
18
+ Object.keys(_console).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _console[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function () {
24
+ return _console[key];
25
+ }
26
+ });
27
+ });
28
+ var _entity = require("./entity");
29
+ Object.keys(_entity).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _entity[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function () {
35
+ return _entity[key];
36
+ }
37
+ });
38
+ });
39
+ var _http = require("./http");
40
+ Object.keys(_http).forEach(function (key) {
41
+ if (key === "default" || key === "__esModule") return;
42
+ if (key in exports && exports[key] === _http[key]) return;
43
+ Object.defineProperty(exports, key, {
44
+ enumerable: true,
45
+ get: function () {
46
+ return _http[key];
47
+ }
48
+ });
49
+ });
50
+ var _messaging = require("./messaging");
51
+ Object.keys(_messaging).forEach(function (key) {
52
+ if (key === "default" || key === "__esModule") return;
53
+ if (key in exports && exports[key] === _messaging[key]) return;
54
+ Object.defineProperty(exports, key, {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _messaging[key];
58
+ }
59
+ });
60
+ });
61
+ var _service = require("./service");
62
+ Object.keys(_service).forEach(function (key) {
63
+ if (key === "default" || key === "__esModule") return;
64
+ if (key in exports && exports[key] === _service[key]) return;
65
+ Object.defineProperty(exports, key, {
66
+ enumerable: true,
67
+ get: function () {
68
+ return _service[key];
69
+ }
70
+ });
71
+ });
72
+ var _session = require("./session");
73
+ Object.keys(_session).forEach(function (key) {
74
+ if (key === "default" || key === "__esModule") return;
75
+ if (key in exports && exports[key] === _session[key]) return;
76
+ Object.defineProperty(exports, key, {
77
+ enumerable: true,
78
+ get: function () {
79
+ return _session[key];
80
+ }
81
+ });
82
+ });
83
+ var _socket = require("./socket");
84
+ Object.keys(_socket).forEach(function (key) {
85
+ if (key === "default" || key === "__esModule") return;
86
+ if (key in exports && exports[key] === _socket[key]) return;
87
+ Object.defineProperty(exports, key, {
88
+ enumerable: true,
89
+ get: function () {
90
+ return _socket[key];
91
+ }
92
+ });
93
+ });
@@ -0,0 +1,22 @@
1
+ import { IAccount, IEnvironment } from './entity';
2
+ export declare enum EMessagingQueue {
3
+ test = "exodus.queue.test",
4
+ accountCreated = "exodus.account.created",
5
+ environmentCreated = "exodus.environment.created",
6
+ environmentUpdatedToken = "exodus.environment.updated.token"
7
+ }
8
+ export type TMessageQueueDataMap = {
9
+ [EMessagingQueue.test]: {
10
+ data: any;
11
+ };
12
+ [EMessagingQueue.accountCreated]: IAccount;
13
+ [EMessagingQueue.environmentCreated]: IEnvironment;
14
+ [EMessagingQueue.environmentUpdatedToken]: {
15
+ uuid: string;
16
+ oldToken: string;
17
+ newToken: string;
18
+ };
19
+ };
20
+ export type TMessagingQueueHandler<K extends keyof TMessageQueueDataMap = any> = (data: TMessageQueueDataMap[K], ack: () => void) => void;
21
+ export type TMessagingQueueEventList = Partial<Record<keyof TMessageQueueDataMap, TMessagingQueueHandler>>;
22
+ //# sourceMappingURL=messaging.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messaging.d.ts","sourceRoot":"","sources":["../../src/@types/messaging.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAElD,oBAAY,eAAe;IACzB,IAAI,sBAAsB;IAG1B,cAAc,2BAA2B;IAGzC,kBAAkB,+BAA+B;IACjD,uBAAuB,qCAAqC;CAC7D;AAGD,MAAM,MAAM,oBAAoB,GAAG;IACjC,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE;QACtB,IAAI,EAAE,GAAG,CAAC;KACX,CAAC;IACF,CAAC,eAAe,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC;IAC3C,CAAC,eAAe,CAAC,kBAAkB,CAAC,EAAE,YAAY,CAAC;IACnD,CAAC,eAAe,CAAC,uBAAuB,CAAC,EAAE;QACzC,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,sBAAsB,CAAC,CAAC,SAAS,MAAM,oBAAoB,GAAG,GAAG,IAAI,CAC/E,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAC7B,GAAG,EAAE,MAAM,IAAI,KACZ,IAAI,CAAC;AAEV,MAAM,MAAM,wBAAwB,GAAG,OAAO,CAC5C,MAAM,CAAC,MAAM,oBAAoB,EAAE,sBAAsB,CAAC,CAC3D,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.EMessagingQueue = void 0;
7
+ let EMessagingQueue = exports.EMessagingQueue = /*#__PURE__*/function (EMessagingQueue) {
8
+ EMessagingQueue["test"] = "exodus.queue.test";
9
+ EMessagingQueue["accountCreated"] = "exodus.account.created";
10
+ EMessagingQueue["environmentCreated"] = "exodus.environment.created";
11
+ EMessagingQueue["environmentUpdatedToken"] = "exodus.environment.updated.token";
12
+ return EMessagingQueue;
13
+ }({}); // Mapeamento de tópicos para tipos
@@ -0,0 +1,4 @@
1
+ export interface IService {
2
+ init: () => Promise<void>;
3
+ }
4
+ //# sourceMappingURL=service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/@types/service.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,9 @@
1
+ import { IAccount } from './entity';
2
+ export interface ISession {
3
+ token: string;
4
+ edc: string;
5
+ ekm: string;
6
+ account: IAccount;
7
+ }
8
+ export type TAccountType = 'ADMINISTRATOR' | 'BUSINESS' | 'SUPORT' | 'AGENT' | 'SUPERVISOR';
9
+ //# sourceMappingURL=session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/@types/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,QAAQ,CAAC;CACnB;AACD,MAAM,MAAM,YAAY,GAAG,eAAe,GAAG,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,YAAY,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,10 @@
1
+ import Singleton from '@app/singleton';
2
+ type NonConstructorKeys<T> = {
3
+ [P in keyof T]: T[P] extends new () => any ? never : P;
4
+ }[keyof T];
5
+ type NonConstructor<T> = Pick<T, NonConstructorKeys<T>>;
6
+ export type StaticSingleton<S extends Singleton> = NonConstructor<typeof Singleton> & {
7
+ new (): S;
8
+ };
9
+ export {};
10
+ //# sourceMappingURL=singleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"singleton.d.ts","sourceRoot":"","sources":["../../src/@types/singleton.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAEvC,KAAK,kBAAkB,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,KAAK,GAAG,CAAC;CAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AACjG,KAAK,cAAc,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;AACxD,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,SAAS,IAAI,cAAc,CAAC,OAAO,SAAS,CAAC,GAAG;IAAE,QAAQ,CAAC,CAAA;CAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,20 @@
1
+ import { SocketRequest } from '@app/controller';
2
+ import { Socket } from 'socket.io';
3
+ import { DefaultEventsMap } from 'socket.io/dist/typed-events';
4
+ export declare enum ESocketEvent {
5
+ test = "exodus.socket.event.test",
6
+ test2 = "exodus.socket.event.test2"
7
+ }
8
+ type TSocketDataEvent_1 = [string, number];
9
+ type TSocketDataEvent_2 = [string];
10
+ export type TSocketEventDataMap = {
11
+ [ESocketEvent.test]: TSocketDataEvent_1;
12
+ [ESocketEvent.test2]: TSocketDataEvent_2;
13
+ };
14
+ export type TSocket = Socket<DefaultEventsMap, DefaultEventsMap, DefaultEventsMap, any>;
15
+ export type TSocketEventFunction<K extends keyof TSocketEventDataMap> = (socket: TSocket, event: string) => TSocketEventHandle<K>;
16
+ export type TSocketEventHandle<K extends keyof TSocketEventDataMap> = (request: SocketRequest, ...args: TSocketEventDataMap[K]) => void;
17
+ export type TSocketEventList = Partial<Record<keyof TSocketEventDataMap, TSocketEventHandle<keyof TSocketEventDataMap>>>;
18
+ export type TSocketControllerEventHandler<K extends keyof TSocketEventDataMap = any> = (socket: TSocket, event: string, data: TSocketEventDataMap[K]) => void;
19
+ export {};
20
+ //# sourceMappingURL=socket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"socket.d.ts","sourceRoot":"","sources":["../../src/@types/socket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,oBAAY,YAAY;IACtB,IAAI,6BAA6B;IACjC,KAAK,8BAA8B;CACpC;AAED,KAAK,kBAAkB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC3C,KAAK,kBAAkB,GAAG,CAAC,MAAM,CAAC,CAAC;AAGnC,MAAM,MAAM,mBAAmB,GAAG;IAChC,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC;IACxC,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,kBAAkB,CAAC;CAC1C,CAAC;AACF,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,GAAG,CAAC,CAAC;AAExF,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,MAAM,mBAAmB,IAAI,CACtE,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,MAAM,KACV,kBAAkB,CAAC,CAAC,CAAC,CAAC;AAE3B,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,MAAM,mBAAmB,IAAI,CAEpE,OAAO,EAAE,aAAa,EACtB,GAAG,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAC5B,IAAI,CAAC;AAEV,MAAM,MAAM,gBAAgB,GAAG,OAAO,CACpC,MAAM,CAAC,MAAM,mBAAmB,EAAE,kBAAkB,CAAC,MAAM,mBAAmB,CAAC,CAAC,CACjF,CAAC;AAEF,MAAM,MAAM,6BAA6B,CAAC,CAAC,SAAS,MAAM,mBAAmB,GAAG,GAAG,IAAI,CACrF,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,KACzB,IAAI,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ESocketEvent = void 0;
7
+ let ESocketEvent = exports.ESocketEvent = /*#__PURE__*/function (ESocketEvent) {
8
+ ESocketEvent["test"] = "exodus.socket.event.test";
9
+ ESocketEvent["test2"] = "exodus.socket.event.test2";
10
+ return ESocketEvent;
11
+ }({}); // Mapeamento de tópicos para tipos
@@ -0,0 +1,16 @@
1
+ import { TApplicationCreationProps } from '../@types/app';
2
+ import { IService } from '../@types/service';
3
+ import Core from './core';
4
+ declare class Exodus extends Core {
5
+ private services;
6
+ private props;
7
+ constructor(props: TApplicationCreationProps);
8
+ start(): Promise<void>;
9
+ initMaster(): Promise<void>;
10
+ initCluster(): Promise<void>;
11
+ createClusters(): Promise<void>;
12
+ registerSingletonService(service: IService): void;
13
+ initServices(): Promise<void>;
14
+ }
15
+ export default Exodus;
16
+ //# sourceMappingURL=app.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/app/app.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,IAAI,MAAM,QAAQ,CAAC;AAS1B,cAAM,MAAO,SAAQ,IAAI;IACvB,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,KAAK,CAA4B;gBAG7B,KAAK,EAAE,yBAAyB;IAKtC,KAAK;IASL,UAAU;IAIV,WAAW;IAIX,cAAc;IAgBpB,wBAAwB,CAAC,OAAO,EAAE,QAAQ;IAGpC,YAAY;CAKnB;AACD,eAAe,MAAM,CAAC"}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _app = require("../config/app");
8
+ var _cluster = _interopRequireDefault(require("cluster"));
9
+ var _core = _interopRequireDefault(require("./core"));
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
+ /**
12
+ * Classe da aplicação principal
13
+ * Responsável por inicializar todos os recursos usados por este micro-serviço
14
+ *
15
+ * @class Application
16
+ * @extends {Core}
17
+ */
18
+ class Exodus extends _core.default {
19
+ services;
20
+ props;
21
+
22
+ //* Initialization
23
+ constructor(props) {
24
+ super();
25
+ this.props = props;
26
+ this.services = [];
27
+ }
28
+ async start() {
29
+ if (_cluster.default.isPrimary) {
30
+ this.initMaster();
31
+ } else {
32
+ await this.initCluster();
33
+ }
34
+ }
35
+
36
+ //* Cluster Managment
37
+ async initMaster() {
38
+ this.log(`✨ Starting ${_app.AppConfig.description} · Clusters: ${_app.AppConfig.clusters}`);
39
+ this.createClusters();
40
+ }
41
+ async initCluster() {
42
+ this.log(`📊 Cluster ${_cluster.default.worker.id} started · PID ${_cluster.default.worker.process.pid}`);
43
+ this.initServices();
44
+ }
45
+ async createClusters() {
46
+ for (let i = 0; i < this.props.maxClusters; i++) {
47
+ _cluster.default.fork();
48
+ }
49
+ _cluster.default.on('exit', (worker, _code, _signal) => {
50
+ this.log(`Cluester ${worker.process.pid} foi encerrado`, 'warning');
51
+ if (this.props.clustersRestarts) {
52
+ this.log(`Reiniciando cluster`, 'warning');
53
+ _cluster.default.fork();
54
+ }
55
+ });
56
+ }
57
+
58
+ //* Service Managment
59
+ registerSingletonService(service) {
60
+ this.services.push(service);
61
+ }
62
+ async initServices() {
63
+ for (const service of this.services) {
64
+ await service.init();
65
+ }
66
+ }
67
+ }
68
+ var _default = exports.default = Exodus;
@@ -0,0 +1,28 @@
1
+ import { NextFunction, Response } from 'express';
2
+ import { THttpResponse, TSocket, TSocketEventDataMap, TSocketEventHandle } from '../@types';
3
+ import Core from './core';
4
+ declare abstract class HttpController extends Core {
5
+ constructor();
6
+ protected send<D = any>(objResponse: THttpResponse<D>, res: Response, next?: NextFunction): void;
7
+ protected validate(data: Record<string, any>): Promise<void>;
8
+ }
9
+ export declare abstract class SocketController extends Core {
10
+ constructor();
11
+ protected handlerEventBind<K extends keyof TSocketEventDataMap>(cb: TSocketEventHandle<K>): (req: SocketRequest, data: TSocketEventDataMap[K]) => void;
12
+ protected bufferToData(data: Buffer): number[];
13
+ }
14
+ export declare class SocketRequest extends Core {
15
+ protected socket: TSocket;
16
+ protected event: keyof TSocketEventDataMap;
17
+ constructor(socket: TSocket, event: keyof TSocketEventDataMap);
18
+ send<K extends keyof TSocketEventDataMap>(event: K, ...data: TSocketEventDataMap[K]): void;
19
+ getEvent(): keyof TSocketEventDataMap;
20
+ getSocket(): TSocket;
21
+ protected dataToBuffer(data: any): Buffer;
22
+ }
23
+ export declare abstract class MessagingController extends Core {
24
+ constructor();
25
+ protected bufferToData(data: Buffer): number[];
26
+ }
27
+ export default HttpController;
28
+ //# sourceMappingURL=controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../src/app/controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC5F,OAAO,IAAI,MAAM,QAAQ,CAAC;AAS1B,uBAAe,cAAe,SAAQ,IAAI;;IAexC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,IAAI;IAIhG,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAG7C;AAUD,8BAAsB,gBAAiB,SAAQ,IAAI;;IAKjD,SAAS,CAAC,gBAAgB,CAAC,CAAC,SAAS,MAAM,mBAAmB,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC,SAC1E,aAAa,QAAQ,mBAAmB,CAAC,CAAC,CAAC;IAM1D,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM;CAGpC;AACD,qBAAa,aAAc,SAAQ,IAAI;IACrC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,KAAK,EAAE,MAAM,mBAAmB,CAAC;gBAE/B,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB;IAM7D,IAAI,CAAC,CAAC,SAAS,MAAM,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAInF,QAAQ;IAGR,SAAS;IAIT,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG;CAGjC;AAED,8BAAsB,mBAAoB,SAAQ,IAAI;;IAKpD,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM;CAGpC;AAED,eAAe,cAAc,CAAC"}