@n1k1t/mock-server 0.1.68 → 0.1.70
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.
- package/lib/package.json +2 -1
- package/lib/src/server/endpoints/cache.backup.endpoint.d.ts +24 -0
- package/lib/src/server/endpoints/cache.backup.endpoint.d.ts.map +1 -0
- package/lib/src/server/endpoints/cache.backup.endpoint.js +37 -0
- package/lib/src/server/endpoints/cache.backup.endpoint.js.map +1 -0
- package/lib/src/server/endpoints/cache.delete.endpoint.d.ts +7 -13
- package/lib/src/server/endpoints/cache.delete.endpoint.d.ts.map +1 -1
- package/lib/src/server/endpoints/cache.delete.endpoint.js +27 -29
- package/lib/src/server/endpoints/cache.delete.endpoint.js.map +1 -1
- package/lib/src/server/endpoints/cache.restore.endpoint.d.ts +39 -0
- package/lib/src/server/endpoints/cache.restore.endpoint.d.ts.map +1 -0
- package/lib/src/server/endpoints/cache.restore.endpoint.js +29 -0
- package/lib/src/server/endpoints/cache.restore.endpoint.js.map +1 -0
- package/lib/src/server/endpoints/index.d.ts +2 -0
- package/lib/src/server/endpoints/index.d.ts.map +1 -1
- package/lib/src/server/endpoints/index.js +5 -1
- package/lib/src/server/endpoints/index.js.map +1 -1
- package/lib/src/server/services/analytics.service.d.ts +2 -0
- package/lib/src/server/services/analytics.service.d.ts.map +1 -1
- package/lib/src/server/services/analytics.service.js +28 -24
- package/lib/src/server/services/analytics.service.js.map +1 -1
- package/lib/src/server/transports/http.transport/executor.d.ts.map +1 -1
- package/lib/src/server/transports/http.transport/executor.js +6 -1
- package/lib/src/server/transports/http.transport/executor.js.map +1 -1
- package/lib/src/server/types/index.d.ts +3 -0
- package/lib/src/server/types/index.d.ts.map +1 -1
- package/lib/src/server/utils/index.d.ts +1 -1
- package/lib/src/server/utils/index.d.ts.map +1 -1
- package/lib/src/server/utils/index.js +15 -0
- package/lib/src/server/utils/index.js.map +1 -1
- package/lib/src/server/utils/rx.d.ts +8 -0
- package/lib/src/server/utils/rx.d.ts.map +1 -0
- package/lib/src/server/utils/rx.js +43 -0
- package/lib/src/server/utils/rx.js.map +1 -0
- package/package.json +2 -1
- package/public/assets/{index-TxMiEbRI.css → index-CKgMA4A4.css} +1 -1
- package/public/assets/{index-CwXt07DI.js → index-DU3YCqcD.js} +48 -37
- package/public/index.html +2 -2
package/lib/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@n1k1t/mock-server",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.70",
|
|
4
4
|
"description": "Powerful util to setup mocks over HTTP APIs",
|
|
5
5
|
"main": "lib/src/index.js",
|
|
6
6
|
"types": "lib/src/index.d.ts",
|
|
@@ -111,6 +111,7 @@
|
|
|
111
111
|
"deepmerge": "4.3.1",
|
|
112
112
|
"fast-xml-parser": "4.5.0",
|
|
113
113
|
"handlebars": "4.7.7",
|
|
114
|
+
"http-encoding": "2.1.1",
|
|
114
115
|
"https-proxy-agent": "7.0.6",
|
|
115
116
|
"ioredis": "5.4.1",
|
|
116
117
|
"jsonpath-plus": "7.2.0",
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Endpoint } from '../models';
|
|
2
|
+
declare const _default: Endpoint<{
|
|
3
|
+
outgoing: string;
|
|
4
|
+
}, import("../models").IEndpointSchema<{
|
|
5
|
+
outgoing: string;
|
|
6
|
+
}>> & {
|
|
7
|
+
http: {
|
|
8
|
+
readonly method: "POST";
|
|
9
|
+
readonly path: "/cache/backup";
|
|
10
|
+
};
|
|
11
|
+
} & {
|
|
12
|
+
io: {
|
|
13
|
+
readonly path: "cache:backup";
|
|
14
|
+
};
|
|
15
|
+
} & {
|
|
16
|
+
handler: ({ reply, server }: (import("..").InternalHttpRequestContext<string> | import("..").InternalSocketIoRequestContext<string>) & {
|
|
17
|
+
incoming: {
|
|
18
|
+
data?: unknown;
|
|
19
|
+
query?: unknown;
|
|
20
|
+
};
|
|
21
|
+
}) => Promise<void>;
|
|
22
|
+
};
|
|
23
|
+
export default _default;
|
|
24
|
+
//# sourceMappingURL=cache.backup.endpoint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.backup.endpoint.d.ts","sourceRoot":"","sources":["../../../../src/server/endpoints/cache.backup.endpoint.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;;cAMhB,MAAM;;cAAN,MAAM;;;;;;;;;;;;;;;;;;AAD3B,wBAkCK"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const node_gzip_1 = require("node-gzip");
|
|
4
|
+
const utils_1 = require("../utils");
|
|
5
|
+
const models_1 = require("../models");
|
|
6
|
+
const logger_1 = require("../../logger");
|
|
7
|
+
const logger = logger_1.Logger.build('Server.Endpoints.CacheBackup');
|
|
8
|
+
exports.default = models_1.Endpoint
|
|
9
|
+
.build()
|
|
10
|
+
.bindToHttp({ method: 'POST', path: `/cache/backup` })
|
|
11
|
+
.bindToIo({ path: 'cache:backup' })
|
|
12
|
+
.assignHandler(async ({ reply, server }) => {
|
|
13
|
+
const backup = { redis: [] };
|
|
14
|
+
if (server.databases.redis) {
|
|
15
|
+
const converter = utils_1.RxConverter.build(server.services.analytics.iterateRedisKeys());
|
|
16
|
+
for await (const key of converter.iterate()) {
|
|
17
|
+
const unprefixed = server.databases.redis.options.keyPrefix
|
|
18
|
+
? key.replace(server.databases.redis.options.keyPrefix, '')
|
|
19
|
+
: key;
|
|
20
|
+
const value = await server.databases.redis.get(unprefixed).catch((error) => {
|
|
21
|
+
logger.error(`Got error while fetching redis value for key [${key}]`, error?.stack ?? error);
|
|
22
|
+
return null;
|
|
23
|
+
});
|
|
24
|
+
value
|
|
25
|
+
? backup.redis.push([unprefixed, value])
|
|
26
|
+
: logger.warn(`Got [${value}] for key [${key}]`);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
const zipped = await (0, node_gzip_1.gzip)(JSON.stringify(backup)).catch((error) => {
|
|
30
|
+
logger.error('Got error while zip payload', error?.stack ?? error);
|
|
31
|
+
return null;
|
|
32
|
+
});
|
|
33
|
+
zipped
|
|
34
|
+
? reply.ok(zipped.toString('base64'))
|
|
35
|
+
: reply.internalError('Cannot zip backup payload');
|
|
36
|
+
});
|
|
37
|
+
//# sourceMappingURL=cache.backup.endpoint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.backup.endpoint.js","sourceRoot":"","sources":["../../../../src/server/endpoints/cache.backup.endpoint.ts"],"names":[],"mappings":";;AAAA,yCAAiC;AAGjC,oCAAuC;AACvC,sCAAqC;AACrC,yCAAsC;AAEtC,MAAM,MAAM,GAAG,eAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;AAE5D,kBAAe,iBAAQ;KACpB,KAAK,EAAwB;KAC7B,UAAU,CAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;KAC5D,QAAQ,CAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;KACzC,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;IACzC,MAAM,MAAM,GAAiB,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAE3C,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,mBAAW,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAElF,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;YAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,KAAM,CAAC,OAAO,CAAC,SAAS;gBAC1D,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,KAAM,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;gBAC5D,CAAC,CAAC,GAAG,CAAC;YAER,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,KAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC1E,MAAM,CAAC,KAAK,CAAC,iDAAiD,GAAG,GAAG,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,CAAC;gBAC7F,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;YAEH,KAAK;gBACH,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBACxC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,cAAc,GAAG,GAAG,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,IAAA,gBAAI,EAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QAChE,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,MAAM;QACJ,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,2BAA2B,CAAC,CAAC;AACvD,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Endpoint } from '../models';
|
|
2
|
-
interface
|
|
3
|
-
|
|
2
|
+
interface IOutgoing {
|
|
3
|
+
redis?: {
|
|
4
|
+
count: number;
|
|
5
|
+
};
|
|
4
6
|
}
|
|
5
7
|
declare const _default: Endpoint<{
|
|
6
8
|
incoming: {
|
|
@@ -8,18 +10,14 @@ declare const _default: Endpoint<{
|
|
|
8
10
|
prefix?: string;
|
|
9
11
|
};
|
|
10
12
|
};
|
|
11
|
-
outgoing:
|
|
12
|
-
redis?: IRedisResult;
|
|
13
|
-
};
|
|
13
|
+
outgoing: IOutgoing;
|
|
14
14
|
}, import("../models").IEndpointSchema<{
|
|
15
15
|
incoming: {
|
|
16
16
|
data: {
|
|
17
17
|
prefix?: string;
|
|
18
18
|
};
|
|
19
19
|
};
|
|
20
|
-
outgoing:
|
|
21
|
-
redis?: IRedisResult;
|
|
22
|
-
};
|
|
20
|
+
outgoing: IOutgoing;
|
|
23
21
|
}>> & {
|
|
24
22
|
http: {
|
|
25
23
|
readonly method: "DELETE";
|
|
@@ -30,11 +28,7 @@ declare const _default: Endpoint<{
|
|
|
30
28
|
readonly path: "cache:delete";
|
|
31
29
|
};
|
|
32
30
|
} & {
|
|
33
|
-
handler: ({ incoming, reply, server }: (import("..").InternalHttpRequestContext<{
|
|
34
|
-
redis?: IRedisResult;
|
|
35
|
-
}> | import("..").InternalSocketIoRequestContext<{
|
|
36
|
-
redis?: IRedisResult;
|
|
37
|
-
}>) & {
|
|
31
|
+
handler: ({ incoming, reply, server }: (import("..").InternalHttpRequestContext<IOutgoing> | import("..").InternalSocketIoRequestContext<IOutgoing>) & {
|
|
38
32
|
incoming: {
|
|
39
33
|
data?: {
|
|
40
34
|
prefix?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.delete.endpoint.d.ts","sourceRoot":"","sources":["../../../../src/server/endpoints/cache.delete.endpoint.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,UAAU,
|
|
1
|
+
{"version":3,"file":"cache.delete.endpoint.d.ts","sourceRoot":"","sources":["../../../../src/server/endpoints/cache.delete.endpoint.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,UAAU,SAAS;IACjB,KAAK,CAAC,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH;;cAKoB;QAAE,IAAI,EAAE;YAAE,MAAM,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE;cAAY,SAAS;;cAAlD;QAAE,IAAI,EAAE;YAAE,MAAM,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE;cAAY,SAAS;;;;;;;;;;;;;;yBAA/B,MAAM;;;;;;AAD9C,wBAiCK"}
|
|
@@ -1,38 +1,36 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const utils_1 = require("../utils");
|
|
3
4
|
const models_1 = require("../models");
|
|
4
5
|
const logger_1 = require("../../logger");
|
|
5
|
-
const logger = logger_1.Logger.build('Server.
|
|
6
|
-
const deleteKeys = (client, prefix) => new Promise((resolve, reject) => {
|
|
7
|
-
const stream = client.scanStream({ match: `${client.options.keyPrefix ?? ''}${prefix ?? ''}*` });
|
|
8
|
-
const result = { count: 0 };
|
|
9
|
-
stream.once('end', () => resolve(result));
|
|
10
|
-
stream.once('error', (error) => {
|
|
11
|
-
logger.error('Got error while scan execution', error?.stack ?? error);
|
|
12
|
-
stream.close();
|
|
13
|
-
reject(error);
|
|
14
|
-
});
|
|
15
|
-
stream.on('data', async (keys) => {
|
|
16
|
-
stream.pause();
|
|
17
|
-
result.count += keys.length;
|
|
18
|
-
await Promise
|
|
19
|
-
.all(keys.map(async (key) => client.call('DEL', key)))
|
|
20
|
-
.catch((error) => {
|
|
21
|
-
logger.error('Got error while deletion keys', error?.stack ?? error);
|
|
22
|
-
stream.close();
|
|
23
|
-
reject(error);
|
|
24
|
-
return [];
|
|
25
|
-
});
|
|
26
|
-
stream.resume();
|
|
27
|
-
});
|
|
28
|
-
});
|
|
6
|
+
const logger = logger_1.Logger.build('Server.Endpoints.CacheDelete');
|
|
29
7
|
exports.default = models_1.Endpoint
|
|
30
8
|
.build()
|
|
31
9
|
.bindToHttp({ method: 'DELETE', path: `/cache` })
|
|
32
10
|
.bindToIo({ path: 'cache:delete' })
|
|
33
|
-
.assignHandler(async ({ incoming, reply, server }) =>
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
11
|
+
.assignHandler(async ({ incoming, reply, server }) => {
|
|
12
|
+
const result = {
|
|
13
|
+
...(server.databases.redis && {
|
|
14
|
+
redis: {
|
|
15
|
+
count: 0,
|
|
16
|
+
},
|
|
17
|
+
}),
|
|
18
|
+
};
|
|
19
|
+
if (result.redis) {
|
|
20
|
+
const converter = utils_1.RxConverter.build(server.services.analytics.iterateRedisKeys(incoming.data?.prefix));
|
|
21
|
+
for await (const key of converter.iterate()) {
|
|
22
|
+
const unprefixed = server.databases.redis.options.keyPrefix
|
|
23
|
+
? key.replace(server.databases.redis.options.keyPrefix, '')
|
|
24
|
+
: key;
|
|
25
|
+
const deleted = await server.databases.redis.del(unprefixed).catch((error) => {
|
|
26
|
+
logger.error(`Got error while deletion redis value for key [${key}]`, error?.stack ?? error);
|
|
27
|
+
return null;
|
|
28
|
+
});
|
|
29
|
+
if (deleted) {
|
|
30
|
+
result.redis.count += deleted;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
reply.ok(result);
|
|
35
|
+
});
|
|
38
36
|
//# sourceMappingURL=cache.delete.endpoint.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.delete.endpoint.js","sourceRoot":"","sources":["../../../../src/server/endpoints/cache.delete.endpoint.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"cache.delete.endpoint.js","sourceRoot":"","sources":["../../../../src/server/endpoints/cache.delete.endpoint.ts"],"names":[],"mappings":";;AAEA,oCAAuC;AACvC,sCAAqC;AACrC,yCAAsC;AAQtC,MAAM,MAAM,GAAG,eAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;AAE5D,kBAAe,iBAAQ;KACpB,KAAK,EAAoE;KACzE,UAAU,CAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;KACvD,QAAQ,CAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;KACzC,aAAa,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;IACnD,MAAM,MAAM,GAAc;QACxB,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,IAAI;YAC5B,KAAK,EAAE;gBACL,KAAK,EAAE,CAAC;aACT;SACF,CAAC;KACH,CAAC;IAEF,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,mBAAW,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QAEvG,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;YAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,KAAM,CAAC,OAAO,CAAC,SAAS;gBAC1D,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,KAAM,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;gBAC5D,CAAC,CAAC,GAAG,CAAC;YAER,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,KAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC5E,MAAM,CAAC,KAAK,CAAC,iDAAiD,GAAG,GAAG,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,CAAC;gBAC7F,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;YAEH,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC;YAChC,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AACnB,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Endpoint } from '../models';
|
|
2
|
+
declare const _default: Endpoint<{
|
|
3
|
+
incoming: {
|
|
4
|
+
data: {
|
|
5
|
+
backup: string;
|
|
6
|
+
ttl?: number;
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
outgoing: null;
|
|
10
|
+
}, import("../models").IEndpointSchema<{
|
|
11
|
+
incoming: {
|
|
12
|
+
data: {
|
|
13
|
+
backup: string;
|
|
14
|
+
ttl?: number;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
outgoing: null;
|
|
18
|
+
}>> & {
|
|
19
|
+
http: {
|
|
20
|
+
readonly method: "POST";
|
|
21
|
+
readonly path: "/cache/restore";
|
|
22
|
+
};
|
|
23
|
+
} & {
|
|
24
|
+
io: {
|
|
25
|
+
readonly path: "cache:restore";
|
|
26
|
+
};
|
|
27
|
+
} & {
|
|
28
|
+
handler: ({ incoming, reply, server }: (import("..").InternalHttpRequestContext<null> | import("..").InternalSocketIoRequestContext<null>) & {
|
|
29
|
+
incoming: {
|
|
30
|
+
data?: {
|
|
31
|
+
backup: string;
|
|
32
|
+
ttl?: number;
|
|
33
|
+
} | undefined;
|
|
34
|
+
query?: unknown;
|
|
35
|
+
};
|
|
36
|
+
}) => Promise<void>;
|
|
37
|
+
};
|
|
38
|
+
export default _default;
|
|
39
|
+
//# sourceMappingURL=cache.restore.endpoint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.restore.endpoint.d.ts","sourceRoot":"","sources":["../../../../src/server/endpoints/cache.restore.endpoint.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;;cAMhB;QAAE,IAAI,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,GAAG,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE;cAAY,IAAI;;cAA1D;QAAE,IAAI,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,GAAG,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE;cAAY,IAAI;;;;;;;;;;;;;;wBAAxC,MAAM;sBAAQ,MAAM;;;;;;AAD3D,wBA2BK"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const node_gzip_1 = require("node-gzip");
|
|
4
|
+
const models_1 = require("../models");
|
|
5
|
+
const logger_1 = require("../../logger");
|
|
6
|
+
const logger = logger_1.Logger.build('Server.Endpoints.CacheRestore');
|
|
7
|
+
exports.default = models_1.Endpoint
|
|
8
|
+
.build()
|
|
9
|
+
.bindToHttp({ method: 'POST', path: `/cache/restore` })
|
|
10
|
+
.bindToIo({ path: 'cache:restore' })
|
|
11
|
+
.assignHandler(async ({ incoming, reply, server }) => {
|
|
12
|
+
const unziped = await (0, node_gzip_1.ungzip)(Buffer.from(incoming.data.backup, 'base64')).catch((error) => {
|
|
13
|
+
logger.error('Got error while cache unzip', error?.stack ?? error);
|
|
14
|
+
return null;
|
|
15
|
+
});
|
|
16
|
+
if (!unziped) {
|
|
17
|
+
return reply.internalError('Cannot unzip backup payload');
|
|
18
|
+
}
|
|
19
|
+
const ttl = incoming.data.ttl ?? 60 * 60;
|
|
20
|
+
const backup = JSON.parse(unziped.toString('utf8'));
|
|
21
|
+
if (server.databases.redis) {
|
|
22
|
+
await Promise.all(backup.redis.map(([key, value]) => server.databases.redis.setex(key, ttl, value).catch((error) => {
|
|
23
|
+
logger.error(`Got error while inserting key [${key}]`, error?.stack ?? error);
|
|
24
|
+
return null;
|
|
25
|
+
})));
|
|
26
|
+
}
|
|
27
|
+
reply.ok(null);
|
|
28
|
+
});
|
|
29
|
+
//# sourceMappingURL=cache.restore.endpoint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.restore.endpoint.js","sourceRoot":"","sources":["../../../../src/server/endpoints/cache.restore.endpoint.ts"],"names":[],"mappings":";;AAAA,yCAAmC;AAGnC,sCAAqC;AACrC,yCAAsC;AAEtC,MAAM,MAAM,GAAG,eAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;AAE7D,kBAAe,iBAAQ;KACpB,KAAK,EAA4E;KACjF,UAAU,CAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;KAC7D,QAAQ,CAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;KAC1C,aAAa,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;IACnD,MAAM,OAAO,GAAG,MAAM,IAAA,kBAAM,EAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACzF,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,KAAK,CAAC,aAAa,CAAC,6BAA6B,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC;IAC1C,MAAM,MAAM,GAAiB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAElE,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAC3B,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAClD,MAAM,CAAC,SAAS,CAAC,KAAM,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAC7D,MAAM,CAAC,KAAK,CAAC,kCAAkC,GAAG,GAAG,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,CAAC;YAC9E,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CACH,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;AACjB,CAAC,CAAC,CAAC"}
|
|
@@ -6,6 +6,8 @@ export { default as expectationsUpdate } from './expectations.update.endpoint';
|
|
|
6
6
|
export { default as historyGetList } from './history.get-list.endpoint';
|
|
7
7
|
export { default as historyDelete } from './history.delete.endpoint';
|
|
8
8
|
export { default as cacheUsageGet } from './cache.usage.get.endpoint';
|
|
9
|
+
export { default as cacheRestore } from './cache.restore.endpoint';
|
|
10
|
+
export { default as cacheBackup } from './cache.backup.endpoint';
|
|
9
11
|
export { default as cacheDelete } from './cache.delete.endpoint';
|
|
10
12
|
export { default as configGet } from './config.get.endpoint';
|
|
11
13
|
export { default as metrics } from './metrics.endpoint';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/endpoints/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC1F,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAE/E,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAErE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEjE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/endpoints/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC1F,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAE/E,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAErE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEjE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.gui = exports.ping = exports.stats = exports.metrics = exports.configGet = exports.cacheDelete = exports.cacheUsageGet = exports.historyDelete = exports.historyGetList = exports.expectationsUpdate = exports.expectationsDelete = exports.expectationsCreate = exports.expectationsGetList = exports.expectationsGroupUpdate = void 0;
|
|
6
|
+
exports.gui = exports.ping = exports.stats = exports.metrics = exports.configGet = exports.cacheDelete = exports.cacheBackup = exports.cacheRestore = exports.cacheUsageGet = exports.historyDelete = exports.historyGetList = exports.expectationsUpdate = exports.expectationsDelete = exports.expectationsCreate = exports.expectationsGetList = exports.expectationsGroupUpdate = void 0;
|
|
7
7
|
var expectations_group_update_endpoint_1 = require("./expectations-group.update.endpoint");
|
|
8
8
|
Object.defineProperty(exports, "expectationsGroupUpdate", { enumerable: true, get: function () { return __importDefault(expectations_group_update_endpoint_1).default; } });
|
|
9
9
|
var expectations_get_list_endpoint_1 = require("./expectations.get-list.endpoint");
|
|
@@ -20,6 +20,10 @@ var history_delete_endpoint_1 = require("./history.delete.endpoint");
|
|
|
20
20
|
Object.defineProperty(exports, "historyDelete", { enumerable: true, get: function () { return __importDefault(history_delete_endpoint_1).default; } });
|
|
21
21
|
var cache_usage_get_endpoint_1 = require("./cache.usage.get.endpoint");
|
|
22
22
|
Object.defineProperty(exports, "cacheUsageGet", { enumerable: true, get: function () { return __importDefault(cache_usage_get_endpoint_1).default; } });
|
|
23
|
+
var cache_restore_endpoint_1 = require("./cache.restore.endpoint");
|
|
24
|
+
Object.defineProperty(exports, "cacheRestore", { enumerable: true, get: function () { return __importDefault(cache_restore_endpoint_1).default; } });
|
|
25
|
+
var cache_backup_endpoint_1 = require("./cache.backup.endpoint");
|
|
26
|
+
Object.defineProperty(exports, "cacheBackup", { enumerable: true, get: function () { return __importDefault(cache_backup_endpoint_1).default; } });
|
|
23
27
|
var cache_delete_endpoint_1 = require("./cache.delete.endpoint");
|
|
24
28
|
Object.defineProperty(exports, "cacheDelete", { enumerable: true, get: function () { return __importDefault(cache_delete_endpoint_1).default; } });
|
|
25
29
|
var config_get_endpoint_1 = require("./config.get.endpoint");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/server/endpoints/index.ts"],"names":[],"mappings":";;;;;;AAAA,2FAA0F;AAAjF,8JAAA,OAAO,OAA2B;AAC3C,mFAAkF;AAAzE,sJAAA,OAAO,OAAuB;AACvC,+EAA+E;AAAtE,mJAAA,OAAO,OAAsB;AACtC,+EAA+E;AAAtE,mJAAA,OAAO,OAAsB;AACtC,+EAA+E;AAAtE,mJAAA,OAAO,OAAsB;AAEtC,yEAAwE;AAA/D,4IAAA,OAAO,OAAkB;AAClC,qEAAqE;AAA5D,yIAAA,OAAO,OAAiB;AAEjC,uEAAsE;AAA7D,0IAAA,OAAO,OAAiB;AACjC,iEAAiE;AAAxD,qIAAA,OAAO,OAAe;AAE/B,6DAA6D;AAApD,iIAAA,OAAO,OAAa;AAE7B,uDAAwD;AAA/C,4HAAA,OAAO,OAAW;AAC3B,mDAAoD;AAA3C,wHAAA,OAAO,OAAS;AACzB,iDAAkD;AAAzC,sHAAA,OAAO,OAAQ;AACxB,+CAAgD;AAAvC,oHAAA,OAAO,OAAO"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/server/endpoints/index.ts"],"names":[],"mappings":";;;;;;AAAA,2FAA0F;AAAjF,8JAAA,OAAO,OAA2B;AAC3C,mFAAkF;AAAzE,sJAAA,OAAO,OAAuB;AACvC,+EAA+E;AAAtE,mJAAA,OAAO,OAAsB;AACtC,+EAA+E;AAAtE,mJAAA,OAAO,OAAsB;AACtC,+EAA+E;AAAtE,mJAAA,OAAO,OAAsB;AAEtC,yEAAwE;AAA/D,4IAAA,OAAO,OAAkB;AAClC,qEAAqE;AAA5D,yIAAA,OAAO,OAAiB;AAEjC,uEAAsE;AAA7D,0IAAA,OAAO,OAAiB;AACjC,mEAAmE;AAA1D,uIAAA,OAAO,OAAgB;AAChC,iEAAiE;AAAxD,qIAAA,OAAO,OAAe;AAC/B,iEAAiE;AAAxD,qIAAA,OAAO,OAAe;AAE/B,6DAA6D;AAApD,iIAAA,OAAO,OAAa;AAE7B,uDAAwD;AAA/C,4HAAA,OAAO,OAAW;AAC3B,mDAAoD;AAA3C,wHAAA,OAAO,OAAS;AACzB,iDAAkD;AAAzC,sHAAA,OAAO,OAAQ;AACxB,+CAAgD;AAAvC,oHAAA,OAAO,OAAO"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
1
2
|
import { Service } from '../models';
|
|
2
3
|
export interface IRedisUsage {
|
|
3
4
|
count: number;
|
|
4
5
|
bytes: number;
|
|
5
6
|
}
|
|
6
7
|
export declare class AnalyticsService extends Service {
|
|
8
|
+
iterateRedisKeys(prefix?: string): Observable<string>;
|
|
7
9
|
calculateRedisUsage(prefix?: string): Promise<IRedisUsage>;
|
|
8
10
|
static build(server: Service['server']): AnalyticsService;
|
|
9
11
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analytics.service.d.ts","sourceRoot":"","sources":["../../../../src/server/services/analytics.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"analytics.service.d.ts","sourceRoot":"","sources":["../../../../src/server/services/analytics.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAe,MAAM,MAAM,CAAC;AAI/C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAID,qBAAa,gBAAiB,SAAQ,OAAO;IACpC,gBAAgB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAsB/C,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAqBvE,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC;CAGvC"}
|
|
@@ -1,39 +1,43 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AnalyticsService = void 0;
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
4
6
|
const models_1 = require("../models");
|
|
5
7
|
const logger_1 = require("../../logger");
|
|
6
8
|
const logger = logger_1.Logger.build('Services.Analytics');
|
|
7
9
|
class AnalyticsService extends models_1.Service {
|
|
10
|
+
iterateRedisKeys(prefix) {
|
|
11
|
+
if (!this.server.databases.redis) {
|
|
12
|
+
return (0, rxjs_1.of)();
|
|
13
|
+
}
|
|
14
|
+
const subject = new rxjs_1.Subject();
|
|
15
|
+
const match = `${this.server.databases.redis.options.keyPrefix ?? ''}${prefix ?? ''}*`;
|
|
16
|
+
const stream = this.server.databases.redis.scanStream({ match });
|
|
17
|
+
stream.once('end', () => setImmediate(() => subject.complete()));
|
|
18
|
+
stream.once('error', (error) => {
|
|
19
|
+
logger.error('Got error while scan execution', error?.stack ?? error);
|
|
20
|
+
stream.close();
|
|
21
|
+
subject.error(error);
|
|
22
|
+
});
|
|
23
|
+
stream.on('data', async (keys) => keys.forEach((key) => subject.next(key)));
|
|
24
|
+
return subject.asObservable();
|
|
25
|
+
}
|
|
8
26
|
async calculateRedisUsage(prefix) {
|
|
9
27
|
if (!this.server.databases.redis) {
|
|
10
28
|
return { count: 0, bytes: 0 };
|
|
11
29
|
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
logger.error('Got error while scan execution', error?.stack ?? error);
|
|
19
|
-
stream.close();
|
|
20
|
-
reject(error);
|
|
30
|
+
const converter = utils_1.RxConverter.build(this.iterateRedisKeys(prefix));
|
|
31
|
+
const result = { count: 0, bytes: 0 };
|
|
32
|
+
for await (const key of converter.iterate()) {
|
|
33
|
+
const usage = await this.server.databases.redis.call('MEMORY', 'USAGE', key).catch((error) => {
|
|
34
|
+
logger.error('Got error while fetching memory usage', error?.stack ?? error);
|
|
35
|
+
throw error;
|
|
21
36
|
});
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
.all(keys.map(async (key) => this.server.databases.redis.call('MEMORY', 'USAGE', key)))
|
|
27
|
-
.catch((error) => {
|
|
28
|
-
logger.error('Got error while fetching memory usage', error?.stack ?? error);
|
|
29
|
-
stream.close();
|
|
30
|
-
reject(error);
|
|
31
|
-
return [];
|
|
32
|
-
});
|
|
33
|
-
usage.forEach((bytes) => result.bytes += Number(bytes));
|
|
34
|
-
stream.resume();
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
+
result.count += 1;
|
|
38
|
+
result.bytes += Number(usage);
|
|
39
|
+
}
|
|
40
|
+
return result;
|
|
37
41
|
}
|
|
38
42
|
static build(server) {
|
|
39
43
|
return new AnalyticsService(server);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analytics.service.js","sourceRoot":"","sources":["../../../../src/server/services/analytics.service.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"analytics.service.js","sourceRoot":"","sources":["../../../../src/server/services/analytics.service.ts"],"names":[],"mappings":";;;AAAA,+BAA+C;AAG/C,oCAAuC;AACvC,sCAAoC;AACpC,yCAAsC;AAOtC,MAAM,MAAM,GAAG,eAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;AAElD,MAAa,gBAAiB,SAAQ,gBAAO;IACpC,gBAAgB,CAAC,MAAe;QACrC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACjC,OAAO,IAAA,SAAE,GAAE,CAAC;QACd,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,cAAO,EAAU,CAAC;QAEtC,MAAM,KAAK,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAM,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,GAAG,MAAM,IAAI,EAAE,GAAG,CAAC;QACxF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAM,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAElE,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACjE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC7B,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,CAAC;YACtE,MAAM,CAAC,KAAK,EAAE,CAAC;YAEf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,IAAc,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACtF,OAAO,OAAO,CAAC,YAAY,EAAE,CAAC;IAChC,CAAC;IAEM,KAAK,CAAC,mBAAmB,CAAC,MAAe;QAC9C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACjC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QAChC,CAAC;QAED,MAAM,SAAS,GAAG,mBAAW,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;QACnE,MAAM,MAAM,GAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QAEnD,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;YAC5C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC5F,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,CAAC;gBAC7E,MAAM,KAAK,CAAC;YACd,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC;YAClB,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,MAAyB;QACpC,OAAO,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;CACF;AA/CD,4CA+CC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../../../src/server/transports/http.transport/executor.ts"],"names":[],"mappings":"AAAA,OAAc,EAAc,kBAAkB,
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../../../src/server/transports/http.transport/executor.ts"],"names":[],"mappings":"AAAA,OAAc,EAAc,kBAAkB,EAAiB,MAAM,OAAO,CAAC;AAM7E,OAAO,KAAK,EAAE,WAAW,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAGpD,OAAO,EAGL,QAAQ,EAER,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,cAAc,CAAC;AAItB,qBAAa,YAAa,SAAQ,QAAQ,CAAC,kBAAkB,CAAC;IAC/C,IAAI,CAAC,OAAO,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,oBAAoB;IAYhE,KAAK,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAoBpE,OAAO,CAClB,OAAO,EAAE,kBAAkB,EAC3B,QAAQ,EAAE,uBAAuB,EACjC,aAAa,EAAE,yBAAyB;;;;;;;;;;IAoD7B,KAAK,CAAC,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,uBAAuB;IAmBjF,sDAAsD;cACtC,8BAA8B,CAC5C,OAAO,EAAE,kBAAkB,EAC3B,QAAQ,EAAE,uBAAuB,EACjC,aAAa,EAAE,yBAAyB,GACvC,OAAO,CAAC,kBAAkB,CAAC;CA4B/B"}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.HttpExecutor = void 0;
|
|
7
7
|
const axios_1 = __importDefault(require("axios"));
|
|
8
8
|
const https_proxy_agent_1 = require("https-proxy-agent");
|
|
9
|
+
const http_encoding_1 = require("http-encoding");
|
|
9
10
|
const lodash_1 = __importDefault(require("lodash"));
|
|
10
11
|
const logger_1 = require("../../../logger");
|
|
11
12
|
const models_1 = require("../../models");
|
|
@@ -48,7 +49,7 @@ class HttpExecutor extends models_1.Executor {
|
|
|
48
49
|
});
|
|
49
50
|
const response = await axios_1.default
|
|
50
51
|
.request(options)
|
|
51
|
-
.catch((error) => {
|
|
52
|
+
.catch(async (error) => {
|
|
52
53
|
if (!error.response) {
|
|
53
54
|
context.snapshot.assign({
|
|
54
55
|
error: lodash_1.default.pick(error, ['message', 'code']),
|
|
@@ -59,6 +60,10 @@ class HttpExecutor extends models_1.Executor {
|
|
|
59
60
|
}
|
|
60
61
|
return error.response;
|
|
61
62
|
});
|
|
63
|
+
if (response.headers['content-encoding']) {
|
|
64
|
+
response.data = await (0, http_encoding_1.decodeBuffer)(response.data, response.headers['content-encoding']);
|
|
65
|
+
response.headers['content-encoding'] = 'utf-8';
|
|
66
|
+
}
|
|
62
67
|
const type = (0, models_1.extractPayloadType)(response.headers) ?? 'plain';
|
|
63
68
|
const data = (0, models_1.parsePayload)(type, response.data);
|
|
64
69
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../src/server/transports/http.transport/executor.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../src/server/transports/http.transport/executor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAE3D,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc,CAAC,MAAM,SAAS,mBAAmB,GAAG,EAAE;IACrE,SAAS,EAAE,MAAM,SAAS;QAAE,SAAS,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IACrE,KAAK,EAAE,MAAM,SAAS;QAAE,KAAK,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IAC7D,IAAI,EAAE,MAAM,SAAS;QAAE,IAAI,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;CAC5D;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,CAAC;IACzF,KAAK,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC;IAC7E,IAAI,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;CAC3E;AAED,MAAM,WAAW,iBAAiB;IAChC,mBAAmB,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAChD,qBAAqB,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAElD,eAAe,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,iBAAiB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAErC,mBAAmB,EAAE;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,YAAY,CAAC;KACrB,CAAC;CACH"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAE3D,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc,CAAC,MAAM,SAAS,mBAAmB,GAAG,EAAE;IACrE,SAAS,EAAE,MAAM,SAAS;QAAE,SAAS,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IACrE,KAAK,EAAE,MAAM,SAAS;QAAE,KAAK,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IAC7D,IAAI,EAAE,MAAM,SAAS;QAAE,IAAI,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;CAC5D;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,CAAC;IACzF,KAAK,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC;IAC7E,IAAI,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;CAC3E;AAED,MAAM,WAAW,iBAAiB;IAChC,mBAAmB,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAChD,qBAAqB,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAElD,eAAe,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,iBAAiB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAErC,mBAAmB,EAAE;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,YAAY,CAAC;KACrB,CAAC;CACH;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;CAC3B"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { TObject, TSchema } from '@n1k1t/typebox';
|
|
2
2
|
import { ValueError } from '@n1k1t/typebox/value';
|
|
3
3
|
import type { Constructable } from '../../../types';
|
|
4
|
+
export * from './rx';
|
|
4
5
|
interface IValidationMetaContext {
|
|
5
6
|
schema: TObject;
|
|
6
7
|
properties: Set<string | Symbol>;
|
|
@@ -8,5 +9,4 @@ interface IValidationMetaContext {
|
|
|
8
9
|
export declare const extractValidationMetaContext: (Definition: Constructable<object> | Function) => IValidationMetaContext | null;
|
|
9
10
|
export declare const validate: (instance: object, references?: TSchema[]) => ValueError[];
|
|
10
11
|
export declare const UseValidation: (schema: TSchema) => PropertyDecorator;
|
|
11
|
-
export {};
|
|
12
12
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAQ,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAS,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,UAAU,sBAAsB;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;CAClC;AASD,eAAO,MAAM,4BAA4B,eAC1B,aAAa,CAAC,MAAM,CAAC,GAAG,QAAQ,KAAG,sBAAsB,GAAG,IACd,CAAC;AAE9D,eAAO,MAAM,QAAQ,aAAc,MAAM,eAAc,OAAO,EAAE,KAAQ,UAAU,EAGjF,CAAA;AAED,eAAO,MAAM,aAAa,WAAY,OAAO,KAAG,iBAQ/C,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAQ,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAS,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,cAAc,MAAM,CAAC;AAErB,UAAU,sBAAsB;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;CAClC;AASD,eAAO,MAAM,4BAA4B,eAC1B,aAAa,CAAC,MAAM,CAAC,GAAG,QAAQ,KAAG,sBAAsB,GAAG,IACd,CAAC;AAE9D,eAAO,MAAM,QAAQ,aAAc,MAAM,eAAc,OAAO,EAAE,KAAQ,UAAU,EAGjF,CAAA;AAED,eAAO,MAAM,aAAa,WAAY,OAAO,KAAG,iBAQ/C,CAAA"}
|
|
@@ -1,8 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
17
|
exports.UseValidation = exports.validate = exports.extractValidationMetaContext = void 0;
|
|
4
18
|
const typebox_1 = require("@n1k1t/typebox");
|
|
5
19
|
const value_1 = require("@n1k1t/typebox/value");
|
|
20
|
+
__exportStar(require("./rx"), exports);
|
|
6
21
|
const validationContextMetaKey = Symbol('validation:context');
|
|
7
22
|
const buildValidationMetaContext = () => ({
|
|
8
23
|
schema: typebox_1.Type.Object({}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/server/utils/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/server/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4CAAwD;AACxD,gDAAyD;AAIzD,uCAAqB;AAOrB,MAAM,wBAAwB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAE9D,MAAM,0BAA0B,GAAG,GAA2B,EAAE,CAAC,CAAC;IAChE,MAAM,EAAE,cAAI,CAAC,MAAM,CAAC,EAAE,CAAC;IACvB,UAAU,EAAE,IAAI,GAAG,EAAE;CACtB,CAAC,CAAC;AAEI,MAAM,4BAA4B,GACvC,CAAC,UAA4C,EAAiC,EAAE,CAC9E,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,wBAAwB,CAAC,IAAI,IAAI,CAAC;AAFjD,QAAA,4BAA4B,gCAEqB;AAEvD,MAAM,QAAQ,GAAG,CAAC,QAAgB,EAAE,aAAwB,EAAE,EAAgB,EAAE;IACrF,MAAM,OAAO,GAAG,IAAA,oCAA4B,EAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACnE,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,aAAK,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAChF,CAAC,CAAA;AAHY,QAAA,QAAQ,YAGpB;AAEM,MAAM,aAAa,GAAG,CAAC,MAAe,EAAqB,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;IACnF,MAAM,OAAO,GAAG,IAAA,oCAA4B,EAAC,MAAM,CAAC,WAAW,CAAC;WAC3D,0BAA0B,EAAE,CAAC;IAElC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,OAAO,CAAC,MAAM,GAAG,cAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,cAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IAElF,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,wBAAwB,EAAE,OAAO,CAAC,CAAC;AACrE,CAAC,CAAA;AARY,QAAA,aAAa,iBAQzB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
export declare class RxConverter<T> {
|
|
3
|
+
source: Observable<T>;
|
|
4
|
+
constructor(source: Observable<T>);
|
|
5
|
+
iterate(): AsyncIterable<T, null>;
|
|
6
|
+
static build<T>(source: Observable<T>): RxConverter<T>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=rx.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rx.d.ts","sourceRoot":"","sources":["../../../../src/server/utils/rx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,qBAAa,WAAW,CAAC,CAAC;IACL,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;gBAArB,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;IAEjC,OAAO,IAAI,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC;IAqCxC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;CAGvD"}
|