@n1k1t/mock-server 0.1.3 → 0.1.5
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/bin/index.ts +2 -0
- package/lib/bin/index.d.ts +1 -0
- package/lib/bin/index.js +1 -0
- package/lib/bin/index.js.map +1 -1
- package/lib/package.json +3 -3
- package/lib/src/client/helpers/expectations.d.ts +1 -0
- package/lib/src/client/helpers/expectations.d.ts.map +1 -1
- package/lib/src/client/helpers/expectations.js.map +1 -1
- package/lib/src/client/models/client.d.ts +1 -0
- package/lib/src/client/models/client.d.ts.map +1 -1
- package/lib/src/client/models/client.js.map +1 -1
- package/lib/src/client/models/client.spec.js +1 -1
- package/lib/src/client/models/client.spec.js.map +1 -1
- package/lib/src/client/types.d.ts +1 -0
- package/lib/src/client/types.d.ts.map +1 -1
- package/lib/src/config/index.d.ts +2 -9
- package/lib/src/config/index.d.ts.map +1 -1
- package/lib/src/config/index.js +2 -15
- package/lib/src/config/index.js.map +1 -1
- package/lib/src/config/model.d.ts +23 -0
- package/lib/src/config/model.d.ts.map +1 -0
- package/lib/src/config/model.js +39 -0
- package/lib/src/config/model.js.map +1 -0
- package/lib/src/expectations/__utils__/index.d.ts +1 -0
- package/lib/src/expectations/__utils__/index.d.ts.map +1 -1
- package/lib/src/expectations/__utils__/index.js.map +1 -1
- package/lib/src/expectations/models/expectation.d.ts +3 -3
- package/lib/src/expectations/models/expectation.d.ts.map +1 -1
- package/lib/src/expectations/models/expectation.js +4 -8
- package/lib/src/expectations/models/expectation.js.map +1 -1
- package/lib/src/expectations/models/operator.d.ts +4 -2
- package/lib/src/expectations/models/operator.d.ts.map +1 -1
- package/lib/src/expectations/models/operator.js +10 -4
- package/lib/src/expectations/models/operator.js.map +1 -1
- package/lib/src/expectations/models/storage.d.ts +1 -0
- package/lib/src/expectations/models/storage.d.ts.map +1 -1
- package/lib/src/expectations/models/storage.js +1 -1
- package/lib/src/expectations/models/storage.js.map +1 -1
- package/lib/src/expectations/operators/and.operator.d.ts +3 -1
- package/lib/src/expectations/operators/and.operator.d.ts.map +1 -1
- package/lib/src/expectations/operators/and.operator.js +3 -0
- package/lib/src/expectations/operators/and.operator.js.map +1 -1
- package/lib/src/expectations/operators/exec.operator.d.ts +4 -2
- package/lib/src/expectations/operators/exec.operator.d.ts.map +1 -1
- package/lib/src/expectations/operators/exec.operator.js +5 -2
- package/lib/src/expectations/operators/exec.operator.js.map +1 -1
- package/lib/src/expectations/operators/has.operator.d.ts +4 -2
- package/lib/src/expectations/operators/has.operator.d.ts.map +1 -1
- package/lib/src/expectations/operators/has.operator.js +36 -3
- package/lib/src/expectations/operators/has.operator.js.map +1 -1
- package/lib/src/expectations/operators/if.operator.d.ts +3 -1
- package/lib/src/expectations/operators/if.operator.d.ts.map +1 -1
- package/lib/src/expectations/operators/if.operator.js +7 -0
- package/lib/src/expectations/operators/if.operator.js.map +1 -1
- package/lib/src/expectations/operators/merge.operator.d.ts +3 -1
- package/lib/src/expectations/operators/merge.operator.d.ts.map +1 -1
- package/lib/src/expectations/operators/merge.operator.js +3 -0
- package/lib/src/expectations/operators/merge.operator.js.map +1 -1
- package/lib/src/expectations/operators/not.operator.d.ts +3 -1
- package/lib/src/expectations/operators/not.operator.d.ts.map +1 -1
- package/lib/src/expectations/operators/not.operator.js +3 -0
- package/lib/src/expectations/operators/not.operator.js.map +1 -1
- package/lib/src/expectations/operators/or.operator.d.ts +3 -1
- package/lib/src/expectations/operators/or.operator.d.ts.map +1 -1
- package/lib/src/expectations/operators/or.operator.js +3 -0
- package/lib/src/expectations/operators/or.operator.js.map +1 -1
- package/lib/src/expectations/operators/remove.operator.d.ts +3 -1
- package/lib/src/expectations/operators/remove.operator.d.ts.map +1 -1
- package/lib/src/expectations/operators/remove.operator.js +3 -0
- package/lib/src/expectations/operators/remove.operator.js.map +1 -1
- package/lib/src/expectations/operators/root.operator.d.ts +3 -1
- package/lib/src/expectations/operators/root.operator.d.ts.map +1 -1
- package/lib/src/expectations/operators/root.operator.js +7 -2
- package/lib/src/expectations/operators/root.operator.js.map +1 -1
- package/lib/src/expectations/operators/set.operator.d.ts +4 -2
- package/lib/src/expectations/operators/set.operator.d.ts.map +1 -1
- package/lib/src/expectations/operators/set.operator.js +17 -4
- package/lib/src/expectations/operators/set.operator.js.map +1 -1
- package/lib/src/expectations/operators/switch.operator.d.ts +4 -2
- package/lib/src/expectations/operators/switch.operator.d.ts.map +1 -1
- package/lib/src/expectations/operators/switch.operator.js +11 -1
- package/lib/src/expectations/operators/switch.operator.js.map +1 -1
- package/lib/src/expectations/types.d.ts +19 -17
- package/lib/src/expectations/types.d.ts.map +1 -1
- package/lib/src/expectations/types.js +3 -6
- package/lib/src/expectations/types.js.map +1 -1
- package/lib/src/expectations/utils.d.ts +2 -6
- package/lib/src/expectations/utils.d.ts.map +1 -1
- package/lib/src/expectations/utils.js +2 -33
- package/lib/src/expectations/utils.js.map +1 -1
- package/lib/src/index.d.ts +4 -2
- package/lib/src/index.d.ts.map +1 -1
- package/lib/src/index.js +9 -2
- package/lib/src/index.js.map +1 -1
- package/lib/src/logger/index.d.ts +23 -0
- package/lib/src/logger/index.d.ts.map +1 -0
- package/lib/src/logger/index.js +83 -0
- package/lib/src/logger/index.js.map +1 -0
- package/lib/src/logger/types.d.ts +4 -0
- package/lib/src/logger/types.d.ts.map +1 -0
- package/lib/src/{types.js.map → logger/types.js.map} +1 -1
- package/lib/src/logger/utils.d.ts +6 -0
- package/lib/src/logger/utils.d.ts.map +1 -0
- package/lib/src/logger/utils.js +25 -0
- package/lib/src/logger/utils.js.map +1 -0
- package/lib/src/meta/index.d.ts +5 -0
- package/lib/src/meta/index.d.ts.map +1 -0
- package/lib/src/meta/index.js +22 -0
- package/lib/src/meta/index.js.map +1 -0
- package/lib/src/meta/model.d.ts +13 -0
- package/lib/src/meta/model.d.ts.map +1 -0
- package/lib/src/meta/model.js +28 -0
- package/lib/src/meta/model.js.map +1 -0
- package/lib/src/meta/storage.d.ts +9 -0
- package/lib/src/meta/storage.d.ts.map +1 -0
- package/lib/src/meta/storage.js +21 -0
- package/lib/src/meta/storage.js.map +1 -0
- package/lib/src/server/endpoints/config.get.endpoint.d.ts +48 -6
- package/lib/src/server/endpoints/config.get.endpoint.d.ts.map +1 -1
- package/lib/src/server/endpoints/config.get.endpoint.js +5 -1
- package/lib/src/server/endpoints/config.get.endpoint.js.map +1 -1
- package/lib/src/server/endpoints/expectations.create.endpoint.d.ts +1 -1
- package/lib/src/server/endpoints/expectations.delete.endpoint.d.ts +1 -1
- package/lib/src/server/endpoints/expectations.get-list.endpoint.d.ts +1 -1
- package/lib/src/server/endpoints/expectations.update.endpoint.d.ts +1 -1
- package/lib/src/server/endpoints/history.get-list.endpoint.d.ts +4 -4
- package/lib/src/server/endpoints/ping.endpoint.d.ts +1 -1
- package/lib/src/server/history/model.d.ts +9 -13
- package/lib/src/server/history/model.d.ts.map +1 -1
- package/lib/src/server/history/model.js +14 -8
- package/lib/src/server/history/model.js.map +1 -1
- package/lib/src/server/history/storage.d.ts +1 -1
- package/lib/src/server/history/storage.d.ts.map +1 -1
- package/lib/src/server/history/storage.js +7 -7
- package/lib/src/server/history/storage.js.map +1 -1
- package/lib/src/server/history/types.d.ts +9 -1
- package/lib/src/server/history/types.d.ts.map +1 -1
- package/lib/src/server/index.d.ts +0 -1
- package/lib/src/server/index.d.ts.map +1 -1
- package/lib/src/server/index.js +24 -9
- package/lib/src/server/index.js.map +1 -1
- package/lib/src/server/middlewares/delay.middleware.d.ts +6 -4
- package/lib/src/server/middlewares/delay.middleware.d.ts.map +1 -1
- package/lib/src/server/middlewares/delay.middleware.js +2 -2
- package/lib/src/server/middlewares/delay.middleware.js.map +1 -1
- package/lib/src/server/middlewares/destroy.midleware.d.ts +9 -7
- package/lib/src/server/middlewares/destroy.midleware.d.ts.map +1 -1
- package/lib/src/server/middlewares/destroy.midleware.js +6 -5
- package/lib/src/server/middlewares/destroy.midleware.js.map +1 -1
- package/lib/src/server/middlewares/forward.middleware.d.ts +9 -7
- package/lib/src/server/middlewares/forward.middleware.d.ts.map +1 -1
- package/lib/src/server/middlewares/forward.middleware.js +31 -21
- package/lib/src/server/middlewares/forward.middleware.js.map +1 -1
- package/lib/src/server/middlewares/history.middleware.d.ts +6 -4
- package/lib/src/server/middlewares/history.middleware.d.ts.map +1 -1
- package/lib/src/server/middlewares/history.middleware.js +3 -3
- package/lib/src/server/middlewares/history.middleware.js.map +1 -1
- package/lib/src/server/middlewares/index.d.ts +1 -1
- package/lib/src/server/middlewares/index.d.ts.map +1 -1
- package/lib/src/server/middlewares/index.js +3 -3
- package/lib/src/server/middlewares/index.js.map +1 -1
- package/lib/src/server/middlewares/{internal-route.middleware.d.ts → internal.middleware.d.ts} +7 -5
- package/lib/src/server/middlewares/internal.middleware.d.ts.map +1 -0
- package/lib/src/server/middlewares/{internal-route.middleware.js → internal.middleware.js} +7 -4
- package/lib/src/server/middlewares/internal.middleware.js.map +1 -0
- package/lib/src/server/middlewares/manipulate-expectation.middleware.d.ts +6 -4
- package/lib/src/server/middlewares/manipulate-expectation.middleware.d.ts.map +1 -1
- package/lib/src/server/middlewares/manipulate-expectation.middleware.js +2 -2
- package/lib/src/server/middlewares/manipulate-expectation.middleware.js.map +1 -1
- package/lib/src/server/middlewares/match-expectation.middleware.d.ts +6 -4
- package/lib/src/server/middlewares/match-expectation.middleware.d.ts.map +1 -1
- package/lib/src/server/middlewares/match-expectation.middleware.js +13 -6
- package/lib/src/server/middlewares/match-expectation.middleware.js.map +1 -1
- package/lib/src/server/middlewares/public.middleware.d.ts +6 -4
- package/lib/src/server/middlewares/public.middleware.d.ts.map +1 -1
- package/lib/src/server/middlewares/public.middleware.js +16 -15
- package/lib/src/server/middlewares/public.middleware.js.map +1 -1
- package/lib/src/server/middlewares/reply.middleware.d.ts +9 -7
- package/lib/src/server/middlewares/reply.middleware.d.ts.map +1 -1
- package/lib/src/server/middlewares/reply.middleware.js +6 -7
- package/lib/src/server/middlewares/reply.middleware.js.map +1 -1
- package/lib/src/server/models/endpoint.d.ts +2 -1
- package/lib/src/server/models/endpoint.d.ts.map +1 -1
- package/lib/src/server/models/endpoint.js.map +1 -1
- package/lib/src/server/models/index.d.ts +2 -1
- package/lib/src/server/models/index.d.ts.map +1 -1
- package/lib/src/server/models/index.js +2 -1
- package/lib/src/server/models/index.js.map +1 -1
- package/lib/src/server/models/middleware.d.ts +10 -4
- package/lib/src/server/models/middleware.d.ts.map +1 -1
- package/lib/src/server/models/middleware.js +5 -11
- package/lib/src/server/models/middleware.js.map +1 -1
- package/lib/src/server/models/plugins.d.ts +29 -0
- package/lib/src/server/models/plugins.d.ts.map +1 -0
- package/lib/src/server/models/plugins.js +32 -0
- package/lib/src/server/models/plugins.js.map +1 -0
- package/lib/src/server/models/{reply-service → reply}/index.d.ts +3 -3
- package/lib/src/server/models/reply/index.d.ts.map +1 -0
- package/lib/src/server/models/{reply-service → reply}/index.js +4 -4
- package/lib/src/server/models/reply/index.js.map +1 -0
- package/lib/src/server/models/reply/types.d.ts.map +1 -0
- package/lib/src/server/models/reply/types.js.map +1 -0
- package/lib/src/server/models/request-context/http.d.ts +17 -4
- package/lib/src/server/models/request-context/http.d.ts.map +1 -1
- package/lib/src/server/models/request-context/http.js +23 -16
- package/lib/src/server/models/request-context/http.js.map +1 -1
- package/lib/src/server/models/request-context/model.d.ts +7 -2
- package/lib/src/server/models/request-context/model.d.ts.map +1 -1
- package/lib/src/server/models/request-context/model.js +5 -0
- package/lib/src/server/models/request-context/model.js.map +1 -1
- package/lib/src/server/models/request-context/utils.d.ts +4 -1
- package/lib/src/server/models/request-context/utils.d.ts.map +1 -1
- package/lib/src/server/models/request-context/utils.js +2 -2
- package/lib/src/server/models/request-context/utils.js.map +1 -1
- package/lib/src/server/models/request-context/ws.d.ts +4 -3
- package/lib/src/server/models/request-context/ws.d.ts.map +1 -1
- package/lib/src/server/models/request-context/ws.js +2 -2
- package/lib/src/server/models/request-context/ws.js.map +1 -1
- package/lib/src/server/models/server-context.d.ts +2 -9
- package/lib/src/server/models/server-context.d.ts.map +1 -1
- package/lib/src/server/models/server-context.js +2 -5
- package/lib/src/server/models/server-context.js.map +1 -1
- package/lib/src/server/router.d.ts +1 -0
- package/lib/src/server/router.d.ts.map +1 -1
- package/lib/src/server/router.js.map +1 -1
- package/lib/src/types/common.d.ts +73 -0
- package/lib/src/types/common.d.ts.map +1 -0
- package/lib/{types/common.global.js → src/types/common.js} +1 -1
- package/lib/src/types/common.js.map +1 -0
- package/lib/src/{types.d.ts → types/index.d.ts} +2 -1
- package/lib/src/types/index.d.ts.map +1 -0
- package/lib/{types/lib.js → src/types/index.js} +2 -4
- package/lib/src/types/index.js.map +1 -0
- package/lib/src/utils/common.d.ts +1 -0
- package/lib/src/utils/common.d.ts.map +1 -1
- package/lib/src/utils/common.js.map +1 -1
- package/lib/src/utils/validation.d.ts +1 -0
- package/lib/src/utils/validation.d.ts.map +1 -1
- package/lib/src/utils/validation.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
- package/public/index.html +13 -7
- package/public/scripts/main.js +1233 -533
- package/public/styles/main.css +199 -121
- package/lib/src/process.d.ts +0 -2
- package/lib/src/process.d.ts.map +0 -1
- package/lib/src/process.js +0 -7
- package/lib/src/process.js.map +0 -1
- package/lib/src/server/middlewares/internal-route.middleware.d.ts.map +0 -1
- package/lib/src/server/middlewares/internal-route.middleware.js.map +0 -1
- package/lib/src/server/models/reply-service/index.d.ts.map +0 -1
- package/lib/src/server/models/reply-service/index.js.map +0 -1
- package/lib/src/server/models/reply-service/types.d.ts.map +0 -1
- package/lib/src/server/models/reply-service/types.js.map +0 -1
- package/lib/src/server/proxy.d.ts +0 -9
- package/lib/src/server/proxy.d.ts.map +0 -1
- package/lib/src/server/proxy.js +0 -16
- package/lib/src/server/proxy.js.map +0 -1
- package/lib/src/types.d.ts.map +0 -1
- package/lib/task-processor.d.ts +0 -2
- package/lib/task-processor.d.ts.map +0 -1
- package/lib/task-processor.js +0 -75
- package/lib/task-processor.js.map +0 -1
- package/lib/test/index.d.ts +0 -2
- package/lib/test/index.d.ts.map +0 -1
- package/lib/test/index.js +0 -160
- package/lib/test/index.js.map +0 -1
- package/lib/types/common.global.d.ts +0 -76
- package/lib/types/common.global.d.ts.map +0 -1
- package/lib/types/common.global.js.map +0 -1
- package/lib/types/lib.d.ts +0 -4
- package/lib/types/lib.d.ts.map +0 -1
- package/lib/types/lib.js.map +0 -1
- package/types/common.global.ts +0 -131
- package/types/lib.ts +0 -3
- /package/lib/src/{server/models/reply-service → logger}/types.js +0 -0
- /package/lib/src/server/models/{reply-service → reply}/types.d.ts +0 -0
- /package/lib/src/{types.js → server/models/reply/types.js} +0 -0
package/lib/test/index.js
DELETED
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const index_1 = require("../src/index");
|
|
4
|
-
const host = '127.0.0.1';
|
|
5
|
-
const port = 13000;
|
|
6
|
-
(async () => {
|
|
7
|
-
const server = await index_1.MockServer.start({ host, port });
|
|
8
|
-
const client = await index_1.RemoteClient.connect({ host, port });
|
|
9
|
-
await client.deleteExpectations();
|
|
10
|
-
await client.createExpectation(({ $ }) => ({
|
|
11
|
-
schema: {
|
|
12
|
-
request: $.and([
|
|
13
|
-
$.has('method', { $value: 'GET' }),
|
|
14
|
-
$.has('path', { $match: '/generat*on' }),
|
|
15
|
-
$.has('incoming.query', '$path', 'foo', { $valueAnyOf: ['a', 'b', 'c'] }),
|
|
16
|
-
$.exec(({ context }) => context.incoming.headers['content-type'] === 'application/json'),
|
|
17
|
-
]),
|
|
18
|
-
response: $.and([
|
|
19
|
-
$.set('outgoing.data', { $value: {} }),
|
|
20
|
-
$.switch('incoming.query', '$path', 'foo', {
|
|
21
|
-
$cases: {
|
|
22
|
-
'a': $.and([
|
|
23
|
-
$.set('outgoing.status', { $value: 201 }),
|
|
24
|
-
$.set('outgoing.data', '$path', 'bar.baz', { $value: 'a' }),
|
|
25
|
-
]),
|
|
26
|
-
'b': $.merge('outgoing.data', '$path', 'bar', { $value: { baz: 'b' } }),
|
|
27
|
-
},
|
|
28
|
-
$default: $.and([
|
|
29
|
-
$.set('outgoing.status', { $value: 400 }),
|
|
30
|
-
$.set('outgoing.data', '$path', 'bar.baz', { $value: 'c' }),
|
|
31
|
-
]),
|
|
32
|
-
}),
|
|
33
|
-
$.exec(({ context }) => {
|
|
34
|
-
context.outgoing.headers['x-mock-entity'] = String(Date.now());
|
|
35
|
-
switch (context.incoming.query.foo) {
|
|
36
|
-
case 'a': return context.outgoing.data.foo = 100;
|
|
37
|
-
case 'b': return context.outgoing.data.foo = 200;
|
|
38
|
-
case 'c': return context.outgoing.data.foo = 300;
|
|
39
|
-
}
|
|
40
|
-
}),
|
|
41
|
-
]),
|
|
42
|
-
},
|
|
43
|
-
}));
|
|
44
|
-
await server.client.createExpectation(({ $ }) => ({
|
|
45
|
-
schema: {
|
|
46
|
-
request: $.and([
|
|
47
|
-
$.has('path', { $matchAnyOf: ['/gen*ration'] }),
|
|
48
|
-
$.exec(({ context }) => context.incoming.headers['content-type'] === 'application/xml'),
|
|
49
|
-
]),
|
|
50
|
-
response: $.and([
|
|
51
|
-
$.set('outgoing.data', { $value: '<tag type="default"></tag>' }),
|
|
52
|
-
$.set('outgoing.headers', '$path', 'content-type', { $value: 'application/xml' }),
|
|
53
|
-
$.exec(({ context }) => {
|
|
54
|
-
console.log(context.incoming.body);
|
|
55
|
-
return true;
|
|
56
|
-
}),
|
|
57
|
-
$.if({
|
|
58
|
-
$condition: $.not($.has('incoming.query', '$path', 'foo', { $value: 'a' })),
|
|
59
|
-
$then: $.and([
|
|
60
|
-
$.set('outgoing.status', { $value: 201 }),
|
|
61
|
-
$.set('outgoing.data', { $value: '<tag type="custom"></tag>' }),
|
|
62
|
-
]),
|
|
63
|
-
}),
|
|
64
|
-
]),
|
|
65
|
-
},
|
|
66
|
-
}));
|
|
67
|
-
await client.createExpectation(({ $ }) => ({
|
|
68
|
-
schema: {
|
|
69
|
-
request: $.and([
|
|
70
|
-
$.has('incoming.headers', '$path', 'x-use-mock', { $value: 'true' }),
|
|
71
|
-
$.has('path', { $regExp: /^\/forward\/*./ }),
|
|
72
|
-
$.exec(({ context }) => {
|
|
73
|
-
context.incoming.path = context.incoming.path.replace('/forward', '');
|
|
74
|
-
return true;
|
|
75
|
-
}),
|
|
76
|
-
]),
|
|
77
|
-
forward: {
|
|
78
|
-
baseUrl: 'http://localhost:17188/_papi/v1/maintenance',
|
|
79
|
-
timeout: 2000,
|
|
80
|
-
},
|
|
81
|
-
},
|
|
82
|
-
}));
|
|
83
|
-
await client.createExpectation(({ $ }) => ({
|
|
84
|
-
schema: {
|
|
85
|
-
request: $.and([
|
|
86
|
-
$.has('method', { $value: 'POST' }),
|
|
87
|
-
$.has('path', { $valueAnyOf: ['/deep-matching'] }),
|
|
88
|
-
$.or([
|
|
89
|
-
$.has('incoming.body', { $match: { foo: { bar: {} } } }),
|
|
90
|
-
$.has('incoming.body', { $match: { foo: { baz: 1 } } }),
|
|
91
|
-
]),
|
|
92
|
-
]),
|
|
93
|
-
response: $.and([
|
|
94
|
-
$.set('outgoing.status', { $value: 201 }),
|
|
95
|
-
$.set('outgoing.data', { $value: ['How match is the fish?'] }),
|
|
96
|
-
$.if({
|
|
97
|
-
$condition: $.has('incoming.body', '$path', 'foo.bar.baz', { $value: 'a' }),
|
|
98
|
-
$then: $.set('outgoing.data', { $value: ['Matched'] }),
|
|
99
|
-
}),
|
|
100
|
-
]),
|
|
101
|
-
},
|
|
102
|
-
}));
|
|
103
|
-
await server.client.createExpectation(({ $ }) => ({
|
|
104
|
-
schema: {
|
|
105
|
-
request: $.and([
|
|
106
|
-
$.has('path', { $value: '/forward/papi' }),
|
|
107
|
-
$.exec(({ context }) => context.incoming.headers['content-type'] === 'application/json'),
|
|
108
|
-
$.switch('incoming.query', '$path', 'foo', {
|
|
109
|
-
$cases: {
|
|
110
|
-
a: $.and([
|
|
111
|
-
$.set('delay', { $value: 2000 }),
|
|
112
|
-
$.set('error', { $value: 'ECONNABORTED' }),
|
|
113
|
-
]),
|
|
114
|
-
},
|
|
115
|
-
$default: $.exec(() => true),
|
|
116
|
-
}),
|
|
117
|
-
]),
|
|
118
|
-
response: $.and([
|
|
119
|
-
$.if({
|
|
120
|
-
$condition: $.has('incoming.query', '$path', 'foo', { $value: 'a' }),
|
|
121
|
-
$then: $.merge('outgoing.data', '$path', 'data', { $value: { options: { has_mocked_by: 'John Cena' } } }),
|
|
122
|
-
}),
|
|
123
|
-
$.if({
|
|
124
|
-
$condition: $.has('incoming.query', '$path', 'foo', { $value: 'b' }),
|
|
125
|
-
$then: $.and([
|
|
126
|
-
$.remove('outgoing.data', {}),
|
|
127
|
-
$.set('outgoing.dataRaw', { $value: '["What the f*ck"]' }),
|
|
128
|
-
]),
|
|
129
|
-
}),
|
|
130
|
-
]),
|
|
131
|
-
forward: {
|
|
132
|
-
url: 'http://localhost:17188/_papi/v1/maintenance/stats',
|
|
133
|
-
},
|
|
134
|
-
},
|
|
135
|
-
}));
|
|
136
|
-
await client.createExpectation(({ $ }) => ({
|
|
137
|
-
schema: {
|
|
138
|
-
request: $.and([
|
|
139
|
-
$.has('path', { $value: '/faker' }),
|
|
140
|
-
$.set('state', '$path', 'foo', { $value: 500 }),
|
|
141
|
-
$.set('seed', { $exec: (seed, { context }) => seed ?? context.state.foo }),
|
|
142
|
-
$.exec(({ context }) => {
|
|
143
|
-
console.log(context);
|
|
144
|
-
})
|
|
145
|
-
]),
|
|
146
|
-
response: $.and([
|
|
147
|
-
$.set('outgoing.data', {
|
|
148
|
-
$exec: (payload, { faker, d, _ }) => ({
|
|
149
|
-
id: faker.number.int({ max: 1000, min: 500 }),
|
|
150
|
-
first_name: faker.person.firstName('male'),
|
|
151
|
-
last_name: faker.person.lastName('male'),
|
|
152
|
-
uids: [faker.string.uuid(), faker.string.uuid()],
|
|
153
|
-
ids: [faker.number.int({ max: 1000, min: 500 }), faker.number.int({ max: 1000, min: 500 })],
|
|
154
|
-
}),
|
|
155
|
-
}),
|
|
156
|
-
]),
|
|
157
|
-
},
|
|
158
|
-
}));
|
|
159
|
-
})();
|
|
160
|
-
//# sourceMappingURL=index.js.map
|
package/lib/test/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../test/index.ts"],"names":[],"mappings":";;AAAA,wCAAwD;AAExD,MAAM,IAAI,GAAG,WAAW,CAAC;AACzB,MAAM,IAAI,GAAG,KAAK,CAAC;AAEnB,CAAC,KAAK,IAAI,EAAE;IACV,MAAM,MAAM,GAAG,MAAM,kBAAU,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,MAAM,oBAAY,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAE1D,MAAM,MAAM,CAAC,kBAAkB,EAAE,CAAC;IAElC,MAAM,MAAM,CAAC,iBAAiB,CAgB3B,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACb,MAAM,EAAE;YACN,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC;gBACb,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;gBAClC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;gBACxC,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;gBACzE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,kBAAkB,CAAC;aACzF,CAAC;YAEF,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC;gBACd,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;gBACtC,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE;oBACzC,MAAM,EAAE;wBACN,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC;4BACT,CAAC,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;4BACzC,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;yBAC5D,CAAC;wBAEF,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;qBACxE;oBAED,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC;wBACd,CAAC,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;wBACzC,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;qBAC5D,CAAC;iBACH,CAAC;gBAEF,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;oBACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oBAE/D,QAAO,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;wBAClC,KAAK,GAAG,CAAC,CAAC,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;wBACjD,KAAK,GAAG,CAAC,CAAC,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;wBACjD,KAAK,GAAG,CAAC,CAAC,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;oBACnD,CAAC;gBACH,CAAC,CAAC;aACH,CAAC;SACH;KACF,CAAC,CAAC,CAAC;IAEJ,MAAM,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAWlC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACb,MAAM,EAAE;YACN,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC;gBACb,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC/C,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,iBAAiB,CAAC;aACxF,CAAC;YAEF,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC;gBACd,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,4BAA4B,EAAE,CAAC;gBAChE,CAAC,CAAC,GAAG,CAAC,kBAAkB,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;gBAEjF,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;oBACrB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACnC,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC;gBAEF,CAAC,CAAC,EAAE,CAAC;oBACH,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;oBAE3E,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC;wBACX,CAAC,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;wBACzC,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,2BAA2B,EAAE,CAAC;qBAChE,CAAC;iBACH,CAAC;aACH,CAAC;SACH;KACF,CAAC,CAAC,CAAC;IAEJ,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACzC,MAAM,EAAE;YACN,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC;gBACb,CAAC,CAAC,GAAG,CAAC,kBAAkB,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;gBACpE,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;gBAE5C,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;oBACrB,OAAO,CAAC,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;oBACtE,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC;aACH,CAAC;YAEF,OAAO,EAAE;gBACP,OAAO,EAAE,6CAA6C;gBACtD,OAAO,EAAE,IAAI;aACd;SACF;KACF,CAAC,CAAC,CAAC;IAEJ,MAAM,MAAM,CAAC,iBAAiB,CAW3B,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACb,MAAM,EAAE;YACN,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC;gBACb,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;gBACnC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBAElD,CAAC,CAAC,EAAE,CAAC;oBACH,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;oBACxD,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;iBACxD,CAAC;aACH,CAAC;YAEF,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC;gBACd,CAAC,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;gBACzC,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,CAAC,wBAAwB,CAAC,EAAE,CAAC;gBAE9D,CAAC,CAAC,EAAE,CAAC;oBACH,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;oBAC3E,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC;iBACvD,CAAC;aACH,CAAC;SACH;KACF,CAAC,CAAC,CAAC;IAEJ,MAAM,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAoBlC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACb,MAAM,EAAE;YACN,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC;gBACb,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;gBAC1C,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,kBAAkB,CAAC;gBAExF,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE;oBACzC,MAAM,EAAE;wBACN,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC;4BACP,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;4BAChC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;yBAC3C,CAAC;qBACH;oBAED,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;iBAC7B,CAAC;aACH,CAAC;YAEF,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC;gBACd,CAAC,CAAC,EAAE,CAAC;oBACH,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;oBACpE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;iBAC1G,CAAC;gBAEF,CAAC,CAAC,EAAE,CAAC;oBACH,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;oBACpE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC;wBACX,CAAC,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,CAAC;wBAC7B,CAAC,CAAC,GAAG,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;qBAC3D,CAAC;iBACH,CAAC;aACH,CAAC;YAEF,OAAO,EAAE;gBACP,GAAG,EAAE,mDAAmD;aACzD;SACF;KACF,CAAC,CAAC,CAAC;IAEJ,MAAM,MAAM,CAAC,iBAAiB,CAK3B,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACb,MAAM,EAAE;YACN,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC;gBACb,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;gBACnC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;gBAC/C,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;gBAE1E,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;oBACrB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC,CAAC;aACH,CAAC;YAEF,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC;gBACd,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE;oBACrB,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;wBACpC,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;wBAC7C,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;wBAC1C,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;wBAExC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;wBAChD,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;qBAC5F,CAAC;iBACH,CAAC;aACH,CAAC;SACH;KACF,CAAC,CAAC,CAAA;AACL,CAAC,CAAC,EAAE,CAAC"}
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
declare global {
|
|
2
|
-
type TValue = object | string | number | boolean | null | undefined;
|
|
3
|
-
type TFunction<T = unknown, U extends unknown[] = unknown[]> = (...args: U) => T;
|
|
4
|
-
type Constructable<T, U extends any[] = any[]> = new (...args: U) => T;
|
|
5
|
-
type KeyOfUnion<T> = T extends T ? keyof T : never;
|
|
6
|
-
type SetNonNullableKeys<T extends object, U extends keyof T = keyof T> = T & {
|
|
7
|
-
[K in U]-?: NonNullable<T[K]>;
|
|
8
|
-
};
|
|
9
|
-
type SetRequiredKeys<T extends object, U extends keyof T = keyof T> = T & {
|
|
10
|
-
[K in U]-?: T[K];
|
|
11
|
-
};
|
|
12
|
-
type SetPartialKeys<T extends object, U extends keyof T = keyof T> = Omit<T, U> & {
|
|
13
|
-
[K in U]?: T[K];
|
|
14
|
-
};
|
|
15
|
-
type OmitNeverKeys<T extends object> = Pick<T, ExtractKeysWithoutType<T, never>>;
|
|
16
|
-
type OmitPartial<T extends object> = {
|
|
17
|
-
[K in keyof T as (T[K] extends void | undefined ? never : K)]-?: T[K];
|
|
18
|
-
};
|
|
19
|
-
type OmitRequired<T extends object> = {
|
|
20
|
-
[K in keyof T as (T[K] extends void | undefined ? K : never)]-?: T[K];
|
|
21
|
-
};
|
|
22
|
-
type PickWithType<T extends object, U> = Pick<T, ExtractKeysWithType<T, U>>;
|
|
23
|
-
type PickRequiredByKeys<T extends object, U extends keyof T = keyof T> = T & {
|
|
24
|
-
[K in U]-?: Pick<T, K>;
|
|
25
|
-
};
|
|
26
|
-
type CheckKeyIsRequired<T extends object, K extends keyof T> = keyof T extends never ? false : ExtractRequiredKeys<Pick<T, K>> extends never ? false : true;
|
|
27
|
-
type CheckKeyIsPartial<T extends object, K extends keyof T> = keyof T extends never ? false : ExtractPartialKeys<Pick<T, K>> extends never ? false : true;
|
|
28
|
-
type ConvertToInstanceType<T> = T extends Constructable<unknown> ? InstanceType<T> : T;
|
|
29
|
-
type ConvertTupleToUnion<T extends readonly unknown[]> = T[number];
|
|
30
|
-
type ConvertUndefinedKeysToOptionals<T extends object> = ExtractKeysWithType<T, undefined> extends never ? T : SetPartialKeys<T, ExtractKeysWithType<T, undefined>>;
|
|
31
|
-
type ConvertUnionToTuple<T, U = T extends never ? never : (arg: T) => T, Q = (U extends never ? never : (arg: U) => never) extends (arg: infer I) => void ? I : never> = Q extends (arg: never) => infer R ? [...ConvertUnionToTuple<Exclude<T, R>>, R] : [];
|
|
32
|
-
type ExtractPartialKeys<T extends object> = keyof OmitRequired<T>;
|
|
33
|
-
type ExtractRequiredKeys<T extends object> = keyof OmitPartial<T>;
|
|
34
|
-
type ExtractKeysWithType<T extends object, U, Q extends keyof T = keyof T> = {
|
|
35
|
-
[K in Q]-?: Extract<T[K], U> extends never ? never : K;
|
|
36
|
-
}[Q];
|
|
37
|
-
type ExtractKeysWithoutType<T extends object, U, Q extends keyof T = keyof T> = {
|
|
38
|
-
[K in Q]-?: T[K] extends U ? never : K;
|
|
39
|
-
}[Q];
|
|
40
|
-
/**
|
|
41
|
-
* Extracts parameters and return type of class method to tuple `[T, U[]]`
|
|
42
|
-
* where `T` is return type and `U[]` is parameters
|
|
43
|
-
*
|
|
44
|
-
* @example
|
|
45
|
-
* ```ts
|
|
46
|
-
* class Test {
|
|
47
|
-
* static build(type: string): Promise<object> {...}
|
|
48
|
-
* public hasType(type: string): boolean {...}
|
|
49
|
-
* }
|
|
50
|
-
*
|
|
51
|
-
* type TTestBuildMethodContext = ExtractClassMethodContext<typeof Test, 'build'>;
|
|
52
|
-
* // => [Promise<object>, [string]]
|
|
53
|
-
*
|
|
54
|
-
* type TTestHasTypeMethodContext = ExtractClassMethodContext<typeof Test, 'hasType'>;
|
|
55
|
-
* // => [boolean, [string]]
|
|
56
|
-
* ```
|
|
57
|
-
*/
|
|
58
|
-
type ExtractClassMethodContext<T extends Constructable<object>, K extends keyof T | keyof InstanceType<T>> = (K extends keyof T ? T[K] : K extends keyof InstanceType<T> ? InstanceType<T>[K] : never) extends TFunction<infer R0, infer R1> ? [R0, R1] : never;
|
|
59
|
-
type MergeObjectsCouple<T1 extends object, T2 extends object> = keyof T2 extends never ? T1 : Omit<T1, keyof T2> & T2;
|
|
60
|
-
type MergeClassesCouple<T1 extends Constructable<object>, T2 extends Constructable<object>> = keyof InstanceType<T2> extends never ? keyof T2 extends never ? T1 : Omit<T1, keyof T2> & T2 : Omit<T1, keyof T2> & Constructable<Omit<InstanceType<T1>, keyof InstanceType<T2>>> & T2;
|
|
61
|
-
type MergeClassesTuple<T extends readonly Constructable<object>[]> = T extends readonly [infer R0, ...infer RN] ? R0 extends Constructable<object> ? RN extends readonly Constructable<object>[] ? MergeClassesCouple<R0, MergeClassesTuple<RN>> : R0 : Constructable<{}> : Constructable<{}>;
|
|
62
|
-
type PartialDeep<T extends object> = {
|
|
63
|
-
[K in keyof T]?: Extract<T[K], object> extends never ? T[K] : PartialDeep<Extract<T[K], object>> | Exclude<T[K], object>;
|
|
64
|
-
};
|
|
65
|
-
type FlattenArrays<T extends unknown[][]> = [
|
|
66
|
-
...(T extends Array<infer R> ? R extends unknown[][] ? FlattenArrays<R> : R : T)
|
|
67
|
-
];
|
|
68
|
-
type ConvertPathToObject<TPath extends string, TValue> = TPath extends `${infer R0}.${infer R1}` ? {
|
|
69
|
-
[K in R0]: ConvertPathToObject<R1, TValue>;
|
|
70
|
-
} : TPath extends string ? {
|
|
71
|
-
[K in TPath]: TValue;
|
|
72
|
-
} : never;
|
|
73
|
-
type ExtractObjectValueByPath<TObject extends object, TPath extends string> = TPath extends `${infer R0}.${infer R1}` ? R0 extends keyof TObject ? Exclude<TObject[R0], undefined> extends object ? ExtractObjectValueByPath<Exclude<TObject[R0], undefined>, R1> : TObject[R0] : never : TPath extends keyof TObject ? TObject[TPath] : never;
|
|
74
|
-
}
|
|
75
|
-
export {};
|
|
76
|
-
//# sourceMappingURL=common.global.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"common.global.d.ts","sourceRoot":"","sources":["../../types/common.global.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"common.global.js","sourceRoot":"","sources":["../../types/common.global.ts"],"names":[],"mappings":""}
|
package/lib/types/lib.d.ts
DELETED
package/lib/types/lib.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../types/lib.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC"}
|
package/lib/types/lib.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../../types/lib.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,+CAA6B;AAC7B,sDAAoC"}
|
package/types/common.global.ts
DELETED
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
declare global {
|
|
2
|
-
type TValue = object | string | number | boolean | null | undefined;
|
|
3
|
-
|
|
4
|
-
type TFunction<T = unknown, U extends unknown[] = unknown[]> = (...args: U) => T;
|
|
5
|
-
type Constructable<T, U extends any[] = any[]> = new (...args: U) => T;
|
|
6
|
-
type KeyOfUnion<T> = T extends T ? keyof T: never;
|
|
7
|
-
|
|
8
|
-
type SetNonNullableKeys<T extends object, U extends keyof T = keyof T> = T & { [K in U]-?: NonNullable<T[K]> };
|
|
9
|
-
type SetRequiredKeys<T extends object, U extends keyof T = keyof T> = T & { [K in U]-?: T[K] };
|
|
10
|
-
type SetPartialKeys<T extends object, U extends keyof T = keyof T> = Omit<T, U> & { [K in U]?: T[K] };
|
|
11
|
-
|
|
12
|
-
type OmitNeverKeys<T extends object> = Pick<T, ExtractKeysWithoutType<T, never>>;
|
|
13
|
-
type OmitPartial<T extends object> = { [K in keyof T as (T[K] extends void | undefined ? never : K)]-?: T[K] };
|
|
14
|
-
type OmitRequired<T extends object> = { [K in keyof T as (T[K] extends void | undefined ? K : never)]-?: T[K] };
|
|
15
|
-
|
|
16
|
-
type PickWithType<T extends object, U> = Pick<T, ExtractKeysWithType<T, U>>;
|
|
17
|
-
type PickRequiredByKeys<T extends object, U extends keyof T = keyof T> = T & { [K in U]-?: Pick<T, K> };
|
|
18
|
-
|
|
19
|
-
type CheckKeyIsRequired<T extends object, K extends keyof T> =
|
|
20
|
-
keyof T extends never
|
|
21
|
-
? false
|
|
22
|
-
: ExtractRequiredKeys<Pick<T, K>> extends never
|
|
23
|
-
? false
|
|
24
|
-
: true;
|
|
25
|
-
|
|
26
|
-
type CheckKeyIsPartial<T extends object, K extends keyof T> =
|
|
27
|
-
keyof T extends never
|
|
28
|
-
? false
|
|
29
|
-
: ExtractPartialKeys<Pick<T, K>> extends never
|
|
30
|
-
? false
|
|
31
|
-
: true;
|
|
32
|
-
|
|
33
|
-
type ConvertToInstanceType<T> = T extends Constructable<unknown> ? InstanceType<T> : T;
|
|
34
|
-
type ConvertTupleToUnion<T extends readonly unknown[]> = T[number];
|
|
35
|
-
|
|
36
|
-
type ConvertUndefinedKeysToOptionals<T extends object> =
|
|
37
|
-
ExtractKeysWithType<T, undefined> extends never ? T : SetPartialKeys<T, ExtractKeysWithType<T, undefined>>;
|
|
38
|
-
|
|
39
|
-
type ConvertUnionToTuple<
|
|
40
|
-
T,
|
|
41
|
-
U = T extends never ? never : (arg: T) => T,
|
|
42
|
-
Q = (U extends never ? never : (arg: U) => never) extends (arg: infer I) => void ? I : never
|
|
43
|
-
> = Q extends (arg: never) => infer R ? [...ConvertUnionToTuple<Exclude<T, R>>, R] : [];
|
|
44
|
-
|
|
45
|
-
type ExtractPartialKeys<T extends object> = keyof OmitRequired<T>;
|
|
46
|
-
type ExtractRequiredKeys<T extends object> = keyof OmitPartial<T>;
|
|
47
|
-
|
|
48
|
-
type ExtractKeysWithType<T extends object, U, Q extends keyof T = keyof T> = {
|
|
49
|
-
[K in Q]-?: Extract<T[K], U> extends never ? never : K;
|
|
50
|
-
}[Q];
|
|
51
|
-
|
|
52
|
-
type ExtractKeysWithoutType<T extends object, U, Q extends keyof T = keyof T> = {
|
|
53
|
-
[K in Q]-?: T[K] extends U ? never : K;
|
|
54
|
-
}[Q];
|
|
55
|
-
|
|
56
|
-
/**
|
|
57
|
-
* Extracts parameters and return type of class method to tuple `[T, U[]]`
|
|
58
|
-
* where `T` is return type and `U[]` is parameters
|
|
59
|
-
*
|
|
60
|
-
* @example
|
|
61
|
-
* ```ts
|
|
62
|
-
* class Test {
|
|
63
|
-
* static build(type: string): Promise<object> {...}
|
|
64
|
-
* public hasType(type: string): boolean {...}
|
|
65
|
-
* }
|
|
66
|
-
*
|
|
67
|
-
* type TTestBuildMethodContext = ExtractClassMethodContext<typeof Test, 'build'>;
|
|
68
|
-
* // => [Promise<object>, [string]]
|
|
69
|
-
*
|
|
70
|
-
* type TTestHasTypeMethodContext = ExtractClassMethodContext<typeof Test, 'hasType'>;
|
|
71
|
-
* // => [boolean, [string]]
|
|
72
|
-
* ```
|
|
73
|
-
*/
|
|
74
|
-
type ExtractClassMethodContext<T extends Constructable<object>, K extends keyof T | keyof InstanceType<T>> = (
|
|
75
|
-
K extends keyof T ? T[K] : K extends keyof InstanceType<T> ? InstanceType<T>[K] : never
|
|
76
|
-
) extends TFunction<infer R0, infer R1>
|
|
77
|
-
? [R0, R1]
|
|
78
|
-
: never;
|
|
79
|
-
|
|
80
|
-
type MergeObjectsCouple<T1 extends object, T2 extends object> = keyof T2 extends never
|
|
81
|
-
? T1
|
|
82
|
-
: Omit<T1, keyof T2> & T2;
|
|
83
|
-
|
|
84
|
-
type MergeClassesCouple<
|
|
85
|
-
T1 extends Constructable<object>,
|
|
86
|
-
T2 extends Constructable<object>,
|
|
87
|
-
> = keyof InstanceType<T2> extends never
|
|
88
|
-
? keyof T2 extends never
|
|
89
|
-
? T1
|
|
90
|
-
: Omit<T1, keyof T2> & T2
|
|
91
|
-
: Omit<T1, keyof T2> & Constructable<Omit<InstanceType<T1>, keyof InstanceType<T2>>> & T2;
|
|
92
|
-
|
|
93
|
-
type MergeClassesTuple<
|
|
94
|
-
T extends readonly Constructable<object>[],
|
|
95
|
-
> = T extends readonly [infer R0, ...infer RN]
|
|
96
|
-
? R0 extends Constructable<object>
|
|
97
|
-
? RN extends readonly Constructable<object>[]
|
|
98
|
-
? MergeClassesCouple<R0, MergeClassesTuple<RN>>
|
|
99
|
-
: R0
|
|
100
|
-
: Constructable<{}>
|
|
101
|
-
: Constructable<{}>;
|
|
102
|
-
|
|
103
|
-
type PartialDeep<T extends object> = {
|
|
104
|
-
[K in keyof T]?: Extract<T[K], object> extends never
|
|
105
|
-
? T[K]
|
|
106
|
-
: PartialDeep<Extract<T[K], object>> | Exclude<T[K], object>;
|
|
107
|
-
};
|
|
108
|
-
|
|
109
|
-
type FlattenArrays<T extends unknown[][]> = [
|
|
110
|
-
...(T extends Array<infer R> ? R extends unknown[][] ? FlattenArrays<R> : R : T)
|
|
111
|
-
];
|
|
112
|
-
|
|
113
|
-
type ConvertPathToObject<TPath extends string, TValue> = TPath extends `${infer R0}.${infer R1}`
|
|
114
|
-
? { [K in R0]: ConvertPathToObject<R1, TValue> }
|
|
115
|
-
: TPath extends string
|
|
116
|
-
? { [K in TPath]: TValue }
|
|
117
|
-
: never;
|
|
118
|
-
|
|
119
|
-
type ExtractObjectValueByPath<TObject extends object, TPath extends string> =
|
|
120
|
-
TPath extends `${infer R0}.${infer R1}`
|
|
121
|
-
? R0 extends keyof TObject
|
|
122
|
-
? Exclude<TObject[R0], undefined> extends object
|
|
123
|
-
? ExtractObjectValueByPath<Exclude<TObject[R0], undefined>, R1>
|
|
124
|
-
: TObject[R0]
|
|
125
|
-
: never
|
|
126
|
-
: TPath extends keyof TObject
|
|
127
|
-
? TObject[TPath]
|
|
128
|
-
: never;
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
export {};
|
package/types/lib.ts
DELETED
|
File without changes
|
|
File without changes
|
|
File without changes
|