@sera4/essentia 3.0.13-rc.1 → 3.0.14

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 (67) hide show
  1. package/package.json +1 -1
  2. package/package.tar.gz +0 -0
  3. package/dist/cache/index.d.ts +0 -22
  4. package/dist/cache/index.js +0 -166
  5. package/dist/cache/index.js.map +0 -1
  6. package/dist/constants/index.d.ts +0 -6
  7. package/dist/constants/index.js +0 -9
  8. package/dist/constants/index.js.map +0 -1
  9. package/dist/formatter/index.d.ts +0 -37
  10. package/dist/formatter/index.js +0 -75
  11. package/dist/formatter/index.js.map +0 -1
  12. package/dist/hal/index.d.ts +0 -5
  13. package/dist/hal/index.js +0 -69
  14. package/dist/hal/index.js.map +0 -1
  15. package/dist/health/health-logger.d.ts +0 -9
  16. package/dist/health/health-logger.js +0 -34
  17. package/dist/health/health-logger.js.map +0 -1
  18. package/dist/health/index.d.ts +0 -19
  19. package/dist/health/index.js +0 -175
  20. package/dist/health/index.js.map +0 -1
  21. package/dist/helpers/index.d.ts +0 -1
  22. package/dist/helpers/index.js +0 -2
  23. package/dist/helpers/index.js.map +0 -1
  24. package/dist/helpers/test-server-wrapper.d.ts +0 -120
  25. package/dist/helpers/test-server-wrapper.js +0 -165
  26. package/dist/helpers/test-server-wrapper.js.map +0 -1
  27. package/dist/index.d.ts +0 -1
  28. package/dist/index.js +0 -17
  29. package/dist/index.js.map +0 -1
  30. package/dist/last-commit.d.ts +0 -1
  31. package/dist/last-commit.js.map +0 -1
  32. package/dist/last_commit/index.d.ts +0 -7
  33. package/dist/last_commit/index.js +0 -83
  34. package/dist/last_commit/index.js.map +0 -1
  35. package/dist/paginator/s4-pagination.d.ts +0 -9
  36. package/dist/paginator/s4-pagination.js +0 -49
  37. package/dist/paginator/s4-pagination.js.map +0 -1
  38. package/dist/paginator/sql-pagination.d.ts +0 -27
  39. package/dist/paginator/sql-pagination.js +0 -166
  40. package/dist/paginator/sql-pagination.js.map +0 -1
  41. package/dist/paper-trail/helpers.d.ts +0 -11
  42. package/dist/paper-trail/helpers.js +0 -74
  43. package/dist/paper-trail/helpers.js.map +0 -1
  44. package/dist/paper-trail/index.d.ts +0 -13
  45. package/dist/paper-trail/index.js +0 -662
  46. package/dist/paper-trail/index.js.map +0 -1
  47. package/dist/prompts/index.d.ts +0 -14
  48. package/dist/prompts/index.js +0 -63
  49. package/dist/prompts/index.js.map +0 -1
  50. package/dist/queue/index.d.ts +0 -166
  51. package/dist/queue/index.js +0 -371
  52. package/dist/queue/index.js.map +0 -1
  53. package/dist/queue/publisher.d.ts +0 -31
  54. package/dist/queue/publisher.js +0 -84
  55. package/dist/queue/publisher.js.map +0 -1
  56. package/dist/queue/queue-logger.d.ts +0 -9
  57. package/dist/queue/queue-logger.js +0 -35
  58. package/dist/queue/queue-logger.js.map +0 -1
  59. package/dist/queue/subscriber.d.ts +0 -39
  60. package/dist/queue/subscriber.js +0 -97
  61. package/dist/queue/subscriber.js.map +0 -1
  62. package/dist/safe_proxy/index.d.ts +0 -13
  63. package/dist/safe_proxy/index.js +0 -54
  64. package/dist/safe_proxy/index.js.map +0 -1
  65. package/dist/serializer/index.d.ts +0 -5
  66. package/dist/serializer/index.js +0 -83
  67. package/dist/serializer/index.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sera4/essentia",
3
- "version": "3.0.13-rc.1",
3
+ "version": "3.0.14",
4
4
  "description": "A library of utilities for Teleporte Web Services",
5
5
  "main": "dist/ts/index.js",
6
6
  "type": "module",
package/package.tar.gz ADDED
Binary file
@@ -1,22 +0,0 @@
1
- export default function _default(config: any, servicePrefix: any): Cache;
2
- declare class Cache {
3
- constructor(config: any, servicePrefix: any);
4
- redisClient: any;
5
- servicePrefix: any;
6
- ping(): any;
7
- properKey(key: any, path: any): any;
8
- writeHash(path: any, key: any, value: any): any;
9
- writeHashBlocking(path: any, key: any, value: any): any;
10
- writeMultiHash(path: any, j: any): any;
11
- readHashKey(obj: any, key: any, autoConvert?: boolean): Promise<any>;
12
- readHash(path: any): Promise<any>;
13
- deleteHashKey(hash: any, key: any): Promise<any>;
14
- get(key: any): any;
15
- getAsync(key: any): any;
16
- writeKey(key: any, value: any, expiry: any): any;
17
- deleteKey(key: any): any;
18
- expire(path: any, expiry: any): any;
19
- exists(path: any): any;
20
- deleteAllKeys(): Promise<any>;
21
- }
22
- export {};
@@ -1,166 +0,0 @@
1
- "use strict";
2
- import { promisify } from "util";
3
- const isEmpty = obj => [Object, Array].includes((obj || {}).constructor) && !Object.entries((obj || {})).length;
4
- class CacheConfigError extends Error {
5
- constructor(m) {
6
- super(m);
7
- }
8
- }
9
- /* Redis cache helper
10
- * Example use: Place the following code in your project to setup redis use
11
- *
12
- * import { cache } from "@sera4/essentia";
13
- * const cacheHelper = cache({ password: .., database: .., host: .., port: .. }, "service:"));
14
- *
15
- */
16
- const convertRedisKeyValueToJson = (v) => {
17
- return (v && v.length > 0 && v[0] !== null) ? JSON.parse(v) : null;
18
- };
19
- const convertRedisHashToJson = (v) => {
20
- if (v) {
21
- var result = {};
22
- for (var k in v) {
23
- if (v.hasOwnProperty(k)) {
24
- result[k] = JSON.parse(v[k]);
25
- }
26
- }
27
- return result;
28
- }
29
- else {
30
- return null;
31
- }
32
- };
33
- function convertJsonToRedisValue(j) {
34
- var result = {};
35
- for (var key in j) {
36
- if (j.hasOwnProperty(key)) {
37
- result[key] = JSON.stringify(j[key]);
38
- }
39
- }
40
- return result;
41
- }
42
- class Cache {
43
- constructor(config, servicePrefix) {
44
- if ((config == undefined) || isEmpty(config)) {
45
- throw new CacheConfigError("Invalid cache configuration");
46
- }
47
- if (servicePrefix == null) {
48
- throw new CacheConfigError("Invalid service prefix");
49
- }
50
- if (config.fake) {
51
- // used in testing
52
- this.redisClient = require("fakeredis").createClient("fake backend");
53
- }
54
- else {
55
- this.redisClient = require("redis").createClient(config);
56
- }
57
- this.redisClient.on("error", (err) => {
58
- logger.error("Cache/Redis error: ", err);
59
- });
60
- this.servicePrefix = servicePrefix;
61
- }
62
- ping() {
63
- return this.redisClient.ping();
64
- }
65
- properKey(key, path) {
66
- let p = this.servicePrefix + key;
67
- if (path)
68
- p += path;
69
- return p;
70
- }
71
- writeHash(path, key, value) {
72
- return this.redisClient.hsetAsync(properKey(key), key, value);
73
- }
74
- writeHashBlocking(path, key, value) {
75
- return this.redisClient.hset(properKey(key), key, value);
76
- }
77
- // write multiple hash keys and stringify every value
78
- writeMultiHash(path, j) {
79
- return this.redisClient.hmsetAsync(properKey(key), convertJsonToRedisValue(j));
80
- }
81
- readHashKey(obj, key, autoConvert = true) {
82
- var k = autoConvert;
83
- return new Promise((resolve, reject) => {
84
- this.redisClient.hget(properKey(key, obj), key, (e, r) => {
85
- if (e) {
86
- logger.error("Redis hmget error:", e);
87
- reject(e);
88
- }
89
- else {
90
- resolve(k ? convertRedisKeyValueToJson(r) : r);
91
- }
92
- });
93
- });
94
- }
95
- readHash(path) {
96
- return new Promise((resolve, reject) => {
97
- this.redisClient.hgetall(properKey(key, path), (e, r) => {
98
- if (e) {
99
- console.log("Redis hget error:", e);
100
- reject(e);
101
- }
102
- else {
103
- resolve(convertRedisHashToJson(r));
104
- }
105
- });
106
- });
107
- }
108
- deleteHashKey(hash, key) {
109
- return new Promise((resolve, reject) => {
110
- this.redisClient.hdel(properKey(key, hash), key, (err) => {
111
- if (err) {
112
- logger.error("Redis hdel error:", err);
113
- reject(err);
114
- }
115
- else {
116
- resolve();
117
- }
118
- });
119
- });
120
- }
121
- get(key) {
122
- return this.redisClient.getAsync(properKey(key));
123
- }
124
- getAsync(key) {
125
- return promisify(this.redisClient.get(key)).bind(this.redisClient);
126
- }
127
- /* a single key write with optional expiry */
128
- // returns bluebird promise
129
- writeKey(key, value, expiry) {
130
- key = this.servicePrefix + key;
131
- if (expiry) {
132
- return this.redisClient.setAsync(key, value, "EX", expiry);
133
- }
134
- else {
135
- return this.redisClient.setAsync(key, value);
136
- }
137
- }
138
- deleteKey(key) {
139
- return redisClient.delAsync(properKey(key));
140
- }
141
- expire(path, expiry) {
142
- return this.redisClient.expire(path, expiry);
143
- }
144
- exists(path) {
145
- return this.redisClient.exists(path);
146
- }
147
- deleteAllKeys() {
148
- return new Promise((resolve, reject) => {
149
- if (process.env.NODE_ENV === "production") {
150
- throw new Error("Clearing system cache is not permitted in production");
151
- }
152
- this.redisClient.flushdb((err, res) => {
153
- if (err) {
154
- reject(err);
155
- }
156
- else {
157
- resolve(res);
158
- }
159
- });
160
- });
161
- }
162
- }
163
- export default function (config, servicePrefix) {
164
- return new Cache(config, servicePrefix);
165
- }
166
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../cache/index.js"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- export const TWS_ROUTE_TYPES: Readonly<{
2
- web: 1;
3
- mobile: 2;
4
- api: 3;
5
- other: 4;
6
- }>;
@@ -1,9 +0,0 @@
1
- "use strict";
2
- // indicate what target URL was used for a request
3
- export const TWS_ROUTE_TYPES = Object.freeze({
4
- 'web': 1,
5
- 'mobile': 2,
6
- 'api': 3,
7
- 'other': 4
8
- });
9
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../constants/index.js"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,kDAAkD;AAClD,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC;IAC3C,KAAK,EAAE,CAAC;IACR,QAAQ,EAAE,CAAC;IACX,KAAK,EAAE,CAAC;IACR,OAAO,EAAE,CAAC;CACX,CAAC,CAAC"}
@@ -1,37 +0,0 @@
1
- export default formatter;
2
- declare const formatter: S4Formatter;
3
- declare class S4Formatter {
4
- defaults: {
5
- status: number;
6
- errors: {};
7
- };
8
- _isArray(value: any): boolean;
9
- _fromHash(error: any): {
10
- status: number;
11
- errors: {};
12
- };
13
- /**
14
- * Desired Response format
15
- *{
16
- * "error": {
17
- * "status": 422,
18
- * "errors": {
19
- * "password": {
20
- * "location": "body",
21
- * "param": "password",
22
- * "value": "mypassword",
23
- * "msg": "weak"
24
- * }
25
- * }
26
- * },
27
- * "error_id": "a2ddf895-2aaf-4189-88a2-8e11f6843f91"
28
- *}
29
- */
30
- formatError(error: any): FormatError | {
31
- status: number;
32
- errors: {};
33
- };
34
- }
35
- declare class FormatError extends Error {
36
- constructor(m: any);
37
- }
@@ -1,75 +0,0 @@
1
- "use strict";
2
- class FormatError extends Error {
3
- constructor(m) {
4
- super(m);
5
- }
6
- }
7
- // helps to clean up response formats for services responding to rest requests
8
- class S4Formatter {
9
- constructor() {
10
- this.defaults = {
11
- status: 422,
12
- errors: {}
13
- };
14
- }
15
- _isArray(value) {
16
- return value && typeof value === 'object' && value.constructor === Array;
17
- }
18
- _fromHash(error) {
19
- let response = Object.assign({}, this.defaults);
20
- if (error.status) {
21
- let errorStatus = parseInt(error.status);
22
- if ((errorStatus >= 200) && (errorStatus < 522)) {
23
- response.status = errorStatus;
24
- }
25
- }
26
- if (error.error && (typeof (error.error) === "string")) {
27
- response.errors["generic"] = { msg: error.error };
28
- }
29
- else if (error.errors) {
30
- if (this._isArray(error.errors)) {
31
- // many legacy responses which are errors: ["error_name"]
32
- error.errors.forEach(function (el, index) {
33
- response.errors[`generic_${index}`] = { msg: el };
34
- });
35
- }
36
- else if (typeof (error.errors) === "object") {
37
- response.errors = error.errors;
38
- }
39
- }
40
- return response;
41
- }
42
- /**
43
- * Desired Response format
44
- *{
45
- * "error": {
46
- * "status": 422,
47
- * "errors": {
48
- * "password": {
49
- * "location": "body",
50
- * "param": "password",
51
- * "value": "mypassword",
52
- * "msg": "weak"
53
- * }
54
- * }
55
- * },
56
- * "error_id": "a2ddf895-2aaf-4189-88a2-8e11f6843f91"
57
- *}
58
- */
59
- formatError(error) {
60
- let response;
61
- if (error === null) {
62
- response = this.defaults;
63
- }
64
- else if (typeof (error) === "object") {
65
- response = this._fromHash(error);
66
- }
67
- else {
68
- return new FormatError("invalid_error_format");
69
- }
70
- return response;
71
- }
72
- }
73
- const formatter = new S4Formatter();
74
- export default formatter;
75
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../formatter/index.js"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,MAAM,WAAY,SAAQ,KAAK;IAC7B,YAAY,CAAC;QACX,KAAK,CAAC,CAAC,CAAC,CAAC;IACX,CAAC;CACF;AAED,8EAA8E;AAC9E,MAAM,WAAW;IACf;QACE,IAAI,CAAC,QAAQ,GAAG;YACd,MAAM,EAAE,GAAG;YACX,MAAM,EAAE,EAAE;SACX,CAAC;IACJ,CAAC;IAED,QAAQ,CAAE,KAAK;QACb,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,WAAW,KAAK,KAAK,CAAC;IAC3E,CAAC;IAED,SAAS,CAAC,KAAK;QACb,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEhD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAEzC,IAAI,CAAC,WAAW,IAAI,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,EAAE,CAAC;gBAChD,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAA;YAC/B,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,OAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;YACtD,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,KAAK,EAAE,CAAA;QACnD,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChC,yDAAyD;gBACzD,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,UAAS,EAAE,EAAE,KAAK;oBACrC,QAAQ,CAAC,MAAM,CAAC,WAAW,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAA;gBACnD,CAAC,CAAC,CAAA;YACJ,CAAC;iBAAM,IAAI,OAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAC7C,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;YAChC,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;;;;;;;;;MAgBE;IACF,WAAW,CAAC,KAAK;QACf,IAAI,QAAQ,CAAC;QACb,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC3B,CAAC;aAAM,IAAI,OAAM,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAG,CAAC;YACvC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,WAAW,CAAC,sBAAsB,CAAC,CAAC;QACjD,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAED,MAAM,SAAS,GAAG,IAAI,WAAW,EAAE,CAAC;AACpC,eAAe,SAAS,CAAC"}
@@ -1,5 +0,0 @@
1
- export default halDecorator;
2
- declare const halDecorator: HalDecorator;
3
- declare class HalDecorator {
4
- decorate(Model: any, options: any): void;
5
- }
package/dist/hal/index.js DELETED
@@ -1,69 +0,0 @@
1
- "use strict";
2
- function lastElement(arr) {
3
- if (arr && arr.length) {
4
- return arr[arr.length - 1];
5
- }
6
- else {
7
- return null;
8
- }
9
- }
10
- class HalDecorator {
11
- decorate(Model, options) {
12
- const model = Model.instance || Model;
13
- const resource = (options && options.resource) ? options.resource : "";
14
- const exclude = (options && options.exclude) ? options.exclude : [];
15
- const links = (options && options.links) ? options.links : {};
16
- const linksTag = (options && options.linksTag) ? options.linksTag : "_links";
17
- const resourceTag = (options && options.resourceTag) ? options.resourceTag : "_resource";
18
- const link = (name, method, l) => {
19
- if (name && method && l) {
20
- var aLink = {};
21
- alink[method] = l;
22
- links[name] = aLink;
23
- }
24
- return model;
25
- };
26
- const getLinkData = (values) => {
27
- var linkData = {};
28
- if (links) {
29
- for (const key in links) {
30
- if (links.hasOwnProperty(key)) {
31
- const link = links[key];
32
- const method = lastElement(Object.keys(link));
33
- var url = link[method];
34
- const paramPattern = /\:([a-zA-z_0-9]*)/;
35
- const arr = paramPattern.exec(url);
36
- if (arr) {
37
- // Replace parameters
38
- url = `/${resource}/${url.split(arr[0]).join(values[arr[1]])}`;
39
- // Remove extra slashes that may have been added
40
- url = url.replace(/\/\/*/g, "/");
41
- linkData[key] = {};
42
- linkData[key][method] = url;
43
- }
44
- }
45
- }
46
- }
47
- return Object.keys(linkData).length > 0 ? linkData : null;
48
- };
49
- model.link = link;
50
- Model.prototype.toJSON = function () {
51
- var values = Object.assign({}, this.get());
52
- if (exclude) {
53
- exclude.forEach(element => {
54
- delete values[element];
55
- });
56
- }
57
- const links = getLinkData(values);
58
- const result = {};
59
- if (links) {
60
- result[linksTag] = links;
61
- }
62
- result[resourceTag] = values;
63
- return result;
64
- };
65
- }
66
- }
67
- const halDecorator = new HalDecorator();
68
- export default halDecorator;
69
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../hal/index.js"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- export default helpers;
2
- declare namespace helpers {
3
- function debug(...args: any[]): void;
4
- function log(...args: any[]): void;
5
- function warn(...args: any[]): void;
6
- function info(...args: any[]): void;
7
- function error(...args: any[]): void;
8
- function setEnabled(e: any): void;
9
- }
@@ -1,34 +0,0 @@
1
- import logger from "../logger/s4-logger.js";
2
- let enabled = false;
3
- const helpers = {
4
- debug(...args) {
5
- if (enabled) {
6
- logger.debug(":: HealthCheck ::", args);
7
- }
8
- },
9
- log(...args) {
10
- if (enabled) {
11
- logger.debug(":: HealthCheck ::", args);
12
- }
13
- },
14
- warn(...args) {
15
- if (enabled) {
16
- logger.warn(":: HealthCheck ::", args);
17
- }
18
- },
19
- info(...args) {
20
- if (enabled) {
21
- logger.info(":: HealthCheck ::", args);
22
- }
23
- },
24
- error(...args) {
25
- if (enabled) {
26
- logger.error(":: HealthCheck ::", args);
27
- }
28
- },
29
- setEnabled(e) {
30
- enabled = e;
31
- }
32
- };
33
- export default helpers;
34
- //# sourceMappingURL=health-logger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"health-logger.js","sourceRoot":"","sources":["../../health/health-logger.js"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAC5C,IAAI,OAAO,GAAG,KAAK,CAAC;AAEpB,MAAM,OAAO,GAAG;IACd,KAAK,CAAC,GAAG,IAAI;QACX,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,GAAG,CAAC,GAAG,IAAI;QACT,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,IAAI,CAAC,GAAG,IAAI;QACV,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED,IAAI,CAAC,GAAG,IAAI;QACV,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,IAAI;QACX,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,UAAU,CAAC,CAAC;QACV,OAAO,GAAG,CAAC,CAAC;IACd,CAAC;CACF,CAAA;AAED,eAAe,OAAO,CAAC"}
@@ -1,19 +0,0 @@
1
- export class HealthCheck {
2
- constructor(appendData?: {}, enableLogging?: boolean);
3
- defaultResponse: {
4
- status: number;
5
- errors: {};
6
- };
7
- defaultPathRoute: string;
8
- suppressLogs: boolean;
9
- lastCallId: number;
10
- pathPrefix: string;
11
- healthChecks: any[];
12
- addCheck(fcn: any): void;
13
- setPrefix(prefix: any): void;
14
- defaultPath(prefix?: string): string;
15
- routes(router: any): any;
16
- suppressHealthCheckLog(app: any): void;
17
- setupCheck(config: any): void;
18
- checkHealth(req: any, res: any): Promise<void>;
19
- }