@n1k1t/mock-server 0.1.63 → 0.1.64
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 +1 -1
- package/lib/src/server/models/router.d.ts +1 -0
- package/lib/src/server/models/router.d.ts.map +1 -1
- package/lib/src/server/models/router.js +7 -4
- package/lib/src/server/models/router.js.map +1 -1
- package/lib/src/server/transports/http.transport/index.d.ts +1 -1
- package/lib/src/server/transports/http.transport/index.d.ts.map +1 -1
- package/lib/src/server/transports/http.transport/index.js +8 -3
- package/lib/src/server/transports/http.transport/index.js.map +1 -1
- package/package.json +1 -1
package/lib/package.json
CHANGED
|
@@ -12,6 +12,7 @@ export interface IRouteMatchResult<K extends string, T extends Transport = Trans
|
|
|
12
12
|
export declare class Router<TContext extends IServerContext = IServerContext> extends Map<string, IRouteContext<TContext['transport']>> {
|
|
13
13
|
private server;
|
|
14
14
|
constructor(server: MockServer<any, any>);
|
|
15
|
+
default<T extends Transport>(transport: TContext['transport']): IRouteMatchResult<TContext['transport'], T>;
|
|
15
16
|
register(pattern: string, configuration: {
|
|
16
17
|
provider: Provider<any>;
|
|
17
18
|
transports?: TContext['transport'][] | Partial<Record<TContext['transport'], Transport>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../../src/server/models/router.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,WAAW,aAAa,CAAC,cAAc,SAAS,MAAM;IAC1D,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC;IACvD,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB,CAChC,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,SAAS,GAAG,SAAS,CAC/B,SAAQ,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC;IAC1C,SAAS,EAAE,CAAC,CAAC;CACd;AAED,qBAAa,MAAM,CAAC,QAAQ,SAAS,cAAc,GAAG,cAAc,CAAE,SAAQ,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IACjH,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC;IAIzC,QAAQ,CACb,OAAO,EAAE,MAAM,EACf,aAAa,EAAE;QACb,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QACxB,UAAU,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;KAC1F,GACA,IAAI;IAyBC,KAAK,CAAC,CAAC,SAAS,SAAS,EAC/B,SAAS,EAAE,QAAQ,CAAC,WAAW,CAAC,EAChC,IAAI,EAAE,MAAM,GACX,SAAS,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../../src/server/models/router.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,WAAW,aAAa,CAAC,cAAc,SAAS,MAAM;IAC1D,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC;IACvD,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB,CAChC,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,SAAS,GAAG,SAAS,CAC/B,SAAQ,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC;IAC1C,SAAS,EAAE,CAAC,CAAC;CACd;AAED,qBAAa,MAAM,CAAC,QAAQ,SAAS,cAAc,GAAG,cAAc,CAAE,SAAQ,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IACjH,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC;IAIzC,OAAO,CAAC,CAAC,SAAS,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAO3G,QAAQ,CACb,OAAO,EAAE,MAAM,EACf,aAAa,EAAE;QACb,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QACxB,UAAU,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;KAC1F,GACA,IAAI;IAyBC,KAAK,CAAC,CAAC,SAAS,SAAS,EAC/B,SAAS,EAAE,QAAQ,CAAC,WAAW,CAAC,EAChC,IAAI,EAAE,MAAM,GACX,SAAS,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;IAazD,MAAM,CAAC,KAAK,CAAC,QAAQ,SAAS,cAAc,GAAG,cAAc,EAAE,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;CAG/G"}
|
|
@@ -11,6 +11,12 @@ class Router extends Map {
|
|
|
11
11
|
super();
|
|
12
12
|
this.server = server;
|
|
13
13
|
}
|
|
14
|
+
default(transport) {
|
|
15
|
+
return {
|
|
16
|
+
provider: this.server.providers.default,
|
|
17
|
+
transport: this.server.transports.get(transport),
|
|
18
|
+
};
|
|
19
|
+
}
|
|
14
20
|
register(pattern, configuration) {
|
|
15
21
|
this.server.providers.register(configuration.provider);
|
|
16
22
|
const types = Array.isArray(configuration.transports)
|
|
@@ -34,10 +40,7 @@ class Router extends Map {
|
|
|
34
40
|
};
|
|
35
41
|
}
|
|
36
42
|
}
|
|
37
|
-
yield
|
|
38
|
-
provider: this.server.providers.default,
|
|
39
|
-
transport: this.server.transports.get(transport),
|
|
40
|
-
};
|
|
43
|
+
yield this.default(transport);
|
|
41
44
|
}
|
|
42
45
|
static build(server) {
|
|
43
46
|
return new Router(server);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../../../src/server/models/router.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAkC;AAClC,oDAAuB;AAmBvB,MAAa,MAAyD,SAAQ,GAAiD;IAC7H,YAAoB,MAA4B;QAC9C,KAAK,EAAE,CAAC;QADU,WAAM,GAAN,MAAM,CAAsB;IAEhD,CAAC;IAEM,QAAQ,CACb,OAAe,EACf,aAGC;QAED,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAEvD,MAAM,KAAK,GAA4B,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC;YAC5E,CAAC,CAAC,aAAa,CAAC,UAAU;YAC1B,CAAC,CAAC,aAAa,CAAC,UAAU;gBACxB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC;gBACvC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAEzC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;YACvB,QAAQ,EAAE,aAAa,CAAC,QAAQ;YAEhC,UAAU,EAAE,KAAK,CAAC,MAAM,CACtB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,gBAAC,CAAC,GAAG,CAClB,GAAG,EACH,IAAI,EACJ,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC;gBACrC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;gBAClC,CAAC,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CACzE,EACD,EAAE,CACH;SACF,CAAC,CAAC;IACL,CAAC;IAEM,CAAC,KAAK,CACX,SAAgC,EAChC,IAAY;QAEZ,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9C,IAAI,IAAA,mBAAS,EAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;gBAC7B,MAAM;oBACJ,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,SAAS,EAAK,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC;iBAC1C,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../../../src/server/models/router.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAkC;AAClC,oDAAuB;AAmBvB,MAAa,MAAyD,SAAQ,GAAiD;IAC7H,YAAoB,MAA4B;QAC9C,KAAK,EAAE,CAAC;QADU,WAAM,GAAN,MAAM,CAAsB;IAEhD,CAAC;IAEM,OAAO,CAAsB,SAAgC;QAClE,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO;YACvC,SAAS,EAAK,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC;SACpD,CAAC;IACJ,CAAC;IAEM,QAAQ,CACb,OAAe,EACf,aAGC;QAED,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAEvD,MAAM,KAAK,GAA4B,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC;YAC5E,CAAC,CAAC,aAAa,CAAC,UAAU;YAC1B,CAAC,CAAC,aAAa,CAAC,UAAU;gBACxB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC;gBACvC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAEzC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;YACvB,QAAQ,EAAE,aAAa,CAAC,QAAQ;YAEhC,UAAU,EAAE,KAAK,CAAC,MAAM,CACtB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,gBAAC,CAAC,GAAG,CAClB,GAAG,EACH,IAAI,EACJ,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC;gBACrC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;gBAClC,CAAC,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CACzE,EACD,EAAE,CACH;SACF,CAAC,CAAC;IACL,CAAC;IAEM,CAAC,KAAK,CACX,SAAgC,EAChC,IAAY;QAEZ,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9C,IAAI,IAAA,mBAAS,EAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;gBAC7B,MAAM;oBACJ,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,SAAS,EAAK,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC;iBAC1C,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,KAAK,CAAmD,MAA4B;QACzF,OAAO,IAAI,MAAM,CAAW,MAAM,CAAC,CAAC;IACtC,CAAC;CACF;AA9DD,wBA8DC"}
|
|
@@ -4,7 +4,7 @@ import { HttpRequestContext } from './context';
|
|
|
4
4
|
import { HttpExecutor } from './executor';
|
|
5
5
|
export * from './executor';
|
|
6
6
|
export * from './context';
|
|
7
|
-
export declare const buildHttpListener: <T extends HttpRequestContext["TContext"]>(router: Router<T>) => (request: IncomingMessage, response: ServerResponse) => Promise<ServerResponse<IncomingMessage> | undefined>;
|
|
7
|
+
export declare const buildHttpListener: <T extends HttpRequestContext["TContext"]>(router: Router<T>) => (request: IncomingMessage, response: ServerResponse) => Promise<ServerResponse<IncomingMessage> | null | undefined>;
|
|
8
8
|
export declare class HttpTransport extends Transport<HttpExecutor> {
|
|
9
9
|
executor: HttpExecutor;
|
|
10
10
|
compileContext(provider: Provider<HttpTransport['TContext']>, request: IncomingMessage, response: ServerResponse): Promise<HttpRequestContext>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/server/transports/http.transport/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAI1C,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAI1B,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,kBAAkB,CAAC,UAAU,CAAC,UAAU,MAAM,CAAC,CAAC,CAAC,eAC3E,eAAe,YAAY,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/server/transports/http.transport/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAI1C,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAI1B,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,kBAAkB,CAAC,UAAU,CAAC,UAAU,MAAM,CAAC,CAAC,CAAC,eAC3E,eAAe,YAAY,cAAc,gEAqCxD,CAAA;AAEH,qBAAa,aAAc,SAAQ,SAAS,CAAC,YAAY,CAAC;IACjD,QAAQ,eAAsB;IAE9B,cAAc,CACnB,QAAQ,EAAE,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,EAC7C,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,cAAc;CAI3B"}
|
|
@@ -32,13 +32,13 @@ const buildHttpListener = (router) => async (request, response) => {
|
|
|
32
32
|
return response.destroy();
|
|
33
33
|
}
|
|
34
34
|
if (!context.hasStatuses(['registered', 'handling'])) {
|
|
35
|
-
|
|
35
|
+
return null;
|
|
36
36
|
}
|
|
37
37
|
const expectation = await meta_1.metaStorage
|
|
38
38
|
.wrap(context.meta, () => transport.executor.match(context))
|
|
39
39
|
.catch((error) => logger.error('Got error while expectation matching', error?.stack ?? error));
|
|
40
40
|
if (!context.hasStatuses(['registered', 'handling'])) {
|
|
41
|
-
|
|
41
|
+
return null;
|
|
42
42
|
}
|
|
43
43
|
if (!expectation) {
|
|
44
44
|
continue;
|
|
@@ -46,8 +46,13 @@ const buildHttpListener = (router) => async (request, response) => {
|
|
|
46
46
|
await meta_1.metaStorage
|
|
47
47
|
.wrap(context.meta, () => transport.executor.exec(context.handle(), { expectation }))
|
|
48
48
|
.catch((error) => logger.error('Got error while execution', error?.stack ?? error));
|
|
49
|
-
|
|
49
|
+
return null;
|
|
50
50
|
}
|
|
51
|
+
const { transport, provider } = router.default('http');
|
|
52
|
+
const context = await transport.compileContext(provider, request, response);
|
|
53
|
+
await meta_1.metaStorage
|
|
54
|
+
.wrap(context.meta, () => transport.executor.exec(context.handle()))
|
|
55
|
+
.catch((error) => logger.error('Got error while execution', error?.stack ?? error));
|
|
51
56
|
};
|
|
52
57
|
exports.buildHttpListener = buildHttpListener;
|
|
53
58
|
class HttpTransport extends models_1.Transport {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/server/transports/http.transport/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAEA,yCAA2D;AAC3D,uCAA+C;AAC/C,yCAA0C;AAC1C,wCAA4C;AAC5C,4CAAyC;AAEzC,6CAA2B;AAC3B,4CAA0B;AAE1B,MAAM,MAAM,GAAG,eAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;AAE/C,MAAM,iBAAiB,GAAG,CAA2C,MAAiB,EAAE,EAAE,CAC/F,KAAK,EAAE,OAAwB,EAAE,QAAwB,EAAE,EAAE;IAC3D,KAAK,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,MAAM,CAAC,KAAK,CAAgB,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,CAAC;QAC7F,MAAM,OAAO,GAAG,MAAM,SAAS;aAC5B,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC;aAC3C,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC;QAEhG,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC;YACrD,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/server/transports/http.transport/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAEA,yCAA2D;AAC3D,uCAA+C;AAC/C,yCAA0C;AAC1C,wCAA4C;AAC5C,4CAAyC;AAEzC,6CAA2B;AAC3B,4CAA0B;AAE1B,MAAM,MAAM,GAAG,eAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;AAE/C,MAAM,iBAAiB,GAAG,CAA2C,MAAiB,EAAE,EAAE,CAC/F,KAAK,EAAE,OAAwB,EAAE,QAAwB,EAAE,EAAE;IAC3D,KAAK,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,MAAM,CAAC,KAAK,CAAgB,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,CAAC;QAC7F,MAAM,OAAO,GAAG,MAAM,SAAS;aAC5B,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC;aAC3C,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC;QAEhG,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,kBAAW;aAClC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;aAC3D,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC;QAEjG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,SAAS;QACX,CAAC;QAED,MAAM,kBAAW;aACd,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;aACpF,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC;QAEtF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,OAAO,CAAgB,MAAM,CAAC,CAAC;IACtE,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAE5E,MAAM,kBAAW;SACd,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;SACnE,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC;AACxF,CAAC,CAAA;AAtCU,QAAA,iBAAiB,qBAsC3B;AAEH,MAAa,aAAc,SAAQ,kBAAuB;IAA1D;;QACS,aAAQ,GAAG,IAAI,uBAAY,EAAE,CAAC;IASvC,CAAC;IAPQ,cAAc,CACnB,QAA6C,EAC7C,OAAwB,EACxB,QAAwB;QAExB,OAAO,4BAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC/D,CAAC;CACF;AAVD,sCAUC"}
|