eservices-back-core 1.5.4 → 1.5.6

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 (40) hide show
  1. package/dist/app.js +1 -1
  2. package/dist/app.js.map +1 -1
  3. package/dist/auth/use-auth.d.ts +6 -11
  4. package/dist/auth/use-auth.d.ts.map +1 -1
  5. package/dist/auth/use-auth.js +34 -23
  6. package/dist/auth/use-auth.js.map +1 -1
  7. package/dist/errors/auth-error.d.ts +5 -0
  8. package/dist/errors/auth-error.d.ts.map +1 -1
  9. package/dist/errors/auth-error.js +7 -0
  10. package/dist/errors/auth-error.js.map +1 -1
  11. package/dist/logger/use-logger.d.ts.map +1 -1
  12. package/dist/logger/use-logger.js +1 -0
  13. package/dist/logger/use-logger.js.map +1 -1
  14. package/dist/middleware/error-middleware.d.ts.map +1 -1
  15. package/dist/middleware/error-middleware.js +5 -6
  16. package/dist/middleware/error-middleware.js.map +1 -1
  17. package/dist/middleware/session-middleware.d.ts.map +1 -1
  18. package/dist/middleware/session-middleware.js +9 -1
  19. package/dist/middleware/session-middleware.js.map +1 -1
  20. package/dist/model/criterion-collector.d.ts +48 -0
  21. package/dist/model/criterion-collector.d.ts.map +1 -0
  22. package/dist/model/criterion-collector.js +111 -0
  23. package/dist/model/criterion-collector.js.map +1 -0
  24. package/dist/model/criterion.d.ts +111 -0
  25. package/dist/model/criterion.d.ts.map +1 -0
  26. package/dist/model/criterion.js +124 -0
  27. package/dist/model/criterion.js.map +1 -0
  28. package/dist/router/close/test-close-router.d.ts.map +1 -1
  29. package/dist/router/close/test-close-router.js +9 -5
  30. package/dist/router/close/test-close-router.js.map +1 -1
  31. package/dist/router/index.d.ts.map +1 -1
  32. package/dist/router/index.js +47 -4
  33. package/dist/router/index.js.map +1 -1
  34. package/dist/types/auth-type.d.ts +9 -0
  35. package/dist/types/auth-type.d.ts.map +1 -1
  36. package/dist/utils/use-reconnection.d.ts +7 -0
  37. package/dist/utils/use-reconnection.d.ts.map +1 -0
  38. package/dist/utils/use-reconnection.js +32 -0
  39. package/dist/utils/use-reconnection.js.map +1 -0
  40. package/package.json +2 -2
package/dist/app.js CHANGED
@@ -31,7 +31,7 @@ console.log(`For retoken http://localhost:${process.env.PORT}/test-api/re-token`
31
31
  exchange: "AppRegister.Features.Notifications:DisplayMessageCreated"
32
32
  },
33
33
  session: {
34
- secret: process.env.AR_AITI_WS_SESSION_SECRET,
34
+ secret: "Вышел заяц на крыльцо, почесать своё яйцо.",
35
35
  resave: true,
36
36
  saveUninitialized: true,
37
37
  }
package/dist/app.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":";;;;;AAAA,qCAAsC;AAEtC,gDAAwB;AAExB,mCAA8C;AAE9C,IAAA,eAAY,EAAC;IACZ,IAAI,EAAE,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC;CACxC,CAAC,CAAC;AAEH,OAAO,CAAC,GAAG,CAAC,gCAAgC,OAAO,CAAC,GAAG,CAAC,IAAI,oBAAoB,CAAC,CAAA;AAEjF,IAAA,qBAAY,EAAC;IACZ,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;IAC9B,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,IAAwB,EAAE,oBAAoB;IAChE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO;IAC3B,UAAU,EAAE,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC;IACtC,WAAW,EAAE,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC;IACtD,IAAI,EAAE;QACL,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;QACrC,OAAO,EAAG,OAAO,CAAC,GAAG,CAAC,QAAQ;QAC9B,QAAQ,EAAG,OAAO,CAAC,GAAG,CAAC,cAAc;QACrC,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW;KACpC;IACF,IAAI,EAAE;QACL,KAAK,EAAE,aAAa;QACpB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,OAAO;QACjB,QAAQ,EAAE,eAAe;QACzB,QAAQ,EAAE,0DAA0D;KACpE;IACD,OAAO,EAAE;QACR,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB;QAC7C,MAAM,EAAE,IAAI;QACZ,iBAAiB,EAAE,IAAI;KACvB;CACD,CAAC,CAAA"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":";;;;;AAAA,qCAAsC;AAEtC,gDAAwB;AAExB,mCAA8C;AAE9C,IAAA,eAAY,EAAC;IACZ,IAAI,EAAE,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC;CACxC,CAAC,CAAC;AAEH,OAAO,CAAC,GAAG,CAAC,gCAAgC,OAAO,CAAC,GAAG,CAAC,IAAI,oBAAoB,CAAC,CAAA;AAEjF,IAAA,qBAAY,EAAC;IACZ,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;IAC9B,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,IAAwB,EAAE,oBAAoB;IAChE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO;IAC3B,UAAU,EAAE,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC;IACtC,WAAW,EAAE,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC;IACtD,IAAI,EAAE;QACL,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;QACrC,OAAO,EAAG,OAAO,CAAC,GAAG,CAAC,QAAQ;QAC9B,QAAQ,EAAG,OAAO,CAAC,GAAG,CAAC,cAAc;QACrC,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW;KACpC;IACF,IAAI,EAAE;QACL,KAAK,EAAE,aAAa;QACpB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,OAAO;QACjB,QAAQ,EAAE,eAAe;QACzB,QAAQ,EAAE,0DAA0D;KACpE;IACD,OAAO,EAAE;QACR,MAAM,EAAE,4CAA4C;QACpD,MAAM,EAAE,IAAI;QACZ,iBAAiB,EAAE,IAAI;KACvB;CACD,CAAC,CAAA"}
@@ -1,6 +1,5 @@
1
- import { TokenSet } from 'openid-client';
2
1
  import { Request } from "express";
3
- import { IAuthOptions } from "../types/auth-type";
2
+ import { IAuthClientState, IAuthOptions } from "../types/auth-type";
4
3
  declare const SESSION_KEY = "auth";
5
4
  declare global {
6
5
  namespace Express {
@@ -20,19 +19,15 @@ export default function useAuth(options: IAuthOptions): {
20
19
  useWSAuthMiddleware: (req: Request) => Promise<void>;
21
20
  silentLogout: (req: Request) => void;
22
21
  };
23
- interface IAuthClientState {
24
- codeVerifier: string;
25
- accessToken: string;
26
- tokenType: string;
27
- refreshToken: string;
28
- expiresAt: number;
29
- claims: ReturnType<TokenSet['claims']>;
30
- }
31
22
  /**
32
23
  * @description Возвращает набор данных связанных с авторизацией из сессии.
33
24
  */
34
- export declare function getAuthStateFormRequest(request: Request): any;
25
+ export declare function getAuthStateFormRequest(request: Request): undefined | Partial<IAuthClientState>;
35
26
  export declare function getFullAccessToken(request: Request): string;
27
+ /**
28
+ * @description Функция возвращает идентификатор текущего пользователя(UserID) из запроса.
29
+ * @return {number} userId
30
+ */
36
31
  export declare function getUserIdFromAuthRequest(request: Request): number;
37
32
  export {};
38
33
  //# sourceMappingURL=use-auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-auth.d.ts","sourceRoot":"","sources":["../../src/auth/use-auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,QAAQ,EAAkB,MAAM,eAAe,CAAC;AAE7E,OAAgB,EAAC,OAAO,EAAC,MAAM,SAAS,CAAC;AAIzC,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAMhD,QAAA,MAAM,WAAW,SAAS,CAAC;AAK3B,OAAO,CAAC,MAAM,CAAA;IACb,UAAU,OAAO,CAAC;QACjB,UAAU,OAAO;YAChB,OAAO,EAAE;gBACR,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;aACxC,CAAA;SACD;KACD;CACD;AAID;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,OAAO,EAAE,YAAY;;+BA4HZ,OAAO;wBAqBpB,OAAO;EASlC;AAQD,UAAU,gBAAgB;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;CACtC;AA6BD;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,OAMvD;AAuBD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,UAElD;AACD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,UAGxD"}
1
+ {"version":3,"file":"use-auth.d.ts","sourceRoot":"","sources":["../../src/auth/use-auth.ts"],"names":[],"mappings":"AAEA,OAAgB,EAAC,OAAO,EAAC,MAAM,SAAS,CAAC;AAIzC,OAAO,EAAC,gBAAgB,EAAE,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAOlE,QAAA,MAAM,WAAW,SAAS,CAAC;AAK3B,OAAO,CAAC,MAAM,CAAA;IACb,UAAU,OAAO,CAAC;QACjB,UAAU,OAAO;YAChB,OAAO,EAAE;gBACR,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;aACxC,CAAA;SACD;KACD;CACD;AAID;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,OAAO,EAAE,YAAY;;+BAkIZ,OAAO;wBAwBpB,OAAO;EASlC;AAqCD;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAM/F;AAuBD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,UAElD;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,UAGxD"}
@@ -21,6 +21,7 @@ const use_logger_1 = require("../logger/use-logger");
21
21
  const Server_1 = __importDefault(require("../Server"));
22
22
  const auth_error_1 = __importDefault(require("../errors/auth-error"));
23
23
  const get_auth_url_1 = __importDefault(require("./get-auth-url"));
24
+ const use_reconnection_1 = __importDefault(require("../utils/use-reconnection"));
24
25
  const DEBUG_KEY = "eservices-core:auth";
25
26
  // Name of SESSION key that will be used for store auth data.
26
27
  const SESSION_KEY = "auth";
@@ -38,29 +39,26 @@ function useAuth(options) {
38
39
  const { issuerBaseURL, baseURL } = options;
39
40
  let client;
40
41
  let APPIssuer;
41
- const reconnectTimeout = 2000;
42
42
  // URL на который нас будет перебрасывать ID server вместе с code для дальнейшего получения токенов.
43
43
  const callbackURL = baseURL + "/callback";
44
44
  /**
45
45
  * @description Функция для чтения метаданных OIDC и создание web-server-client.
46
46
  */
47
- function init() {
48
- return __awaiter(this, void 0, void 0, function* () {
49
- use_logger_1.Logger.info("Attempt to read OIDC issuer");
50
- APPIssuer = yield openid_client_1.Issuer.discover(issuerBaseURL);
51
- use_logger_1.Logger.info(`Discovered issuer %s success!`, issuerBaseURL);
52
- client = new APPIssuer.Client({
53
- client_id: options.clientId,
54
- client_secret: options.clientSecret,
55
- response_types: ['code'],
56
- redirect_uris: [callbackURL]
57
- });
58
- use_logger_1.Logger.info(`Client was created successful!`);
47
+ (0, use_reconnection_1.default)(() => __awaiter(this, void 0, void 0, function* () {
48
+ use_logger_1.Logger.info("Attempt to read OIDC issuer");
49
+ APPIssuer = yield openid_client_1.Issuer.discover(issuerBaseURL);
50
+ use_logger_1.Logger.info(`Discovered issuer %s success!`, issuerBaseURL);
51
+ client = new APPIssuer.Client({
52
+ client_id: options.clientId,
53
+ client_secret: options.clientSecret,
54
+ response_types: ['code'],
55
+ redirect_uris: [callbackURL]
59
56
  });
60
- }
61
- init().catch(() => {
62
- use_logger_1.Logger.error("Read OIDC issuer was failed.");
63
- setTimeout(init, reconnectTimeout);
57
+ use_logger_1.Logger.info(`Client was created successful!`);
58
+ }), {
59
+ onReject() {
60
+ use_logger_1.Logger.error("Read OIDC issuer was failed.");
61
+ }
64
62
  });
65
63
  /**
66
64
  * @description Обновляет набор данных по переданному refreshToken.
@@ -93,10 +91,16 @@ function useAuth(options) {
93
91
  return res.redirect(baseURL);
94
92
  }
95
93
  }));
96
- router.get((0, get_auth_url_1.default)().logout, (req, res) => {
97
- cleanAuthStateFormRequest(req);
98
- // res.redirect(APPIssuer.metadata.end_session_endpoint);
99
- res.redirect((0, get_auth_url_1.default)().login);
94
+ router.get((0, get_auth_url_1.default)().logout, (req, res, next) => {
95
+ try {
96
+ cleanAuthStateFormRequest(req);
97
+ // res.redirect(APPIssuer.metadata.end_session_endpoint);
98
+ res.redirect((0, get_auth_url_1.default)().login);
99
+ }
100
+ catch (e) {
101
+ debug("Logout was rejected with error ", e);
102
+ next(e);
103
+ }
100
104
  });
101
105
  router.use((req, res, next) => __awaiter(this, void 0, void 0, function* () {
102
106
  try {
@@ -134,7 +138,8 @@ function useAuth(options) {
134
138
  return res.redirect(url);
135
139
  }
136
140
  catch (e) {
137
- next(e);
141
+ use_logger_1.Logger.error(e);
142
+ return res.redirect((0, get_auth_url_1.default)().login);
138
143
  }
139
144
  }));
140
145
  return router;
@@ -144,6 +149,8 @@ function useAuth(options) {
144
149
  debug("Process of socket auth was started.");
145
150
  return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
146
151
  const authState = getAuthStateFormRequest(req);
152
+ if (!authState)
153
+ return reject("Authorization Session not Found.");
147
154
  if (isActiveAuthorizedState(authState))
148
155
  return void resolve();
149
156
  debug("Данные access авторизации устарели или не указаны.");
@@ -210,7 +217,7 @@ function cleanAuthStateFormRequest(request) {
210
217
  try {
211
218
  delete request.session[getSessionKey()];
212
219
  // @ts-ignore
213
- (_b = (_a = request.session).destroy) === null || _b === void 0 ? void 0 : _b.call(_a);
220
+ (_b = (_a = request.session) === null || _a === void 0 ? void 0 : _a.destroy) === null || _b === void 0 ? void 0 : _b.call(_a);
214
221
  }
215
222
  catch (e) {
216
223
  debug("Clean auth state error", e);
@@ -227,6 +234,10 @@ function getFullAccessToken(request) {
227
234
  return `${request.session[SESSION_KEY].tokenType} ${request.session[SESSION_KEY].accessToken}`;
228
235
  }
229
236
  exports.getFullAccessToken = getFullAccessToken;
237
+ /**
238
+ * @description Функция возвращает идентификатор текущего пользователя(UserID) из запроса.
239
+ * @return {number} userId
240
+ */
230
241
  function getUserIdFromAuthRequest(request) {
231
242
  const authState = getAuthStateFormRequest(request);
232
243
  return Number.parseInt(authState.claims["AppRegister.Claim.UserId"], 10);
@@ -1 +1 @@
1
- {"version":3,"file":"use-auth.js","sourceRoot":"","sources":["../../src/auth/use-auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-auth.js","sourceRoot":"","sources":["../../src/auth/use-auth.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,10 @@ export default class AuthError extends Error {
3
3
  * @description WebServer Client Auth is not initialize.
4
4
  */
5
5
  static WebServerClientNotInitialize(): AuthError;
6
+ /**
7
+ * @description Ошибка для неавторизованных пользователей. В случае, когда информации о пользователе нет или информация
8
+ * устарела
9
+ */
10
+ static UserIsNotAuthorize(): AuthError;
6
11
  }
7
12
  //# sourceMappingURL=auth-error.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth-error.d.ts","sourceRoot":"","sources":["../../src/errors/auth-error.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,KAAK;IAE3C;;OAEG;IACH,MAAM,CAAC,4BAA4B;CAInC"}
1
+ {"version":3,"file":"auth-error.d.ts","sourceRoot":"","sources":["../../src/errors/auth-error.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,KAAK;IAE3C;;OAEG;IACH,MAAM,CAAC,4BAA4B;IAInC;;;OAGG;IACH,MAAM,CAAC,kBAAkB;CAGzB"}
@@ -7,6 +7,13 @@ class AuthError extends Error {
7
7
  static WebServerClientNotInitialize() {
8
8
  return new AuthError(`The client for connecting to the ID server has not yet been installed.`);
9
9
  }
10
+ /**
11
+ * @description Ошибка для неавторизованных пользователей. В случае, когда информации о пользователе нет или информация
12
+ * устарела
13
+ */
14
+ static UserIsNotAuthorize() {
15
+ return new AuthError(`The user is not authorized. Or the current session is completely out of date without the ability to refresh`);
16
+ }
10
17
  }
11
18
  exports.default = AuthError;
12
19
  //# sourceMappingURL=auth-error.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth-error.js","sourceRoot":"","sources":["../../src/errors/auth-error.ts"],"names":[],"mappings":";;AAAA,MAAqB,SAAU,SAAQ,KAAK;IAE3C;;OAEG;IACH,MAAM,CAAC,4BAA4B;QAClC,OAAO,IAAI,SAAS,CAAC,wEAAwE,CAAC,CAAA;IAC/F,CAAC;CAED;AATD,4BASC"}
1
+ {"version":3,"file":"auth-error.js","sourceRoot":"","sources":["../../src/errors/auth-error.ts"],"names":[],"mappings":";;AAAA,MAAqB,SAAU,SAAQ,KAAK;IAE3C;;OAEG;IACH,MAAM,CAAC,4BAA4B;QAClC,OAAO,IAAI,SAAS,CAAC,wEAAwE,CAAC,CAAA;IAC/F,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,kBAAkB;QACxB,OAAO,IAAI,SAAS,CAAC,6GAA6G,CAAC,CAAC;IACrI,CAAC;CACD;AAhBD,4BAgBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-logger.d.ts","sourceRoot":"","sources":["../../src/logger/use-logger.ts"],"names":[],"mappings":"AAEA,OAAO,OAA+B,MAAM,SAAS,CAAC;AAStD,MAAM,CAAC,OAAO,UAAU,SAAS,SAGhC;AAOD,qBAAa,MAAM;IACf,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAA;;IAuB7B,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE;IAI1B,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE;IAG3B,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE;IAG5B,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE;IAG3B,MAAM,CAAC,OAAO;CAGjB"}
1
+ {"version":3,"file":"use-logger.d.ts","sourceRoot":"","sources":["../../src/logger/use-logger.ts"],"names":[],"mappings":"AAEA,OAAO,OAA+B,MAAM,SAAS,CAAC;AAStD,MAAM,CAAC,OAAO,UAAU,SAAS,SAGhC;AAQD,qBAAa,MAAM;IACf,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAA;;IAuB7B,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE;IAI1B,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE;IAG3B,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE;IAG5B,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE;IAG3B,MAAM,CAAC,OAAO;CAGjB"}
@@ -18,6 +18,7 @@ function useLogger() {
18
18
  }
19
19
  exports.default = useLogger;
20
20
  const myFormat = printf(data => {
21
+ // @ts-ignore
21
22
  return `${data.timestamp} ${data.level}: ${data.message} ${(data === null || data === void 0 ? void 0 : data.stack) || ""}`;
22
23
  });
23
24
  class Logger {
@@ -1 +1 @@
1
- {"version":3,"file":"use-logger.js","sourceRoot":"","sources":["../../src/logger/use-logger.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,uDAA+B;AAC/B,qCAAsD;AACtD,0FAAwD;AACxD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,gBAAM,CAAC;AAGzD,SAAS,WAAW,CAAC,IAAY;IAC7B,OAAO,cAAI,CAAC,IAAI,CAAC,gBAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,CAAC;AAC/E,CAAC;AAED,SAAwB,SAAS;IAC7B,gDAAgD;IAChD,IAAI,MAAM,EAAE,CAAA;AAChB,CAAC;AAHD,4BAGC;AAGD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE;IAC3B,OAAO,GAAG,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,OAAO,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,KAAI,EAAE,EAAE,CAAC;AACpF,CAAC,CAAC,CAAC;AAEH,MAAa,MAAM;IAGf;QACI,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;QAEvB,MAAM,CAAC,MAAM,GAAI,IAAA,sBAAY,EAAC;YAC1B,MAAM,EAAE,OAAO,CACX,gBAAM,CAAC,SAAS,EAAE,EAClB,KAAK,EAAE,EACP,KAAK,EAAE,EACP,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EACvB,QAAQ,CACX;YACD,UAAU,EAAE;gBACR,IAAI,mCAAe,CAAC;oBAChB,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC;oBAC/B,WAAW,EAAE,YAAY;oBACzB,aAAa,EAAE,IAAI;oBACnB,OAAO,EAAE,KAAK;iBACjB,CAAC;gBACF,oCAAoC;aACvC;SACJ,CAAC,CAAC;IACP,CAAC;IACD,MAAM,CAAC,GAAG,CAAC,GAAG,KAAY;QACtB,aAAa;QACb,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IAC9B,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,KAAY;QACvB,MAAM,CAAC,GAAG,CAAC,MAAM,EAAG,GAAG,KAAK,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,GAAG,KAAY;QACxB,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,KAAY;QACvB,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,CAAC,OAAO;QACV,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC;CACJ;AAzCD,wBAyCC"}
1
+ {"version":3,"file":"use-logger.js","sourceRoot":"","sources":["../../src/logger/use-logger.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,uDAA+B;AAC/B,qCAAsD;AACtD,0FAAwD;AACxD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,gBAAM,CAAC;AAGzD,SAAS,WAAW,CAAC,IAAY;IAC7B,OAAO,cAAI,CAAC,IAAI,CAAC,gBAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,CAAC;AAC/E,CAAC;AAED,SAAwB,SAAS;IAC7B,gDAAgD;IAChD,IAAI,MAAM,EAAE,CAAA;AAChB,CAAC;AAHD,4BAGC;AAGD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE;IAC3B,aAAa;IACb,OAAO,GAAG,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,OAAO,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,KAAI,EAAE,EAAE,CAAC;AACpF,CAAC,CAAC,CAAC;AAEH,MAAa,MAAM;IAGf;QACI,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;QAEvB,MAAM,CAAC,MAAM,GAAI,IAAA,sBAAY,EAAC;YAC1B,MAAM,EAAE,OAAO,CACX,gBAAM,CAAC,SAAS,EAAE,EAClB,KAAK,EAAE,EACP,KAAK,EAAE,EACP,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EACvB,QAAQ,CACX;YACD,UAAU,EAAE;gBACR,IAAI,mCAAe,CAAC;oBAChB,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC;oBAC/B,WAAW,EAAE,YAAY;oBACzB,aAAa,EAAE,IAAI;oBACnB,OAAO,EAAE,KAAK;iBACjB,CAAC;gBACF,oCAAoC;aACvC;SACJ,CAAC,CAAC;IACP,CAAC;IACD,MAAM,CAAC,GAAG,CAAC,GAAG,KAAY;QACtB,aAAa;QACb,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IAC9B,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,KAAY;QACvB,MAAM,CAAC,GAAG,CAAC,MAAM,EAAG,GAAG,KAAK,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,GAAG,KAAY;QACxB,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,KAAY;QACvB,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,CAAC,OAAO;QACV,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC;CACJ;AAzCD,wBAyCC"}
@@ -1 +1 @@
1
- {"version":3,"file":"error-middleware.d.ts","sourceRoot":"","sources":["../../src/middleware/error-middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;wCAOV,OAAO,OAAO,QAAQ;AAAtD,wBAwBE"}
1
+ {"version":3,"file":"error-middleware.d.ts","sourceRoot":"","sources":["../../src/middleware/error-middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;wCAOV,OAAO,OAAO,QAAQ;AAAtD,wBAyBE"}
@@ -19,12 +19,10 @@ const use_logger_1 = require("../logger/use-logger");
19
19
  const auth_error_1 = __importDefault(require("../errors/auth-error"));
20
20
  const get_auth_url_1 = __importDefault(require("../auth/get-auth-url"));
21
21
  exports.default = (err, req, res) => __awaiter(void 0, void 0, void 0, function* () {
22
- use_logger_1.Logger.error(err);
23
- if (err instanceof auth_error_1.default) {
24
- (0, auth_middleware_1.authModule)().silentLogout(req);
25
- return res.redirect((0, get_auth_url_1.default)().login);
26
- }
27
- if (req.method === "GET" && !req.infoUserId) {
22
+ console.log('ERROR MIDDLEWARE');
23
+ use_logger_1.Logger.error('Error level %o', err);
24
+ // Error bind with Authorization
25
+ if (err instanceof auth_error_1.default || (req.method === "GET" && !req.infoUserId)) {
28
26
  (0, auth_middleware_1.authModule)().silentLogout(req);
29
27
  return res.redirect((0, get_auth_url_1.default)().login);
30
28
  }
@@ -36,5 +34,6 @@ exports.default = (err, req, res) => __awaiter(void 0, void 0, void 0, function*
36
34
  .json((0, error_response_dto_1.default)(err.message, err.status));
37
35
  if (err instanceof Error)
38
36
  return void res.status(400).json((0, error_response_dto_1.default)(err.message, 400));
37
+ res.redirect((0, get_auth_url_1.default)().login);
39
38
  });
40
39
  //# sourceMappingURL=error-middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"error-middleware.js","sourceRoot":"","sources":["../../src/middleware/error-middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,oEAA2C;AAE3C,oFAA0D;AAC1D,uDAA6C;AAC7C,qDAA4C;AAC5C,sEAA6C;AAC7C,wEAA8C;AAE9C,kBAAe,CAAO,GAAG,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;IAEzD,mBAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAElB,IAAI,GAAG,YAAY,oBAAS,EAAE,CAAC;QAC9B,IAAA,4BAAU,GAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAC/B,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAA,sBAAU,GAAE,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,IAAK,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,CAAC,GAAG,CAAC,UAAU,EAAG,CAAC;QAC/C,IAAA,4BAAU,GAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAC/B,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAA,sBAAU,GAAE,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ;QAC1B,OAAO,KAAK,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAE9D,IAAI,GAAG,YAAY,mBAAQ;QAC1B,OAAO,KAAK,GAAG;aACd,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;aAClB,IAAI,CAAC,IAAA,4BAAgB,EAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAElD,IAAI,GAAG,YAAY,KAAK;QACvB,OAAO,KAAK,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;AACvE,CAAC,CAAA,CAAC"}
1
+ {"version":3,"file":"error-middleware.js","sourceRoot":"","sources":["../../src/middleware/error-middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,oEAA2C;AAE3C,oFAA0D;AAC1D,uDAA6C;AAC7C,qDAA4C;AAC5C,sEAA6C;AAC7C,wEAA8C;AAE9C,kBAAe,CAAO,GAAG,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;IACzD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;IAC/B,mBAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IAEpC,gCAAgC;IAChC,IACC,GAAG,YAAY,oBAAS,IAAI,CAAC,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EACpE,CAAC;QACF,IAAA,4BAAU,GAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAC/B,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAA,sBAAU,GAAE,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAGD,IAAI,OAAO,GAAG,KAAK,QAAQ;QAC1B,OAAO,KAAK,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAE9D,IAAI,GAAG,YAAY,mBAAQ;QAC1B,OAAO,KAAK,GAAG;aACd,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;aAClB,IAAI,CAAC,IAAA,4BAAgB,EAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAElD,IAAI,GAAG,YAAY,KAAK;QACvB,OAAO,KAAK,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IAEtE,GAAG,CAAC,QAAQ,CAAC,IAAA,sBAAU,GAAE,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC,CAAA,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"session-middleware.d.ts","sourceRoot":"","sources":["../../src/middleware/session-middleware.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,eAAO,MAAM,aAAa,WAAgD,CAAC"}
1
+ {"version":3,"file":"session-middleware.d.ts","sourceRoot":"","sources":["../../src/middleware/session-middleware.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,eAAO,MAAM,aAAa,WAGzB,CAAA"}
@@ -9,6 +9,14 @@ const Server_1 = __importDefault(require("../Server"));
9
9
  /**
10
10
  * @description Сессия полностью задаётся конфигурацией сервера и не зависит от версии ядра.
11
11
  */
12
- const sessionParser = () => (0, express_session_1.default)(Server_1.default.instance.params.session);
12
+ const sessionParser = () => {
13
+ if (!sessionHandler)
14
+ initSession();
15
+ return sessionHandler;
16
+ };
13
17
  exports.sessionParser = sessionParser;
18
+ function initSession() {
19
+ sessionHandler = (0, express_session_1.default)(Server_1.default.instance.params.session);
20
+ }
21
+ let sessionHandler = null;
14
22
  //# sourceMappingURL=session-middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"session-middleware.js","sourceRoot":"","sources":["../../src/middleware/session-middleware.ts"],"names":[],"mappings":";;;;;;AAAA,sEAAsC;AACtC,uDAA+B;AAE/B;;GAEG;AACI,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,IAAA,yBAAO,EAAC,gBAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AAA9D,QAAA,aAAa,iBAAiD"}
1
+ {"version":3,"file":"session-middleware.js","sourceRoot":"","sources":["../../src/middleware/session-middleware.ts"],"names":[],"mappings":";;;;;;AAAA,sEAAsC;AACtC,uDAA+B;AAE/B;;GAEG;AACI,MAAM,aAAa,GAAG,GAAG,EAAE;IACjC,IAAI,CAAC,cAAc;QAAE,WAAW,EAAE,CAAC;IACnC,OAAO,cAAc,CAAC;AACvB,CAAC,CAAA;AAHY,QAAA,aAAa,iBAGzB;AAED,SAAS,WAAW;IACnB,cAAc,GAAG,IAAA,yBAAO,EAAC,gBAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;AACzD,CAAC;AAED,IAAI,cAAc,GAAG,IAAI,CAAC"}
@@ -0,0 +1,48 @@
1
+ import { CriterionReferenceValue } from "./criterion";
2
+ export declare class CriterionCollector {
3
+ /**
4
+ * @description Используется для соединения групп.
5
+ * @example StatusCode=P&TypeCode=S -> [StatusCode=P][TypeCode=S]
6
+ */
7
+ static SYMBOL_GROUP_SPLITTER: string;
8
+ /**
9
+ * @description Используется для соединения подгруппы.
10
+ * @example StatusCode=P+Name=Jenesius -> [StatusCode=P + Name=Jenesius]
11
+ */
12
+ static SYMBOL_LOCAL_SPLITTER: string;
13
+ /**
14
+ * @description Набор сущностей, которые используются для вычисления критериев.
15
+ */
16
+ entities: Map<string, ICriterionEntityInfo>;
17
+ accessToken: string;
18
+ masterEntities: ICriterionCollectorOptions['entities'];
19
+ array: ICriterionCollectorExecutor[][];
20
+ preset: ICriterionCollectorOptions["preset"];
21
+ /**
22
+ * @description Функция используется для коллекционирования(соединения в кучу) всех полей для всех сущностей.
23
+ */
24
+ private collectFields;
25
+ constructor(options: ICriterionCollectorOptions);
26
+ load(): Promise<PromiseSettledResult<void>[]>;
27
+ generate(): string;
28
+ private getValue;
29
+ private getExpression;
30
+ addGroup(data: ICriterionCollectorExecutor[]): void;
31
+ addFields(entity: string, fields: string[]): () => string;
32
+ addMasterEntityFields(entity: string, fields: string[]): () => string;
33
+ addEqualExpress(expressionName: string, entity: string, fieldName: string, value: unknown): () => string;
34
+ static isReferenceValue(value: unknown): value is CriterionReferenceValue;
35
+ }
36
+ type ICriterionCollectorExecutor = (collector: CriterionCollector) => string | null;
37
+ interface ICriterionEntityInfo {
38
+ id?: number;
39
+ fields: string[];
40
+ values?: Record<string, unknown>;
41
+ }
42
+ interface ICriterionCollectorOptions {
43
+ accessToken: string;
44
+ entities: [string, number][];
45
+ preset?: Record<string, unknown>;
46
+ }
47
+ export {};
48
+ //# sourceMappingURL=criterion-collector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"criterion-collector.d.ts","sourceRoot":"","sources":["../../src/model/criterion-collector.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,uBAAuB,EAAC,MAAM,aAAa,CAAC;AAEpD,qBAAa,kBAAkB;IAC9B;;;OAGG;IACH,MAAM,CAAC,qBAAqB,SAAO;IAEnC;;;OAGG;IACH,MAAM,CAAC,qBAAqB,SAAO;IAEnC;;OAEG;IACH,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAY;IAEvD,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,0BAA0B,CAAC,UAAU,CAAC,CAAC;IAEvD,KAAK,EAAE,2BAA2B,EAAE,EAAE,CAAK;IAE3C,MAAM,EAAE,0BAA0B,CAAC,QAAQ,CAAC,CAAA;IAE5C;;OAEG;IACH,OAAO,CAAC,aAAa;gBAoBT,OAAO,EAAE,0BAA0B;IAO/C,IAAI;IAgBJ,QAAQ;IAaR,OAAO,CAAC,QAAQ;IAYhB,OAAO,CAAC,aAAa;IAIrB,QAAQ,CAAC,IAAI,EAAE,2BAA2B,EAAE;IAI5C,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;IAK1C,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;IAKtD,eAAe,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;IAOzF,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,uBAAuB;CAGzE;AAED,KAAK,2BAA2B,GAAG,CAAC,SAAS,EAAE,kBAAkB,KAAK,MAAM,GAAG,IAAI,CAAA;AAEnF,UAAU,oBAAoB;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAChC;AACD,UAAU,0BAA0B;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAChC"}
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.CriterionCollector = void 0;
7
+ const data_service_1 = __importDefault(require("../services/data-service"));
8
+ class CriterionCollector {
9
+ /**
10
+ * @description Функция используется для коллекционирования(соединения в кучу) всех полей для всех сущностей.
11
+ */
12
+ collectFields(entity, fields) {
13
+ var _a;
14
+ if (typeof entity !== 'string')
15
+ return;
16
+ if (typeof fields === 'string' && fields.startsWith('@'))
17
+ return;
18
+ if (!this.entities.has(entity)) {
19
+ const id = (_a = this.masterEntities.find(item => item[0] === entity)) === null || _a === void 0 ? void 0 : _a[1];
20
+ if (!id)
21
+ return;
22
+ this.entities.set(entity, {
23
+ fields: [],
24
+ id
25
+ });
26
+ }
27
+ const store = this.entities.get(entity);
28
+ if (typeof fields === 'string')
29
+ store.fields.push(fields);
30
+ if (Array.isArray(fields))
31
+ store.fields.push(...fields);
32
+ }
33
+ constructor(options) {
34
+ /**
35
+ * @description Набор сущностей, которые используются для вычисления критериев.
36
+ */
37
+ this.entities = new Map();
38
+ this.array = [];
39
+ this.accessToken = options.accessToken;
40
+ this.masterEntities = options.entities;
41
+ this.preset = options.preset || {};
42
+ }
43
+ load() {
44
+ const dataService = new data_service_1.default(this.accessToken);
45
+ return Promise.allSettled(Array.from(this.entities).map(([entity, data]) => {
46
+ return dataService.getById(entity, data.id, {
47
+ fields: data.fields.join(" ")
48
+ }).then(values => {
49
+ this.entities.get(entity).values = values;
50
+ });
51
+ }));
52
+ }
53
+ generate() {
54
+ return this.array.map(item => {
55
+ return item.map(func => {
56
+ try {
57
+ return func.call(this);
58
+ }
59
+ catch (e) {
60
+ return null;
61
+ }
62
+ }).filter(a => !!a).join(CriterionCollector.SYMBOL_LOCAL_SPLITTER);
63
+ }).filter(a => !!a).join(CriterionCollector.SYMBOL_GROUP_SPLITTER);
64
+ }
65
+ getValue(entity, fieldName) {
66
+ if (typeof fieldName === 'string') {
67
+ if (this.preset[fieldName])
68
+ return this.preset[fieldName];
69
+ return this.entities.get(entity).values[fieldName];
70
+ }
71
+ if (CriterionCollector.isReferenceValue(fieldName))
72
+ return fieldName.value;
73
+ throw new Error('+');
74
+ }
75
+ getExpression(name, value) {
76
+ if (/^statuscode$/i.test(name))
77
+ return value; // Убираем StatusCode
78
+ return name + '=' + value;
79
+ }
80
+ addGroup(data) {
81
+ this.array.push(data);
82
+ }
83
+ addFields(entity, fields) {
84
+ this.collectFields(entity, fields);
85
+ return () => fields.map(field => this.getExpression(field, this.getValue(entity, field))).join(CriterionCollector.SYMBOL_LOCAL_SPLITTER);
86
+ }
87
+ addMasterEntityFields(entity, fields) {
88
+ this.collectFields(entity, fields);
89
+ return () => fields.map(field => this.getExpression([entity, field].join('.'), this.getValue(entity, field))).join(CriterionCollector.SYMBOL_LOCAL_SPLITTER);
90
+ }
91
+ addEqualExpress(expressionName, entity, fieldName, value) {
92
+ this.collectFields(entity, fieldName);
93
+ this.collectFields(entity, value);
94
+ return () => this.getValue(entity, fieldName) === this.getValue(entity, value) ? expressionName : null;
95
+ }
96
+ static isReferenceValue(value) {
97
+ return !!value && typeof value === 'object' && Object.prototype.hasOwnProperty.call(value, "value");
98
+ }
99
+ }
100
+ exports.CriterionCollector = CriterionCollector;
101
+ /**
102
+ * @description Используется для соединения групп.
103
+ * @example StatusCode=P&TypeCode=S -> [StatusCode=P][TypeCode=S]
104
+ */
105
+ CriterionCollector.SYMBOL_GROUP_SPLITTER = '&';
106
+ /**
107
+ * @description Используется для соединения подгруппы.
108
+ * @example StatusCode=P+Name=Jenesius -> [StatusCode=P + Name=Jenesius]
109
+ */
110
+ CriterionCollector.SYMBOL_LOCAL_SPLITTER = '+';
111
+ //# sourceMappingURL=criterion-collector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"criterion-collector.js","sourceRoot":"","sources":["../../src/model/criterion-collector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,111 @@
1
+ /**
2
+ * @description Дай Всемогущий тебе сил для понимания того, что здесь происходит.
3
+ * @Jenesius
4
+ *
5
+ * Принцип работы данного класса следующий:
6
+ * 1. Получения значений
7
+ * 2. Приведение к нормальному виду конфигурации
8
+ * 3. Сборка всех значений и генерация collector
9
+ * 4. Загрузка всех значений
10
+ * 5. Сборка collector
11
+ */
12
+ import { CriterionCollector } from "./criterion-collector";
13
+ export default class Criterion {
14
+ /**
15
+ * @description Массив обработанных критериев.
16
+ */
17
+ array: ICriterionItem[][];
18
+ /**
19
+ * @description Названия сущности, которая является базовой для текущего критерия
20
+ */
21
+ primaryEntity: string;
22
+ /**
23
+ * @description Набор сущностей с их идентификаторами
24
+ */
25
+ masterEntities: Map<string, number>;
26
+ collector: CriterionCollector;
27
+ /**
28
+ * @description Конфигурация принимает массив критериев. Обратите внимание, что Критерии первого уровня, будут соединены
29
+ * друг с другой при помощи символа Criterion.SYMBOL_GROUP_SPLITTER. Критерии второго уровня(относящиеся к одной группе)
30
+ * будет соединены при помощи Criterion.SYMBOL_LOCAL_SPLITTER.
31
+ */
32
+ constructor(configuration: (ICriterionItem | ICriterionItem[])[], options: ICriterionOptions);
33
+ /**
34
+ * @description Метод получает начальные критерии(переданные в конструктор) и возвращает обработанный двумерный
35
+ * массив. Важно помнить, что данная функция работает только для первого уровня критериев и не спускается
36
+ * рекурсивно.
37
+ */
38
+ private parseCriterion;
39
+ private splitStringByFieldName;
40
+ /**
41
+ * @description Функция собирает все поля для каждой сущности. Это нудно для того, чтобы одним запросом загрузить
42
+ * всю информацию и не запрашивать по одному полу. Также собирает
43
+ */
44
+ private collectExtendedInformation;
45
+ /**
46
+ * @description Функция генерирует критерий.
47
+ */
48
+ generate(): Promise<string>;
49
+ static isFieldCriterion(item: unknown): item is IFieldCriterion;
50
+ static isMasterCriterion(item: unknown): item is IMasterCriterion;
51
+ static isNamedCriterion(item: unknown): item is INamedCriterion;
52
+ static isEqualCriterion(item: INamedCriterion): item is INamedCriterion<ICriterionExpressionEqual>;
53
+ }
54
+ /**
55
+ * @description Точечный элемент описания критериев.
56
+ */
57
+ export type ICriterionItem = IFieldCriterion | IMasterCriterion | INamedCriterion;
58
+ /**
59
+ * @description Используется для установки критериев по значению поля. Важно помнить, что порядок может иметь значения.
60
+ * @example StatusCode
61
+ * @example Application.Type&Customer.StatusCode
62
+ */
63
+ type IFieldCriterion = string;
64
+ /**
65
+ * @description Используется для задания критериев для master entity. Master Entity можно назвать родительскую сущность,
66
+ * от которой зависит дочерняя.
67
+ */
68
+ type IMasterCriterion = {
69
+ /**
70
+ * @description Название сущности, которая выступает в качестве родителя.
71
+ */
72
+ masterEntity: string;
73
+ /**
74
+ * @description Набор полей, которые будут выбраны из Master Entity и добавлены к критерию.
75
+ */
76
+ fields: string[];
77
+ };
78
+ /**
79
+ * @description Ключевое значение здесь несёт поле name. Оно будет установлено в качестве критерия, если expression будет
80
+ * выполнен и значение true будет возвращено.
81
+ */
82
+ type INamedCriterion<T = unknown> = {
83
+ name: string;
84
+ expression: T;
85
+ };
86
+ /**
87
+ * @description Выражение для описания точного сравнения. Сравнение может быть локальное(в рамках текущей сущности), а
88
+ * может быть и для Master Entity.
89
+ */
90
+ type ICriterionExpressionEqual = {
91
+ equal: [fieldName: string, equalValue: CriterionExpressionValue] | [entityName: string, fieldName: string, equalValue: CriterionExpressionValue];
92
+ };
93
+ type CriterionExpressionValue = string | CriterionReferenceValue;
94
+ export type CriterionReferenceValue = {
95
+ value: unknown;
96
+ };
97
+ interface ICriterionOptions {
98
+ /**
99
+ * @description Базовая сущность, к которой относятся критерии
100
+ */
101
+ primaryEntity: string;
102
+ /**
103
+ * @description Идентификатор базовой сущности. Идентификатор не указывается, если сущность ещё не была создана.
104
+ */
105
+ primaryId?: number;
106
+ masterEntities?: [string, number][];
107
+ accessToken: string;
108
+ preset?: Record<string, any>;
109
+ }
110
+ export {};
111
+ //# sourceMappingURL=criterion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"criterion.d.ts","sourceRoot":"","sources":["../../src/model/criterion.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAC;AAEzD,MAAM,CAAC,OAAO,OAAO,SAAS;IAE7B;;OAEG;IACH,KAAK,EAAE,cAAc,EAAE,EAAE,CAAM;IAE/B;;OAEG;IACH,aAAa,EAAE,MAAM,CAAA;IAErB;;OAEG;IACH,cAAc,sBAA4B;IAE1C,SAAS,EAAE,kBAAkB,CAAA;IAE7B;;;;OAIG;gBACS,aAAa,EAAE,CAAC,cAAc,GAAG,cAAc,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,iBAAiB;IAqB5F;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,sBAAsB;IAG9B;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAqBlC;;OAEG;IACU,QAAQ;IAKrB,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,eAAe;IAI/D,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,gBAAgB;IAIjE,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,eAAe;IAI/D,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,IAAI,eAAe,CAAC,yBAAyB,CAAC;CAGlG;AAGD;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,eAAe,GAAG,gBAAgB,GAAG,eAAe,CAAA;AAGjF;;;;GAIG;AACH,KAAK,eAAe,GAAG,MAAM,CAAA;AAE7B;;;GAGG;AACH,KAAK,gBAAgB,GAAG;IACvB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,MAAM,EAAE,MAAM,EAAE,CAAA;CAChB,CAAA;AAED;;;GAGG;AACH,KAAK,eAAe,CAAC,CAAC,GAAG,OAAO,IAAI;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,CAAC,CAAA;CACb,CAAA;AAOD;;;GAGG;AACH,KAAK,yBAAyB,GAAG;IAChC,KAAK,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,wBAAwB,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,wBAAwB,CAAC,CAAA;CAChJ,CAAA;AAUD,KAAK,wBAAwB,GAAG,MAAM,GAAG,uBAAuB,CAAA;AAEhE,MAAM,MAAM,uBAAuB,GAAG;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,CAAA;AAGxD,UAAU,iBAAiB;IAC1B;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAEpC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC5B"}
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ /**
13
+ * @description Дай Всемогущий тебе сил для понимания того, что здесь происходит.
14
+ * @Jenesius
15
+ *
16
+ * Принцип работы данного класса следующий:
17
+ * 1. Получения значений
18
+ * 2. Приведение к нормальному виду конфигурации
19
+ * 3. Сборка всех значений и генерация collector
20
+ * 4. Загрузка всех значений
21
+ * 5. Сборка collector
22
+ */
23
+ const criterion_collector_1 = require("./criterion-collector");
24
+ class Criterion {
25
+ /**
26
+ * @description Конфигурация принимает массив критериев. Обратите внимание, что Критерии первого уровня, будут соединены
27
+ * друг с другой при помощи символа Criterion.SYMBOL_GROUP_SPLITTER. Критерии второго уровня(относящиеся к одной группе)
28
+ * будет соединены при помощи Criterion.SYMBOL_LOCAL_SPLITTER.
29
+ */
30
+ constructor(configuration, options) {
31
+ /**
32
+ * @description Массив обработанных критериев.
33
+ */
34
+ this.array = [];
35
+ /**
36
+ * @description Набор сущностей с их идентификаторами
37
+ */
38
+ this.masterEntities = new Map();
39
+ this.array = this.parseCriterion(configuration); // Приводим к нормальному виду конфигурацию
40
+ this.primaryEntity = options.primaryEntity;
41
+ this.collector = new criterion_collector_1.CriterionCollector({
42
+ accessToken: options.accessToken,
43
+ entities: [
44
+ [options.primaryEntity, options.primaryId],
45
+ ...(options.masterEntities || [])
46
+ ],
47
+ preset: options.preset
48
+ });
49
+ if (Array.isArray(options.masterEntities)) {
50
+ options.masterEntities.forEach(([name, id]) => {
51
+ if (typeof id !== "number")
52
+ return;
53
+ this.masterEntities.set(name, id);
54
+ });
55
+ }
56
+ this.collectExtendedInformation();
57
+ }
58
+ /**
59
+ * @description Метод получает начальные критерии(переданные в конструктор) и возвращает обработанный двумерный
60
+ * массив. Важно помнить, что данная функция работает только для первого уровня критериев и не спускается
61
+ * рекурсивно.
62
+ */
63
+ parseCriterion(criterion) {
64
+ // На всякий случай запихиваем это в массив, если кто-то решит упростить себе жизнь при заполнении конфигурации.
65
+ criterion = Array.isArray(criterion) ? criterion : [criterion];
66
+ return criterion.map(item => {
67
+ if (typeof item === 'string')
68
+ return this.splitStringByFieldName(item);
69
+ if (Array.isArray(item))
70
+ return item;
71
+ return [item];
72
+ });
73
+ }
74
+ splitStringByFieldName(str) {
75
+ return str.split(/[+&, |]/);
76
+ }
77
+ /**
78
+ * @description Функция собирает все поля для каждой сущности. Это нудно для того, чтобы одним запросом загрузить
79
+ * всю информацию и не запрашивать по одному полу. Также собирает
80
+ */
81
+ collectExtendedInformation() {
82
+ this.array.forEach(groupCriterion => {
83
+ const executors = groupCriterion.map(item => {
84
+ if (Criterion.isFieldCriterion(item))
85
+ return this.collector.addFields(this.primaryEntity, this.splitStringByFieldName(item));
86
+ if (Criterion.isMasterCriterion(item))
87
+ return this.collector.addMasterEntityFields(item.masterEntity, item.fields);
88
+ if (Criterion.isNamedCriterion(item)) {
89
+ if (Criterion.isEqualCriterion(item)) {
90
+ const equal = [...item.expression.equal];
91
+ // Приводим к единому виду
92
+ if (equal.length === 2)
93
+ equal.unshift(this.primaryEntity);
94
+ return this.collector.addEqualExpress(item.name, ...equal);
95
+ }
96
+ }
97
+ });
98
+ this.collector.addGroup(executors);
99
+ });
100
+ }
101
+ /**
102
+ * @description Функция генерирует критерий.
103
+ */
104
+ generate() {
105
+ return __awaiter(this, void 0, void 0, function* () {
106
+ yield this.collector.load();
107
+ return this.collector.generate();
108
+ });
109
+ }
110
+ static isFieldCriterion(item) {
111
+ return typeof item === 'string';
112
+ }
113
+ static isMasterCriterion(item) {
114
+ return item !== null && typeof item === 'object' && typeof item.masterEntity === 'string';
115
+ }
116
+ static isNamedCriterion(item) {
117
+ return item !== null && typeof item === 'object' && typeof item.name === 'string';
118
+ }
119
+ static isEqualCriterion(item) {
120
+ return !!item.expression && typeof item.expression === 'object' && Array.isArray(item.expression.equal);
121
+ }
122
+ }
123
+ exports.default = Criterion;
124
+ //# sourceMappingURL=criterion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"criterion.js","sourceRoot":"","sources":["../../src/model/criterion.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"test-close-router.d.ts","sourceRoot":"","sources":["../../../src/router/close/test-close-router.ts"],"names":[],"mappings":";AAYA,wBA2FC"}
1
+ {"version":3,"file":"test-close-router.d.ts","sourceRoot":"","sources":["../../../src/router/close/test-close-router.ts"],"names":[],"mappings":";AAaA,wBAgGC"}
@@ -20,8 +20,8 @@ const actions_1 = require("../../store/actions");
20
20
  const user_middleware_1 = __importDefault(require("../../middleware/user-middleware"));
21
21
  const Store_1 = __importDefault(require("../../store/Store"));
22
22
  const Server_1 = __importDefault(require("../../Server"));
23
- const metadata_service_1 = __importDefault(require("../../services/metadata-service"));
24
23
  const connect_socket_1 = require("../../socket/connect-socket");
24
+ const criterion_1 = __importDefault(require("../../model/criterion"));
25
25
  exports.default = () => {
26
26
  const TestCloseRouter = express_1.default.Router();
27
27
  TestCloseRouter.get('/', (req, res) => {
@@ -91,11 +91,15 @@ exports.default = () => {
91
91
  });
92
92
  TestCloseRouter.get('/test-check', (req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
93
93
  try {
94
- const { entity, field } = req.query;
95
- const result = yield metadata_service_1.default.checkFieldInEntity(entity, field);
96
- res.json({
97
- result
94
+ const criterion = [
95
+ "StatusCode"
96
+ ];
97
+ console.log(req.infoAccessToken);
98
+ const obj = new criterion_1.default(criterion, {
99
+ primaryEntity: "Person", primaryId: 1, accessToken: req.infoAccessToken
98
100
  });
101
+ yield obj.generate();
102
+ res.json(Array.from(obj.collector.entities));
99
103
  }
100
104
  catch (e) {
101
105
  next(e);
@@ -1 +1 @@
1
- {"version":3,"file":"test-close-router.js","sourceRoot":"","sources":["../../../src/router/close/test-close-router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-close-router.js","sourceRoot":"","sources":["../../../src/router/close/test-close-router.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/router/index.ts"],"names":[],"mappings":"AAyBA,MAAM,CAAC,OAAO,UAAU,SAAS,SAwDhC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/router/index.ts"],"names":[],"mappings":"AA2BA,MAAM,CAAC,OAAO,UAAU,SAAS,SAmGhC"}
@@ -23,10 +23,12 @@ const error_middleware_1 = __importDefault(require("../middleware/error-middlewa
23
23
  const cors_1 = __importDefault(require("cors"));
24
24
  const cookie_parser_1 = __importDefault(require("cookie-parser"));
25
25
  const Server_1 = __importDefault(require("../Server"));
26
- const api_error_1 = __importDefault(require("../errors/api-error"));
27
26
  const open_api_router_1 = __importDefault(require("./open/open-api-router"));
28
27
  const session_middleware_1 = require("../middleware/session-middleware");
29
28
  const get_auth_url_1 = __importDefault(require("../auth/get-auth-url"));
29
+ const criterion_1 = __importDefault(require("../model/criterion"));
30
+ const criterion_service_1 = __importDefault(require("../services/criterion-service"));
31
+ const get_criterion_preset_1 = __importDefault(require("../utils/get-criterion-preset"));
30
32
  function useRouter() {
31
33
  const server = Server_1.default.getServer();
32
34
  const app = server.app;
@@ -52,6 +54,50 @@ function useRouter() {
52
54
  app.use((0, auth_middleware_1.authModule)().useAuthMiddleware());
53
55
  app.use(user_middleware_1.default);
54
56
  app.use("/close-api", (0, close_1.default)());
57
+ app.get('/test-check', (req, res, next) => __awaiter(this, void 0, void 0, function* () {
58
+ try {
59
+ const entity = "Complaint";
60
+ const id = 622;
61
+ const masterEntities = [
62
+ // ["Application", 408]
63
+ ];
64
+ const criterion = [
65
+ "StatusCode",
66
+ {
67
+ "name": "#IsProvider",
68
+ "expression": {
69
+ "equal": ["ServiceProvider.CustomerId", "@CCI"]
70
+ }
71
+ },
72
+ {
73
+ "name": "#IsCustomer",
74
+ "expression": {
75
+ "equal": ["CustomerId", "@CCI"]
76
+ }
77
+ }
78
+ ];
79
+ const obj = new criterion_1.default(criterion, {
80
+ primaryEntity: entity, primaryId: id, accessToken: req.infoAccessToken, masterEntities
81
+ });
82
+ const M = yield obj.generate();
83
+ const criterionService = new criterion_service_1.default(req.infoAccessToken);
84
+ const rules = yield criterionService.get({
85
+ entity,
86
+ id,
87
+ preset: (0, get_criterion_preset_1.default)(req),
88
+ masterEntities,
89
+ // @ts-ignore
90
+ criterion
91
+ });
92
+ res.json({
93
+ M,
94
+ S: rules
95
+ });
96
+ }
97
+ catch (e) {
98
+ next(e);
99
+ }
100
+ }));
55
101
  app.get("/main*", (req, res) => __awaiter(this, void 0, void 0, function* () {
56
102
  const filePath = path_1.default.join(server.params.frontendDir, `${server.type}-main.html`);
57
103
  res.sendFile(filePath);
@@ -59,9 +105,6 @@ function useRouter() {
59
105
  app.get("/", (req, res) => __awaiter(this, void 0, void 0, function* () {
60
106
  res.redirect('/main');
61
107
  }));
62
- app.use((req, res, next) => {
63
- next(api_error_1.default.RouteNotFounded());
64
- });
65
108
  app.use(error_middleware_1.default);
66
109
  }
67
110
  exports.default = useRouter;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/router/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/router/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { TokenSet } from "openid-client";
1
2
  export interface IAuthOptions {
2
3
  baseURL: string;
3
4
  issuerBaseURL: string;
@@ -7,4 +8,12 @@ export interface IAuthOptions {
7
8
  logoutURLPathname?: string;
8
9
  sessionKey?: string;
9
10
  }
11
+ export interface IAuthClientState {
12
+ codeVerifier: string;
13
+ accessToken: string;
14
+ tokenType: string;
15
+ refreshToken: string;
16
+ expiresAt: number;
17
+ claims: ReturnType<TokenSet['claims']>;
18
+ }
10
19
  //# sourceMappingURL=auth-type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth-type.d.ts","sourceRoot":"","sources":["../../src/types/auth-type.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC5B,OAAO,EAAC,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAA;CACnB"}
1
+ {"version":3,"file":"auth-type.d.ts","sourceRoot":"","sources":["../../src/types/auth-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AAEvC,MAAM,WAAW,YAAY;IAC5B,OAAO,EAAC,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,gBAAgB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;CACtC"}
@@ -0,0 +1,7 @@
1
+ export default function useReconnection(func: () => Promise<unknown>, options: Partial<IReconnectionOptions>): () => void;
2
+ interface IReconnectionOptions {
3
+ timeout: number;
4
+ onReject: (error: unknown) => void;
5
+ }
6
+ export {};
7
+ //# sourceMappingURL=use-reconnection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-reconnection.d.ts","sourceRoot":"","sources":["../../src/utils/use-reconnection.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,oBAAoB,CAAC,cAyB3G;AAED,UAAU,oBAAoB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CAClC"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ function useReconnection(func, options) {
4
+ let state = ReconnectionStatus.Stop;
5
+ setInterval(() => {
6
+ if (state === ReconnectionStatus.Stop)
7
+ connect();
8
+ }, options.timeout || 2000);
9
+ function connect() {
10
+ if (state === ReconnectionStatus.Wait)
11
+ return;
12
+ state = ReconnectionStatus.Wait;
13
+ func()
14
+ .then(() => {
15
+ state = ReconnectionStatus.Done;
16
+ })
17
+ .catch(e => {
18
+ if (options.onReject)
19
+ options.onReject(e);
20
+ state = ReconnectionStatus.Stop;
21
+ });
22
+ }
23
+ return connect;
24
+ }
25
+ exports.default = useReconnection;
26
+ var ReconnectionStatus;
27
+ (function (ReconnectionStatus) {
28
+ ReconnectionStatus[ReconnectionStatus["Stop"] = 0] = "Stop";
29
+ ReconnectionStatus[ReconnectionStatus["Done"] = 1] = "Done";
30
+ ReconnectionStatus[ReconnectionStatus["Wait"] = 2] = "Wait";
31
+ })(ReconnectionStatus || (ReconnectionStatus = {}));
32
+ //# sourceMappingURL=use-reconnection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-reconnection.js","sourceRoot":"","sources":["../../src/utils/use-reconnection.ts"],"names":[],"mappings":";;AAAA,SAAwB,eAAe,CAAC,IAA4B,EAAE,OAAsC;IAE3G,IAAI,KAAK,GAAuB,kBAAkB,CAAC,IAAI,CAAC;IAExD,WAAW,CAAC,GAAG,EAAE;QAChB,IAAI,KAAK,KAAK,kBAAkB,CAAC,IAAI;YAAE,OAAO,EAAE,CAAC;IAClD,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,CAAA;IAE3B,SAAS,OAAO;QACf,IAAI,KAAK,KAAK,kBAAkB,CAAC,IAAI;YAAE,OAAO;QAE9C,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC;QAEhC,IAAI,EAAE;aACL,IAAI,CAAC,GAAG,EAAE;YACV,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC;QACjC,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,CAAC,EAAE;YACV,IAAI,OAAO,CAAC,QAAQ;gBAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC1C,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC;QACjC,CAAC,CAAC,CAAA;IAEH,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC;AAzBD,kCAyBC;AAOD,IAAK,kBAIJ;AAJD,WAAK,kBAAkB;IACtB,2DAAQ,CAAA;IACR,2DAAQ,CAAA;IACR,2DAAQ,CAAA;AACT,CAAC,EAJI,kBAAkB,KAAlB,kBAAkB,QAItB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eservices-back-core",
3
- "version": "1.5.4",
3
+ "version": "1.5.6",
4
4
  "description": "",
5
5
  "main": "dist/Server.js",
6
6
  "scripts": {
@@ -11,7 +11,7 @@
11
11
  "full": "tsc && npm publish",
12
12
  "build": "tsc",
13
13
  "refreshVSToken": "vsts-npm-auth -config .npmrc -F",
14
- "dd": "set DEBUG=eservices-core* && npm start ",
14
+ "debug": "set DEBUG=eservices-core* && npm start ",
15
15
  "docs:dev": "vitepress dev docs",
16
16
  "docs:build": "vitepress build docs",
17
17
  "docs:serve": "vitepress serve docs"