@spinajs/http 2.0.481 → 2.0.484
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/cjs/config/http.d.ts +15 -7
- package/lib/cjs/config/http.d.ts.map +1 -1
- package/lib/cjs/config/http.js +28 -9
- package/lib/cjs/config/http.js.map +1 -1
- package/lib/cjs/controllers.d.ts.map +1 -1
- package/lib/cjs/controllers.js +48 -12
- package/lib/cjs/controllers.js.map +1 -1
- package/lib/cjs/cookie.d.ts +8 -0
- package/lib/cjs/cookie.d.ts.map +1 -0
- package/lib/cjs/cookie.js +40 -0
- package/lib/cjs/cookie.js.map +1 -0
- package/lib/cjs/decorators.d.ts +46 -4
- package/lib/cjs/decorators.d.ts.map +1 -1
- package/lib/cjs/decorators.js +127 -23
- package/lib/cjs/decorators.js.map +1 -1
- package/lib/cjs/error.js +3 -3
- package/lib/cjs/error.js.map +1 -1
- package/lib/cjs/file-middlewares/validation.d.ts +11 -0
- package/lib/cjs/file-middlewares/validation.d.ts.map +1 -1
- package/lib/cjs/file-middlewares/validation.js +52 -9
- package/lib/cjs/file-middlewares/validation.js.map +1 -1
- package/lib/cjs/file-middlewares/zip.d.ts.map +1 -1
- package/lib/cjs/file-middlewares/zip.js +6 -1
- package/lib/cjs/file-middlewares/zip.js.map +1 -1
- package/lib/cjs/index.d.ts +1 -0
- package/lib/cjs/index.d.ts.map +1 -1
- package/lib/cjs/index.js +1 -0
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/interfaces.d.ts +95 -1
- package/lib/cjs/interfaces.d.ts.map +1 -1
- package/lib/cjs/interfaces.js +100 -4
- package/lib/cjs/interfaces.js.map +1 -1
- package/lib/cjs/middlewares/PerfRollup.d.ts +19 -0
- package/lib/cjs/middlewares/PerfRollup.d.ts.map +1 -0
- package/lib/cjs/middlewares/PerfRollup.js +61 -0
- package/lib/cjs/middlewares/PerfRollup.js.map +1 -0
- package/lib/cjs/middlewares/RequestId.d.ts +1 -2
- package/lib/cjs/middlewares/RequestId.d.ts.map +1 -1
- package/lib/cjs/middlewares/RequestId.js +19 -5
- package/lib/cjs/middlewares/RequestId.js.map +1 -1
- package/lib/cjs/middlewares/ResponseTime.d.ts +1 -2
- package/lib/cjs/middlewares/ResponseTime.d.ts.map +1 -1
- package/lib/cjs/middlewares/ResponseTime.js +29 -11
- package/lib/cjs/middlewares/ResponseTime.js.map +1 -1
- package/lib/cjs/response-methods/file.d.ts.map +1 -1
- package/lib/cjs/response-methods/file.js +47 -21
- package/lib/cjs/response-methods/file.js.map +1 -1
- package/lib/cjs/response-methods/index.d.ts +3 -0
- package/lib/cjs/response-methods/index.d.ts.map +1 -1
- package/lib/cjs/response-methods/index.js +3 -0
- package/lib/cjs/response-methods/index.js.map +1 -1
- package/lib/cjs/response-methods/redirect.d.ts +11 -4
- package/lib/cjs/response-methods/redirect.d.ts.map +1 -1
- package/lib/cjs/response-methods/redirect.js +14 -4
- package/lib/cjs/response-methods/redirect.js.map +1 -1
- package/lib/cjs/response-methods/xml.d.ts +17 -0
- package/lib/cjs/response-methods/xml.d.ts.map +1 -0
- package/lib/cjs/response-methods/xml.js +26 -0
- package/lib/cjs/response-methods/xml.js.map +1 -0
- package/lib/cjs/responses.d.ts +10 -0
- package/lib/cjs/responses.d.ts.map +1 -1
- package/lib/cjs/responses.js +94 -35
- package/lib/cjs/responses.js.map +1 -1
- package/lib/cjs/route-args/FromBody.d.ts.map +1 -1
- package/lib/cjs/route-args/FromBody.js +6 -1
- package/lib/cjs/route-args/FromBody.js.map +1 -1
- package/lib/cjs/route-args/FromForm.d.ts +1 -1
- package/lib/cjs/route-args/FromForm.d.ts.map +1 -1
- package/lib/cjs/route-args/FromForm.js +116 -37
- package/lib/cjs/route-args/FromForm.js.map +1 -1
- package/lib/cjs/route-args/FromXml.d.ts +17 -0
- package/lib/cjs/route-args/FromXml.d.ts.map +1 -0
- package/lib/cjs/route-args/FromXml.js +55 -0
- package/lib/cjs/route-args/FromXml.js.map +1 -0
- package/lib/cjs/route-args/RequestContext.d.ts +43 -0
- package/lib/cjs/route-args/RequestContext.d.ts.map +1 -0
- package/lib/cjs/route-args/RequestContext.js +94 -0
- package/lib/cjs/route-args/RequestContext.js.map +1 -0
- package/lib/cjs/route-args/RequestFields.d.ts +1 -1
- package/lib/cjs/route-args/RequestFields.d.ts.map +1 -1
- package/lib/cjs/route-args/RequestFields.js +1 -0
- package/lib/cjs/route-args/RequestFields.js.map +1 -1
- package/lib/cjs/route-args/RouteArgs.d.ts.map +1 -1
- package/lib/cjs/route-args/RouteArgs.js +50 -10
- package/lib/cjs/route-args/RouteArgs.js.map +1 -1
- package/lib/cjs/route-args/index.d.ts +2 -0
- package/lib/cjs/route-args/index.d.ts.map +1 -1
- package/lib/cjs/route-args/index.js +2 -0
- package/lib/cjs/route-args/index.js.map +1 -1
- package/lib/cjs/server.d.ts +36 -3
- package/lib/cjs/server.d.ts.map +1 -1
- package/lib/cjs/server.js +131 -42
- package/lib/cjs/server.js.map +1 -1
- package/lib/mjs/config/http.d.ts +15 -7
- package/lib/mjs/config/http.d.ts.map +1 -1
- package/lib/mjs/config/http.js +28 -9
- package/lib/mjs/config/http.js.map +1 -1
- package/lib/mjs/controllers.d.ts.map +1 -1
- package/lib/mjs/controllers.js +46 -10
- package/lib/mjs/controllers.js.map +1 -1
- package/lib/mjs/cookie.d.ts +8 -0
- package/lib/mjs/cookie.d.ts.map +1 -0
- package/lib/mjs/cookie.js +32 -0
- package/lib/mjs/cookie.js.map +1 -0
- package/lib/mjs/decorators.d.ts +46 -4
- package/lib/mjs/decorators.d.ts.map +1 -1
- package/lib/mjs/decorators.js +121 -24
- package/lib/mjs/decorators.js.map +1 -1
- package/lib/mjs/error.js +3 -3
- package/lib/mjs/error.js.map +1 -1
- package/lib/mjs/file-middlewares/validation.d.ts +11 -0
- package/lib/mjs/file-middlewares/validation.d.ts.map +1 -1
- package/lib/mjs/file-middlewares/validation.js +53 -10
- package/lib/mjs/file-middlewares/validation.js.map +1 -1
- package/lib/mjs/file-middlewares/zip.d.ts.map +1 -1
- package/lib/mjs/file-middlewares/zip.js +6 -1
- package/lib/mjs/file-middlewares/zip.js.map +1 -1
- package/lib/mjs/index.d.ts +1 -0
- package/lib/mjs/index.d.ts.map +1 -1
- package/lib/mjs/index.js +1 -0
- package/lib/mjs/index.js.map +1 -1
- package/lib/mjs/interfaces.d.ts +95 -1
- package/lib/mjs/interfaces.d.ts.map +1 -1
- package/lib/mjs/interfaces.js +65 -2
- package/lib/mjs/interfaces.js.map +1 -1
- package/lib/mjs/middlewares/PerfRollup.d.ts +19 -0
- package/lib/mjs/middlewares/PerfRollup.d.ts.map +1 -0
- package/lib/mjs/middlewares/PerfRollup.js +58 -0
- package/lib/mjs/middlewares/PerfRollup.js.map +1 -0
- package/lib/mjs/middlewares/RequestId.d.ts +1 -2
- package/lib/mjs/middlewares/RequestId.d.ts.map +1 -1
- package/lib/mjs/middlewares/RequestId.js +19 -5
- package/lib/mjs/middlewares/RequestId.js.map +1 -1
- package/lib/mjs/middlewares/ResponseTime.d.ts +1 -2
- package/lib/mjs/middlewares/ResponseTime.d.ts.map +1 -1
- package/lib/mjs/middlewares/ResponseTime.js +29 -11
- package/lib/mjs/middlewares/ResponseTime.js.map +1 -1
- package/lib/mjs/response-methods/file.d.ts.map +1 -1
- package/lib/mjs/response-methods/file.js +41 -15
- package/lib/mjs/response-methods/file.js.map +1 -1
- package/lib/mjs/response-methods/index.d.ts +3 -0
- package/lib/mjs/response-methods/index.d.ts.map +1 -1
- package/lib/mjs/response-methods/index.js +3 -0
- package/lib/mjs/response-methods/index.js.map +1 -1
- package/lib/mjs/response-methods/redirect.d.ts +11 -4
- package/lib/mjs/response-methods/redirect.d.ts.map +1 -1
- package/lib/mjs/response-methods/redirect.js +15 -5
- package/lib/mjs/response-methods/redirect.js.map +1 -1
- package/lib/mjs/response-methods/xml.d.ts +17 -0
- package/lib/mjs/response-methods/xml.d.ts.map +1 -0
- package/lib/mjs/response-methods/xml.js +22 -0
- package/lib/mjs/response-methods/xml.js.map +1 -0
- package/lib/mjs/responses.d.ts +10 -0
- package/lib/mjs/responses.d.ts.map +1 -1
- package/lib/mjs/responses.js +93 -35
- package/lib/mjs/responses.js.map +1 -1
- package/lib/mjs/route-args/FromBody.d.ts.map +1 -1
- package/lib/mjs/route-args/FromBody.js +6 -1
- package/lib/mjs/route-args/FromBody.js.map +1 -1
- package/lib/mjs/route-args/FromForm.d.ts +1 -1
- package/lib/mjs/route-args/FromForm.d.ts.map +1 -1
- package/lib/mjs/route-args/FromForm.js +114 -38
- package/lib/mjs/route-args/FromForm.js.map +1 -1
- package/lib/mjs/route-args/FromXml.d.ts +17 -0
- package/lib/mjs/route-args/FromXml.d.ts.map +1 -0
- package/lib/mjs/route-args/FromXml.js +52 -0
- package/lib/mjs/route-args/FromXml.js.map +1 -0
- package/lib/mjs/route-args/RequestContext.d.ts +43 -0
- package/lib/mjs/route-args/RequestContext.d.ts.map +1 -0
- package/lib/mjs/route-args/RequestContext.js +91 -0
- package/lib/mjs/route-args/RequestContext.js.map +1 -0
- package/lib/mjs/route-args/RequestFields.d.ts +1 -1
- package/lib/mjs/route-args/RequestFields.d.ts.map +1 -1
- package/lib/mjs/route-args/RequestFields.js +1 -0
- package/lib/mjs/route-args/RequestFields.js.map +1 -1
- package/lib/mjs/route-args/RouteArgs.d.ts.map +1 -1
- package/lib/mjs/route-args/RouteArgs.js +51 -11
- package/lib/mjs/route-args/RouteArgs.js.map +1 -1
- package/lib/mjs/route-args/index.d.ts +2 -0
- package/lib/mjs/route-args/index.d.ts.map +1 -1
- package/lib/mjs/route-args/index.js +2 -0
- package/lib/mjs/route-args/index.js.map +1 -1
- package/lib/mjs/server.d.ts +36 -3
- package/lib/mjs/server.d.ts.map +1 -1
- package/lib/mjs/server.js +132 -43
- package/lib/mjs/server.js.map +1 -1
- package/lib/tsconfig.cjs.tsbuildinfo +1 -1
- package/lib/tsconfig.mjs.tsbuildinfo +1 -1
- package/package.json +17 -12
package/lib/cjs/config/http.d.ts
CHANGED
|
@@ -6,13 +6,6 @@ declare const http: {
|
|
|
6
6
|
cli: string[];
|
|
7
7
|
};
|
|
8
8
|
};
|
|
9
|
-
cookie: {
|
|
10
|
-
secret: string;
|
|
11
|
-
options: {
|
|
12
|
-
maxAge: number;
|
|
13
|
-
httpOnly: boolean;
|
|
14
|
-
};
|
|
15
|
-
};
|
|
16
9
|
fs: {
|
|
17
10
|
providers: {
|
|
18
11
|
service: string;
|
|
@@ -21,6 +14,21 @@ declare const http: {
|
|
|
21
14
|
}[];
|
|
22
15
|
};
|
|
23
16
|
http: {
|
|
17
|
+
/**
|
|
18
|
+
* Cookie defaults. This MUST live under `http.` - every consumer reads
|
|
19
|
+
* `http.cookie.secret` ( responses, @FromCookie, the rbac session middleware ),
|
|
20
|
+
* and the parser that makes signed cookies work is bound to it.
|
|
21
|
+
*
|
|
22
|
+
* Override the secret per app: this default is public, and signed cookies are
|
|
23
|
+
* only as trustworthy as the key that signs them.
|
|
24
|
+
*/
|
|
25
|
+
cookie: {
|
|
26
|
+
secret: string;
|
|
27
|
+
options: {
|
|
28
|
+
maxAge: number;
|
|
29
|
+
httpOnly: boolean;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
24
32
|
/**
|
|
25
33
|
* File upload default middlewares
|
|
26
34
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/config/http.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AA0B9B,QAAA,MAAM,IAAI
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/config/http.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AA0B9B,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;QAgCN;;;;;;;WAOG;;;;;;;;QASH;;WAEG;;;;;;;;;;;;;;;QAwCH;;WAEG;;YAGC;;eAEG;;YAGH;;eAEG;;;QAKP;;WAEG;;QAGH;;;WAGG;;;CAgBN,CAAC;AAEF,eAAe,IAAI,CAAC"}
|
package/lib/cjs/config/http.js
CHANGED
|
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const express_1 = __importDefault(require("express"));
|
|
7
7
|
const helmet_1 = __importDefault(require("helmet"));
|
|
8
|
-
const
|
|
8
|
+
const cookie_js_1 = require("../cookie.js");
|
|
9
9
|
const compression_1 = __importDefault(require("compression"));
|
|
10
10
|
const path_1 = require("path");
|
|
11
11
|
const os_1 = __importDefault(require("os"));
|
|
@@ -30,13 +30,6 @@ const http = {
|
|
|
30
30
|
cli: [...dir('cli')],
|
|
31
31
|
},
|
|
32
32
|
},
|
|
33
|
-
cookie: {
|
|
34
|
-
secret: '1234adreewD',
|
|
35
|
-
options: {
|
|
36
|
-
maxAge: 900000,
|
|
37
|
-
httpOnly: true,
|
|
38
|
-
},
|
|
39
|
-
},
|
|
40
33
|
fs: {
|
|
41
34
|
providers: [
|
|
42
35
|
// formidable default file provider, incoming
|
|
@@ -60,6 +53,21 @@ const http = {
|
|
|
60
53
|
],
|
|
61
54
|
},
|
|
62
55
|
http: {
|
|
56
|
+
/**
|
|
57
|
+
* Cookie defaults. This MUST live under `http.` - every consumer reads
|
|
58
|
+
* `http.cookie.secret` ( responses, @FromCookie, the rbac session middleware ),
|
|
59
|
+
* and the parser that makes signed cookies work is bound to it.
|
|
60
|
+
*
|
|
61
|
+
* Override the secret per app: this default is public, and signed cookies are
|
|
62
|
+
* only as trustworthy as the key that signs them.
|
|
63
|
+
*/
|
|
64
|
+
cookie: {
|
|
65
|
+
secret: '1234adreewD',
|
|
66
|
+
options: {
|
|
67
|
+
maxAge: 900000,
|
|
68
|
+
httpOnly: true,
|
|
69
|
+
},
|
|
70
|
+
},
|
|
63
71
|
/**
|
|
64
72
|
* File upload default middlewares
|
|
65
73
|
*/
|
|
@@ -81,11 +89,22 @@ const http = {
|
|
|
81
89
|
(0, helmet_1.default)(),
|
|
82
90
|
express_1.default.json({
|
|
83
91
|
limit: '5mb',
|
|
92
|
+
// Capture the exact received bytes for the @RawBody() route arg
|
|
93
|
+
// (webhook signature verification needs the unmodified body).
|
|
94
|
+
verify: (req, _res, buf) => {
|
|
95
|
+
req.rawBody = buf;
|
|
96
|
+
},
|
|
84
97
|
}),
|
|
85
98
|
express_1.default.urlencoded({
|
|
86
99
|
extended: true,
|
|
87
100
|
}),
|
|
88
|
-
|
|
101
|
+
// Parse XML request bodies as text so the @FromXml() route arg can read
|
|
102
|
+
// and parse them. Covers application/xml, text/xml and *+xml types.
|
|
103
|
+
express_1.default.text({
|
|
104
|
+
type: ['application/xml', 'text/xml', 'application/*+xml'],
|
|
105
|
+
limit: '5mb',
|
|
106
|
+
}),
|
|
107
|
+
cookie_js_1.configuredCookieParser,
|
|
89
108
|
(0, compression_1.default)(),
|
|
90
109
|
],
|
|
91
110
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/config/http.ts"],"names":[],"mappings":";;;;;AAAA,sDAA8B;AAC9B,oDAA4B;AAC5B,
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/config/http.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controllers.d.ts","sourceRoot":"","sources":["../../src/controllers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGrD,OAAO,OAAO,MAAM,SAAS,CAAC;AAI9B,OAAO,EAAE,YAAY,EAAE,UAAU,EAAkB,SAAS,EAAa,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpG,OAAO,EAAU,GAAG,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAiC,WAAW,EAAE,qBAAqB,EAAgG,0BAA0B,EAAW,MAAM,iBAAiB,CAAC;AAGvO,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAMpD,8BAAsB,cAAe,SAAQ,YAAa,YAAW,WAAW;IAC9E;;OAEG;IACH,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IAEtB,SAAS,CAAC,OAAO,EAAG,OAAO,CAAC,MAAM,CAAC;IAGnC,SAAS,CAAC,UAAU,EAAG,UAAU,CAAC;IAGlC,SAAS,CAAC,UAAU,EAAG,aAAa,CAAC;IAGrC,SAAS,CAAC,IAAI,EAAG,GAAG,CAAC;IAGrB,SAAS,CAAC,mBAAmB,EAAG,iBAAiB,CAAC,0BAA0B,CAAC,CAAC;IAG9E,SAAS,CAAC,IAAI,EAAG,aAAa,CAAC;IAI/B;;OAEG;IACH,IAAW,MAAM,IAAI,OAAO,CAAC,MAAM,CAElC;IAED;;OAEG;IACH,IAAW,UAAU,IAAI,qBAAqB,CAE7C;IAED;;;;OAIG;IACH,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAEY,OAAO;
|
|
1
|
+
{"version":3,"file":"controllers.d.ts","sourceRoot":"","sources":["../../src/controllers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGrD,OAAO,OAAO,MAAM,SAAS,CAAC;AAI9B,OAAO,EAAE,YAAY,EAAE,UAAU,EAAkB,SAAS,EAAa,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpG,OAAO,EAAU,GAAG,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAiC,WAAW,EAAE,qBAAqB,EAAgG,0BAA0B,EAAW,MAAM,iBAAiB,CAAC;AAGvO,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAMpD,8BAAsB,cAAe,SAAQ,YAAa,YAAW,WAAW;IAC9E;;OAEG;IACH,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IAEtB,SAAS,CAAC,OAAO,EAAG,OAAO,CAAC,MAAM,CAAC;IAGnC,SAAS,CAAC,UAAU,EAAG,UAAU,CAAC;IAGlC,SAAS,CAAC,UAAU,EAAG,aAAa,CAAC;IAGrC,SAAS,CAAC,IAAI,EAAG,GAAG,CAAC;IAGrB,SAAS,CAAC,mBAAmB,EAAG,iBAAiB,CAAC,0BAA0B,CAAC,CAAC;IAG9E,SAAS,CAAC,IAAI,EAAG,aAAa,CAAC;IAI/B;;OAEG;IACH,IAAW,MAAM,IAAI,OAAO,CAAC,MAAM,CAElC;IAED;;OAEG;IACH,IAAW,UAAU,IAAI,qBAAqB,CAE7C;IAED;;;;OAIG;IACH,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAEY,OAAO;CAiOrB;AAED,qBAAa,WAAY,SAAQ,YAAY;IAC3C;;;;;OAKG;IAEI,WAAW,EAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAG/D,SAAS,CAAC,GAAG,EAAG,GAAG,CAAC;IAGpB,SAAS,CAAC,SAAS,EAAG,UAAU,CAAC;IAGjC,SAAS,CAAC,MAAM,EAAG,UAAU,CAAC;IAG9B,SAAS,CAAC,gBAAgB,EAAG,sBAAsB,CAAC;IAEpD;;;;;;;OAOG;IACH,SAAS,CAAC,iBAAiB,EAAG,OAAO,CAAC,MAAM,CAAC;IAE7C;;;OAGG;IACH,SAAS,CAAC,eAAe,EAAE,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAa;IAElE;;;;;;;;;;;;OAYG;IACU,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB/C,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,cAAc,CAAC;IA6C9C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CA8FtC"}
|
package/lib/cjs/controllers.js
CHANGED
|
@@ -14,7 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.Controllers = exports.BaseController = void 0;
|
|
16
16
|
const node_async_hooks_1 = require("node:async_hooks");
|
|
17
|
-
const
|
|
17
|
+
const util_1 = require("@spinajs/util");
|
|
18
18
|
const express_1 = __importDefault(require("express"));
|
|
19
19
|
const lodash_1 = __importDefault(require("lodash"));
|
|
20
20
|
const di_1 = require("@spinajs/di");
|
|
@@ -26,7 +26,7 @@ const configuration_1 = require("@spinajs/configuration");
|
|
|
26
26
|
const server_js_1 = require("./server.js");
|
|
27
27
|
const interfaces_js_1 = require("./interfaces.js");
|
|
28
28
|
const decorators_js_1 = require("./decorators.js");
|
|
29
|
-
const
|
|
29
|
+
const util_2 = require("@spinajs/util");
|
|
30
30
|
const cache_js_1 = require("./cache.js");
|
|
31
31
|
const response_js_1 = require("./response.js");
|
|
32
32
|
const error_js_1 = require("./error.js");
|
|
@@ -110,12 +110,19 @@ class BaseController extends di_1.AsyncService {
|
|
|
110
110
|
// If at least ONE policy returns no error allow route to execute
|
|
111
111
|
// It allows to use multiple access to resource eg. token access & session
|
|
112
112
|
handlers.push((req, _res, next) => {
|
|
113
|
-
|
|
113
|
+
// Only policies enabled for this concrete route participate in the gate.
|
|
114
|
+
// A route whose policies are ALL disabled has no active authorization
|
|
115
|
+
// check, so it is allowed through — same semantics as having no policies
|
|
116
|
+
// at all. Computing this up front is what prevents the request from
|
|
117
|
+
// hanging: `Promise.allSettled([])` resolves to `[]`, which matches
|
|
118
|
+
// neither the fulfilled nor the rejected branch below, so `next` would
|
|
119
|
+
// never be called.
|
|
120
|
+
const enabledPolicies = policies.filter((p) => p.isEnabled(route, this));
|
|
121
|
+
if (enabledPolicies.length === 0) {
|
|
114
122
|
next();
|
|
115
123
|
return;
|
|
116
124
|
}
|
|
117
|
-
Promise.allSettled(
|
|
118
|
-
.filter((p) => p.isEnabled(route, this))
|
|
125
|
+
Promise.allSettled(enabledPolicies
|
|
119
126
|
.map((p) => {
|
|
120
127
|
return p
|
|
121
128
|
.execute(req, route, this)
|
|
@@ -133,11 +140,16 @@ class BaseController extends di_1.AsyncService {
|
|
|
133
140
|
next();
|
|
134
141
|
return;
|
|
135
142
|
}
|
|
143
|
+
// Every policy rejected — forward the first failure to the express
|
|
144
|
+
// error handler. Use next(err) directly (not `throw next(...)`,
|
|
145
|
+
// which would reject this .then() with `undefined` as an unhandled
|
|
146
|
+
// rejection while the error was already forwarded).
|
|
136
147
|
const failed = results.find(r => r.status === 'rejected');
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
148
|
+
next(failed ? failed.reason : new exceptions_1.UnexpectedServerError('Policy evaluation produced no result'));
|
|
149
|
+
})
|
|
150
|
+
// Guard against unexpected throws in the settle/handler chain so the
|
|
151
|
+
// request can never stall without a response.
|
|
152
|
+
.catch((err) => next(err));
|
|
141
153
|
});
|
|
142
154
|
handlers.push(...enabledMiddlewares.map((m) => _invokeAction(m, m.onBefore.bind(m), route)));
|
|
143
155
|
const acionWrapper = async (req, res, next) => {
|
|
@@ -146,7 +158,7 @@ class BaseController extends di_1.AsyncService {
|
|
|
146
158
|
const args = (await _extractRouteArgs(route, req, res)).concat([req, res, next]);
|
|
147
159
|
try {
|
|
148
160
|
const result = this[route.Method].call(this, ...args);
|
|
149
|
-
if ((0,
|
|
161
|
+
if ((0, util_1.isPromise)(result)) {
|
|
150
162
|
result
|
|
151
163
|
.then((r) => {
|
|
152
164
|
if (r instanceof interfaces_js_1.Response) {
|
|
@@ -216,7 +228,7 @@ class BaseController extends di_1.AsyncService {
|
|
|
216
228
|
// Sort parameters by priority (higher priority first)
|
|
217
229
|
// Get all parameters as array, resolve their handlers to check priority, then sort
|
|
218
230
|
const paramsWithPriority = await Promise.all(Array.from(route.Parameters.values()).map(async (param) => {
|
|
219
|
-
const handler = await (0,
|
|
231
|
+
const handler = await (0, util_2.tryGetHash)(argsCache, param.Type, () => di_1.DI.resolve(param.Type));
|
|
220
232
|
return { param, handler, priority: handler?.Priority ?? 0 };
|
|
221
233
|
}));
|
|
222
234
|
// Sort by priority descending (higher priority first)
|
|
@@ -356,7 +368,7 @@ class Controllers extends di_1.AsyncService {
|
|
|
356
368
|
// it. Without this every controller would end up tagged `<di>`, breaking
|
|
357
369
|
// ControllersCache.getCache() which expects a real on-disk source file.
|
|
358
370
|
const fileByType = new Map();
|
|
359
|
-
for (const ci of
|
|
371
|
+
for (const ci of (0, util_2.uniqueBy)(listed, c => c.name)) {
|
|
360
372
|
if (!ci.type) {
|
|
361
373
|
this.Log.warn(`Controller ${ci.name} in file ${ci.file} has no type. Make sure it is decorated with @injectable and has a public constructor without required parameters`);
|
|
362
374
|
continue;
|
|
@@ -367,6 +379,30 @@ class Controllers extends di_1.AsyncService {
|
|
|
367
379
|
this.Log.trace(`Controller ${ci.name} from ${ci.file} registered as BaseController`);
|
|
368
380
|
}
|
|
369
381
|
const instances = (await di_1.DI.resolve(Array.ofType(BaseController)));
|
|
382
|
+
// Report on scanned controllers that someone else derives from. Both
|
|
383
|
+
// outcomes are otherwise invisible: an override leaves no trace at all, and
|
|
384
|
+
// an accidental shadow leaves two controllers answering the same paths.
|
|
385
|
+
const mounted = new Set(instances.map((i) => i.constructor));
|
|
386
|
+
for (const [type, ci] of fileByType) {
|
|
387
|
+
// Something that mounted derives from this scanned controller. Keying off
|
|
388
|
+
// the descendant rather than off `mounted` is what lets both cases be
|
|
389
|
+
// seen — in the not-registered case the scanned type mounts too.
|
|
390
|
+
const descendant = instances.find((i) => i.constructor !== type && i instanceof type);
|
|
391
|
+
if (!descendant) {
|
|
392
|
+
continue;
|
|
393
|
+
}
|
|
394
|
+
if (!mounted.has(type)) {
|
|
395
|
+
// Scanned, yet absent from the collection — DI chained its registration
|
|
396
|
+
// to the subclass. Say so rather than dropping it silently.
|
|
397
|
+
this.Log.info(`Controller ${ci.name} overridden by ${descendant.constructor.name}`);
|
|
398
|
+
}
|
|
399
|
+
else {
|
|
400
|
+
// Subclassed but never registered as an override, so BOTH mounted and
|
|
401
|
+
// Express route order picks the winner. Warn rather than throw, since
|
|
402
|
+
// legitimate shared bases exist ( eg. abstract Crud in orm-api ).
|
|
403
|
+
this.Log.warn(`Controller ${descendant.constructor.name} extends ${ci.name} but was not registered as an override. Call DI.register(${descendant.constructor.name}).as(${ci.name}) to replace it, otherwise both mount and route order decides which one answers.`);
|
|
404
|
+
}
|
|
405
|
+
}
|
|
370
406
|
for (const instance of instances) {
|
|
371
407
|
const type = instance.constructor;
|
|
372
408
|
const originalCi = fileByType.get(type);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controllers.js","sourceRoot":"","sources":["../../src/controllers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uDAAqD;AACrD,2CAA4C;AAE5C,sDAA8B;AAE9B,oDAAuB;AAEvB,oCAAoG;AACpG,oDAA4D;AAC5D,oDAAoD;AACpD,sCAA2C;AAC3C,oDAAoD;AACpD,0DAAuD;AACvD,2CAAyC;AAEzC,mDAAuO;AACvO,mDAA+D;AAC/D,wCAA2C;AAC3C,yCAAoD;AACpD,+CAAoD;AACpD,yCAA8C;AAI9C,MAAsB,cAAe,SAAQ,iBAAY;IAyBvD;;OAEG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,IAAW,UAAU;QACnB,OAAO,OAAO,CAAC,WAAW,CAAC,4CAA4B,EAAE,IAAI,CAA0B,CAAC;IAC1F,CAAC;IAED;;;;OAIG;IACH,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IACnG,CAAC;IAEM,KAAK,CAAC,OAAO;QAElB,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QAEtB,MAAM,IAAI,GAAG,IAAI,CAAC;QAIlB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,WAAW,CAAC,IAAI,+EAA+E,CAAC,CAAC;YACnI,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,iBAAO,CAAC,MAAM,EAAE,CAAC;QAEhC,KAAK,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YAC/C,MAAM,QAAQ,GAA6D,EAAE,CAAC;YAE9E,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBACf,IAAI,KAAK,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;oBACvB,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACN,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;wBAC1B,IAAI,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBAC1B,CAAC;yBAAM,CAAC;wBACN,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBAC3C,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YACrD,CAAC;YAED,+BAA+B;YAC/B,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,+BAA+B,CAAC,EAAE,CAAC;gBACnD,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,+BAA+B,CAAC,GAAG,IAAI,EAAE,CAAC;YACrE,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,GAAG,CACnC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAwB,EAAE,EAAE;gBAC3F,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACpD,CAAC,CAAC,CACH,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;iBAClD,GAAG,CAAC,CAAC,CAAoB,EAAE,EAAE;gBAC5B,IAAI,gBAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;oBACvB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS,CAAC,CAAC,IAAI,CAAC,CAAC;oBACjD,IAAI,CAAC,OAAE,CAAC,SAAS,CAAC,0BAAU,EAAE,UAAU,CAAC,EAAE,CAAC;wBAC1C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,UAAU,gDAAgD,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;wBACvG,OAAO,IAAI,CAAC;oBACd,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,UAAU,0BAA0B,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;wBAChI,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAa,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;oBACpE,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,0BAA0B,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;oBACjI,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAa,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;gBAChE,CAAC;YACH,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAC7B,CAAC;YACF,MAAM,kBAAkB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;YAE/E,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,qBAAqB,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;YAE9H,iCAAiC;YACjC,iEAAiE;YACjE,0EAA0E;YAC1E,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAoB,EAAE,IAAsB,EAAE,IAA0B,EAAE,EAAE;gBACzF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,IAAI,EAAE,CAAC;oBACP,OAAO;gBACT,CAAC;gBAED,OAAO,CAAC,UAAU,CAAC,QAAQ;qBACxB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;qBACvC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBACT,OAAO,CAAC;yBACL,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC;yBACzB,IAAI,CAAC,GAAG,EAAE;wBACT,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;oBACtL,CAAC,CAAC;yBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;wBACb,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,2BAA2B,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;wBAC/L,MAAM,GAAG,CAAC;oBACZ,CAAC,CAAC,CAAC;gBACP,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;oBACnB,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC;oBAC/D,IAAI,UAAU,EAAE,CAAC;wBACf,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;wBACzK,IAAI,EAAE,CAAC;wBACP,OAAO;oBACT,CAAC;oBAED,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC;oBAC1D,IAAI,MAAM,IAAI,QAAQ,IAAI,MAAM,EAAE,CAAC;wBACjC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC5B,CAAC;gBACH,CAAC,CAAC,CAAA;YACN,CAAC,CAAC,CAAC;YACH,QAAQ,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YAE7F,MAAM,YAAY,GAAG,KAAK,EAAE,GAAa,EAAE,GAAqB,EAAE,IAA0B,EAAE,EAAE;gBAC9F,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;wBACzD,MAAM,IAAI,GAAG,CAAC,MAAM,iBAAiB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;wBAEjF,IAAI,CAAC;4BACH,MAAM,MAAM,GAAI,IAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;4BAE/D,IAAI,IAAA,iBAAS,EAAC,MAAM,CAAC,EAAE,CAAC;gCACtB,MAAM;qCACH,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;oCACV,IAAI,CAAC,YAAY,wBAAQ,EAAE,CAAC;wCAC1B,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oCAClE,CAAC;oCACD,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC;oCACxB,IAAI,EAAE,CAAC;gCACT,CAAC,CAAC;qCACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oCACb,IAAI,CAAC,GAAG,CAAC,CAAC;gCACZ,CAAC,CAAC,CAAC;4BACP,CAAC;iCAAM,CAAC;gCACN,IAAI,MAAM,YAAY,wBAAQ,EAAE,CAAC;oCAC/B,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;gCACvE,CAAC;gCACD,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC;gCAC7B,IAAI,EAAE,CAAC;4BACT,CAAC;wBACH,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,IAAI,CAAC,GAAG,CAAC,CAAC;wBACZ,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,CAAC,GAAG,CAAC,CAAC;gBACZ,CAAC;YACH,CAAC,CAAC;YAEF,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE;gBAC1C,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;gBAC5B,QAAQ,EAAE,IAAI;aACf,CAAC,CAAC;YAEH,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC5B,QAAQ,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YAE5F,6BAA6B;YAC7B,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBACrC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;gBAC3G,OAAO;YACT,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,IAAA,iCAAmB,GAAE,CAAC,CAAC;YACrC,QAAQ,CAAC,IAAI,CAAC,IAAA,2BAAgB,GAAE,CAAC,CAAC;YAEjC,IAAI,CAAC,OAAe,CAAC,KAAK,CAAC,YAAsB,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtE,CAAC;QAED,SAAS,aAAa,CAAC,MAAW,EAAE,MAAW,EAAE,KAAa;YAC5D,MAAM,OAAO,GAAG,CAAC,GAAoB,EAAE,GAAqB,EAAE,IAA0B,EAAE,EAAE;gBAC1F,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC;qBAC1B,IAAI,CAAC,GAAG,EAAE;oBACT,IAAI,EAAE,CAAC;gBACT,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE;oBAClB,IAAI,CAAC,GAAG,CAAC,CAAC;gBACZ,CAAC,CAAC,CAAC;YACP,CAAC,CAAC;YAEF,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE;gBACrC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI;gBAC9B,QAAQ,EAAE,IAAI;aACf,CAAC,CAAC;YACH,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,KAAK,UAAU,iBAAiB,CAAC,KAAa,EAAE,GAAY,EAAE,GAAqB;YACjF,MAAM,QAAQ,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAqC,CAAC;YAE/D,IAAI,QAAQ,GAAG;gBACb,OAAO,EAAE,EAAE;aACZ,CAAC;YAEF,sDAAsD;YACtD,mFAAmF;YACnF,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC1C,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACxD,MAAM,OAAO,GAAG,MAAM,IAAA,iBAAU,EAAC,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,OAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;gBACtF,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,CAAC,EAAE,CAAC;YAC9D,CAAC,CAAC,CACH,CAAC;YAEF,sDAAsD;YACtD,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC;YAE9F,KAAK,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,YAAY,EAAE,CAAC;gBAChE,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACtB,MAAM,IAAI,kCAAqB,CAAC,iDAAiD,KAAK,CAAC,IAAI;yBAC5E,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;6BAChB,IAAI,CAAC,WAAW,CAAC,IAAI,oDAAoD,CAAC,CAAC;gBAChG,CAAC;gBAED,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;gBAEtG,QAAQ,GAAG,QAAQ,CAAC;gBACpB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;YAC/B,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC;CACF;AArQD,wCAqQC;AA5PW;IADT,IAAA,eAAU,EAAC,cAAS,CAAC;;kDACY;AAGxB;IADT,IAAA,eAAU,GAAE;8BACU,0BAAa;kDAAC;AAG3B;IADT,IAAA,YAAM,EAAC,MAAM,CAAC;8BACE,SAAG;4CAAC;AAGX;IADT,IAAA,eAAU,GAAE;8BACmB,oCAAiB;2DAA6B;AAGpE;IADT,IAAA,eAAU,EAAC,6BAAa,CAAC;8BACT,6BAAa;4CAAC;AAkPjC,MAAa,WAAY,SAAQ,iBAAY;IAA7C;;QAgCE;;;WAGG;QACO,oBAAe,GAA+B,IAAI,GAAG,EAAE,CAAC;IAmJpE,CAAC;IAjJC;;;;;;;;;;;;OAYG;IACI,KAAK,CAAC,GAAG,CAAC,IAA2B;QAC1C,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,IAAI,+BAA+B,CAAC,CAAC;YACvE,OAAO;QACT,CAAC;QAED,OAAE,CAAC,QAAQ,CAAC,IAAW,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,CAAC,MAAM,OAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAmB,CAAC;QAE5D,MAAM,EAAE,GAAG,IAAI,cAAS,EAAkB,CAAC;QAC3C,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACpB,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC;QACf,EAAE,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACvB,uEAAuE;QACvE,mEAAmE;QACnE,EAAE,CAAC,IAAI,GAAG,QAAQ,CAAC,UAAU,EAAE,UAAU,IAAI,WAAW,CAAC;QAEzD,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,UAAqC;QACzD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,uBAAuB,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAEzD,IAAI,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACjE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,UAAU,CAAC,IAAI,+BAA+B,CAAC,CAAC;YAC7E,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACpE,IAAG,CAAC,UAAU,CAAC,QAAQ,EAAC,CAAC;YACvB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,UAAU,CAAC,IAAI,YAAY,UAAU,CAAC,IAAI,uHAAuH,CAAC,CAAC;YAC/L,OAAO;QACT,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,UAAU,CAAC,IAAI,YAAY,UAAU,CAAC,IAAI,yCAAyC,CAAC,CAAC;QACnH,CAAC;aAAM,CAAC;YACN,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;gBAClE,IAAI,UAAU,CAAC,IAAc,CAAC,EAAE,CAAC;oBAC/B,MAAM,MAAM,GAAG,UAAU,CAAC,IAAc,CAAC,CAAC;oBAE1C,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;wBAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;wBAC5B,IAAI,KAAK,EAAE,CAAC;4BACV,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC;wBACtB,CAAC;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,UAAU,CAAC,IAAI,yBAAyB,IAAc,cAAc,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;gBACjH,CAAC;YACH,CAAC;YAGD,IAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAC,CAAC;gBAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,UAAU,CAAC,IAAI,YAAY,UAAU,CAAC,IAAI,6GAA6G,CAAC,CAAC;gBACrL,OAAO;YACT,CAAC;YAED,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACvD,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;gBACpB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,OAAO;QAElB,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QAEtB,sEAAsE;QACtE,oEAAoE;QACpE,8DAA8D;QAC9D,IAAI,CAAC,iBAAiB,GAAG,iBAAO,CAAC,MAAM,EAAE,CAAC;QAE1C,wCAAwC;QACxC,wEAAwE;QACxE,wEAAwE;QACxE,yCAAyC;QACzC,wEAAwE;QACxE,wEAAwE;QACxE,qEAAqE;QACrE,0CAA0C;QAC1C,wEAAwE;QACxE,qEAAqE;QACrE,yEAAyE;QACzE,6BAA6B;QAC7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC;QAEtC,2EAA2E;QAC3E,yEAAyE;QACzE,wEAAwE;QACxE,MAAM,UAAU,GAAG,IAAI,GAAG,EAAoD,CAAC;QAE/E,KAAK,MAAM,EAAE,IAAI,gBAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,EAAE,CAAC,IAAI,EAAC,CAAC;gBACZ,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,YAAY,EAAE,CAAC,IAAI,mHAAmH,CAAC,CAAC;gBAC3K,SAAS;YACX,CAAC;YAAA,CAAC;YAEF,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,IAA6B,EAAE,EAAE,CAAC,CAAC;YACrD,OAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC;YACxC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,IAAI,+BAA+B,CAAC,CAAC;QACvF,CAAC;QAED,MAAM,SAAS,GAAG,CAAC,MAAM,OAAE,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAqB,CAAC;QAEvF,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAoC,CAAC;YAC3D,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,EAAE,GAAG,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,cAAS,EAAkB,EAAE;gBACtE,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI;gBACJ,QAAQ;gBACR,qEAAqE;gBACrE,oEAAoE;gBACpE,qEAAqE;gBACrE,yBAAyB;gBACzB,IAAI,EAAE,QAAQ,CAAC,UAAU,EAAE,UAAU,IAAI,MAAM;aACV,CAAC,CAAC;YACzC,yEAAyE;YACzE,IAAI,CAAC,EAAE,CAAC,QAAQ;gBAAE,EAAE,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACzC,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC;QAED,yEAAyE;QACzE,sEAAsE;QACtE,+DAA+D;QAC/D,iEAAiE;QACjE,mEAAmE;QACnE,gDAAgD;QAChD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC1C,CAAC;CACF;AAvLD,kCAuLC;AA/KQ;IADN,IAAA,0BAAa,EAAC,oBAAoB,EAAE,yBAAyB,CAAC;;gDACA;AAGrD;IADT,IAAA,YAAM,EAAC,MAAM,CAAC;8BACC,SAAG;wCAAC;AAGV;IADT,IAAA,eAAU,EAAC,cAAS,CAAC;;8CACW;AAGvB;IADT,IAAA,eAAU,GAAE;8BACM,sBAAU;2CAAC;AAGpB;IADT,IAAA,eAAU,GAAE;8BACgB,iCAAsB;qDAAC"}
|
|
1
|
+
{"version":3,"file":"controllers.js","sourceRoot":"","sources":["../../src/controllers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uDAAqD;AACrD,wCAA0C;AAE1C,sDAA8B;AAE9B,oDAAuB;AAEvB,oCAAoG;AACpG,oDAA4D;AAC5D,oDAAoD;AACpD,sCAA2C;AAC3C,oDAAoD;AACpD,0DAAuD;AACvD,2CAAyC;AAEzC,mDAAuO;AACvO,mDAA+D;AAC/D,wCAAqD;AACrD,yCAAoD;AACpD,+CAAoD;AACpD,yCAA8C;AAI9C,MAAsB,cAAe,SAAQ,iBAAY;IAyBvD;;OAEG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,IAAW,UAAU;QACnB,OAAO,OAAO,CAAC,WAAW,CAAC,4CAA4B,EAAE,IAAI,CAA0B,CAAC;IAC1F,CAAC;IAED;;;;OAIG;IACH,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IACnG,CAAC;IAEM,KAAK,CAAC,OAAO;QAElB,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QAEtB,MAAM,IAAI,GAAG,IAAI,CAAC;QAIlB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,WAAW,CAAC,IAAI,+EAA+E,CAAC,CAAC;YACnI,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,iBAAO,CAAC,MAAM,EAAE,CAAC;QAEhC,KAAK,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YAC/C,MAAM,QAAQ,GAA6D,EAAE,CAAC;YAE9E,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBACf,IAAI,KAAK,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;oBACvB,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACN,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;wBAC1B,IAAI,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBAC1B,CAAC;yBAAM,CAAC;wBACN,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBAC3C,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YACrD,CAAC;YAED,+BAA+B;YAC/B,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,+BAA+B,CAAC,EAAE,CAAC;gBACnD,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,+BAA+B,CAAC,GAAG,IAAI,EAAE,CAAC;YACrE,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,GAAG,CACnC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAwB,EAAE,EAAE;gBAC3F,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACpD,CAAC,CAAC,CACH,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;iBAClD,GAAG,CAAC,CAAC,CAAoB,EAAE,EAAE;gBAC5B,IAAI,gBAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;oBACvB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS,CAAC,CAAC,IAAI,CAAC,CAAC;oBACjD,IAAI,CAAC,OAAE,CAAC,SAAS,CAAC,0BAAU,EAAE,UAAU,CAAC,EAAE,CAAC;wBAC1C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,UAAU,gDAAgD,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;wBACvG,OAAO,IAAI,CAAC;oBACd,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,UAAU,0BAA0B,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;wBAChI,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAa,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;oBACpE,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,0BAA0B,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;oBACjI,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAa,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;gBAChE,CAAC;YACH,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAC7B,CAAC;YACF,MAAM,kBAAkB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;YAE/E,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,qBAAqB,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;YAE9H,iCAAiC;YACjC,iEAAiE;YACjE,0EAA0E;YAC1E,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAoB,EAAE,IAAsB,EAAE,IAA0B,EAAE,EAAE;gBACzF,yEAAyE;gBACzE,sEAAsE;gBACtE,yEAAyE;gBACzE,oEAAoE;gBACpE,oEAAoE;gBACpE,uEAAuE;gBACvE,mBAAmB;gBACnB,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;gBACzE,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACjC,IAAI,EAAE,CAAC;oBACP,OAAO;gBACT,CAAC;gBAED,OAAO,CAAC,UAAU,CAAC,eAAe;qBAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBACT,OAAO,CAAC;yBACL,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC;yBACzB,IAAI,CAAC,GAAG,EAAE;wBACT,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;oBACtL,CAAC,CAAC;yBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;wBACb,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,2BAA2B,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;wBAC/L,MAAM,GAAG,CAAC;oBACZ,CAAC,CAAC,CAAC;gBACP,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;oBACnB,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC;oBAC/D,IAAI,UAAU,EAAE,CAAC;wBACf,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;wBACzK,IAAI,EAAE,CAAC;wBACP,OAAO;oBACT,CAAC;oBAED,mEAAmE;oBACnE,gEAAgE;oBAChE,mEAAmE;oBACnE,oDAAoD;oBACpD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAsC,CAAC;oBAC/F,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,kCAAqB,CAAC,sCAAsC,CAAC,CAAC,CAAC;gBACnG,CAAC,CAAC;oBACF,qEAAqE;oBACrE,8CAA8C;qBAC7C,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,CAAC,CAAC,CAAC;YACH,QAAQ,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YAE7F,MAAM,YAAY,GAAG,KAAK,EAAE,GAAa,EAAE,GAAqB,EAAE,IAA0B,EAAE,EAAE;gBAC9F,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;wBACzD,MAAM,IAAI,GAAG,CAAC,MAAM,iBAAiB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;wBAEjF,IAAI,CAAC;4BACH,MAAM,MAAM,GAAI,IAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;4BAE/D,IAAI,IAAA,gBAAS,EAAC,MAAM,CAAC,EAAE,CAAC;gCACtB,MAAM;qCACH,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;oCACV,IAAI,CAAC,YAAY,wBAAQ,EAAE,CAAC;wCAC1B,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oCAClE,CAAC;oCACD,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC;oCACxB,IAAI,EAAE,CAAC;gCACT,CAAC,CAAC;qCACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oCACb,IAAI,CAAC,GAAG,CAAC,CAAC;gCACZ,CAAC,CAAC,CAAC;4BACP,CAAC;iCAAM,CAAC;gCACN,IAAI,MAAM,YAAY,wBAAQ,EAAE,CAAC;oCAC/B,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;gCACvE,CAAC;gCACD,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC;gCAC7B,IAAI,EAAE,CAAC;4BACT,CAAC;wBACH,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,IAAI,CAAC,GAAG,CAAC,CAAC;wBACZ,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,CAAC,GAAG,CAAC,CAAC;gBACZ,CAAC;YACH,CAAC,CAAC;YAEF,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE;gBAC1C,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;gBAC5B,QAAQ,EAAE,IAAI;aACf,CAAC,CAAC;YAEH,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC5B,QAAQ,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YAE5F,6BAA6B;YAC7B,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBACrC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;gBAC3G,OAAO;YACT,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,IAAA,iCAAmB,GAAE,CAAC,CAAC;YACrC,QAAQ,CAAC,IAAI,CAAC,IAAA,2BAAgB,GAAE,CAAC,CAAC;YAEjC,IAAI,CAAC,OAAe,CAAC,KAAK,CAAC,YAAsB,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtE,CAAC;QAED,SAAS,aAAa,CAAC,MAAW,EAAE,MAAW,EAAE,KAAa;YAC5D,MAAM,OAAO,GAAG,CAAC,GAAoB,EAAE,GAAqB,EAAE,IAA0B,EAAE,EAAE;gBAC1F,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC;qBAC1B,IAAI,CAAC,GAAG,EAAE;oBACT,IAAI,EAAE,CAAC;gBACT,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE;oBAClB,IAAI,CAAC,GAAG,CAAC,CAAC;gBACZ,CAAC,CAAC,CAAC;YACP,CAAC,CAAC;YAEF,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE;gBACrC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI;gBAC9B,QAAQ,EAAE,IAAI;aACf,CAAC,CAAC;YACH,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,KAAK,UAAU,iBAAiB,CAAC,KAAa,EAAE,GAAY,EAAE,GAAqB;YACjF,MAAM,QAAQ,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAqC,CAAC;YAE/D,IAAI,QAAQ,GAAG;gBACb,OAAO,EAAE,EAAE;aACZ,CAAC;YAEF,sDAAsD;YACtD,mFAAmF;YACnF,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC1C,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACxD,MAAM,OAAO,GAAG,MAAM,IAAA,iBAAU,EAAC,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,OAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;gBACtF,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,CAAC,EAAE,CAAC;YAC9D,CAAC,CAAC,CACH,CAAC;YAEF,sDAAsD;YACtD,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC;YAE9F,KAAK,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,YAAY,EAAE,CAAC;gBAChE,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACtB,MAAM,IAAI,kCAAqB,CAAC,iDAAiD,KAAK,CAAC,IAAI;yBAC5E,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;6BAChB,IAAI,CAAC,WAAW,CAAC,IAAI,oDAAoD,CAAC,CAAC;gBAChG,CAAC;gBAED,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;gBAEtG,QAAQ,GAAG,QAAQ,CAAC;gBACpB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;YAC/B,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC;CACF;AAjRD,wCAiRC;AAxQW;IADT,IAAA,eAAU,EAAC,cAAS,CAAC;;kDACY;AAGxB;IADT,IAAA,eAAU,GAAE;8BACU,0BAAa;kDAAC;AAG3B;IADT,IAAA,YAAM,EAAC,MAAM,CAAC;8BACE,SAAG;4CAAC;AAGX;IADT,IAAA,eAAU,GAAE;8BACmB,oCAAiB;2DAA6B;AAGpE;IADT,IAAA,eAAU,EAAC,6BAAa,CAAC;8BACT,6BAAa;4CAAC;AA8PjC,MAAa,WAAY,SAAQ,iBAAY;IAA7C;;QAgCE;;;WAGG;QACO,oBAAe,GAA+B,IAAI,GAAG,EAAE,CAAC;IA8KpE,CAAC;IA5KC;;;;;;;;;;;;OAYG;IACI,KAAK,CAAC,GAAG,CAAC,IAA2B;QAC1C,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,IAAI,+BAA+B,CAAC,CAAC;YACvE,OAAO;QACT,CAAC;QAED,OAAE,CAAC,QAAQ,CAAC,IAAW,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,CAAC,MAAM,OAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAmB,CAAC;QAE5D,MAAM,EAAE,GAAG,IAAI,cAAS,EAAkB,CAAC;QAC3C,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACpB,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC;QACf,EAAE,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACvB,uEAAuE;QACvE,mEAAmE;QACnE,EAAE,CAAC,IAAI,GAAG,QAAQ,CAAC,UAAU,EAAE,UAAU,IAAI,WAAW,CAAC;QAEzD,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,UAAqC;QACzD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,uBAAuB,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAEzD,IAAI,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACjE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,UAAU,CAAC,IAAI,+BAA+B,CAAC,CAAC;YAC7E,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACpE,IAAG,CAAC,UAAU,CAAC,QAAQ,EAAC,CAAC;YACvB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,UAAU,CAAC,IAAI,YAAY,UAAU,CAAC,IAAI,uHAAuH,CAAC,CAAC;YAC/L,OAAO;QACT,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,UAAU,CAAC,IAAI,YAAY,UAAU,CAAC,IAAI,yCAAyC,CAAC,CAAC;QACnH,CAAC;aAAM,CAAC;YACN,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;gBAClE,IAAI,UAAU,CAAC,IAAc,CAAC,EAAE,CAAC;oBAC/B,MAAM,MAAM,GAAG,UAAU,CAAC,IAAc,CAAC,CAAC;oBAE1C,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;wBAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;wBAC5B,IAAI,KAAK,EAAE,CAAC;4BACV,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC;wBACtB,CAAC;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,UAAU,CAAC,IAAI,yBAAyB,IAAc,cAAc,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;gBACjH,CAAC;YACH,CAAC;YAGD,IAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAC,CAAC;gBAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,UAAU,CAAC,IAAI,YAAY,UAAU,CAAC,IAAI,6GAA6G,CAAC,CAAC;gBACrL,OAAO;YACT,CAAC;YAED,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACvD,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;gBACpB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,OAAO;QAElB,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QAEtB,sEAAsE;QACtE,oEAAoE;QACpE,8DAA8D;QAC9D,IAAI,CAAC,iBAAiB,GAAG,iBAAO,CAAC,MAAM,EAAE,CAAC;QAE1C,wCAAwC;QACxC,wEAAwE;QACxE,wEAAwE;QACxE,yCAAyC;QACzC,wEAAwE;QACxE,wEAAwE;QACxE,qEAAqE;QACrE,0CAA0C;QAC1C,wEAAwE;QACxE,qEAAqE;QACrE,yEAAyE;QACzE,6BAA6B;QAC7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC;QAEtC,2EAA2E;QAC3E,yEAAyE;QACzE,wEAAwE;QACxE,MAAM,UAAU,GAAG,IAAI,GAAG,EAAoD,CAAC;QAE/E,KAAK,MAAM,EAAE,IAAI,IAAA,eAAQ,EAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,EAAE,CAAC,IAAI,EAAC,CAAC;gBACZ,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,YAAY,EAAE,CAAC,IAAI,mHAAmH,CAAC,CAAC;gBAC3K,SAAS;YACX,CAAC;YAAA,CAAC;YAEF,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,IAA6B,EAAE,EAAE,CAAC,CAAC;YACrD,OAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC;YACxC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,IAAI,+BAA+B,CAAC,CAAC;QACvF,CAAC;QAED,MAAM,SAAS,GAAG,CAAC,MAAM,OAAE,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAqB,CAAC;QAEvF,qEAAqE;QACrE,4EAA4E;QAC5E,wEAAwE;QACxE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAoC,CAAC,CAAC,CAAC;QAEtF,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC;YACpC,0EAA0E;YAC1E,sEAAsE;YACtE,iEAAiE;YACjE,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;YAEtF,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,SAAS;YACX,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvB,wEAAwE;gBACxE,4DAA4D;gBAC5D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,kBAAkB,UAAU,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;YACtF,CAAC;iBAAM,CAAC;gBACN,sEAAsE;gBACtE,sEAAsE;gBACtE,kEAAkE;gBAClE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,UAAU,CAAC,WAAW,CAAC,IAAI,YAAY,EAAE,CAAC,IAAI,4DAA4D,UAAU,CAAC,WAAW,CAAC,IAAI,QAAQ,EAAE,CAAC,IAAI,kFAAkF,CAAC,CAAC;YACtQ,CAAC;QACH,CAAC;QAED,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAoC,CAAC;YAC3D,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,EAAE,GAAG,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,cAAS,EAAkB,EAAE;gBACtE,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI;gBACJ,QAAQ;gBACR,qEAAqE;gBACrE,oEAAoE;gBACpE,qEAAqE;gBACrE,yBAAyB;gBACzB,IAAI,EAAE,QAAQ,CAAC,UAAU,EAAE,UAAU,IAAI,MAAM;aACV,CAAC,CAAC;YACzC,yEAAyE;YACzE,IAAI,CAAC,EAAE,CAAC,QAAQ;gBAAE,EAAE,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACzC,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC;QAED,yEAAyE;QACzE,sEAAsE;QACtE,+DAA+D;QAC/D,iEAAiE;QACjE,mEAAmE;QACnE,gDAAgD;QAChD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC1C,CAAC;CACF;AAlND,kCAkNC;AA1MQ;IADN,IAAA,0BAAa,EAAC,oBAAoB,EAAE,yBAAyB,CAAC;;gDACA;AAGrD;IADT,IAAA,YAAM,EAAC,MAAM,CAAC;8BACC,SAAG;wCAAC;AAGV;IADT,IAAA,eAAU,EAAC,cAAS,CAAC;;8CACW;AAGvB;IADT,IAAA,eAAU,GAAE;8BACM,sBAAU;2CAAC;AAGpB;IADT,IAAA,eAAU,GAAE;8BACgB,iCAAsB;qDAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type express from 'express';
|
|
2
|
+
export declare const configuredCookieParser: express.RequestHandler;
|
|
3
|
+
/**
|
|
4
|
+
* Drops the memoised parser. Only needed where the configured secret can change
|
|
5
|
+
* within one process, ie. tests.
|
|
6
|
+
*/
|
|
7
|
+
export declare function resetCookieParser(): void;
|
|
8
|
+
//# sourceMappingURL=cookie.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookie.d.ts","sourceRoot":"","sources":["../../src/cookie.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAoBnC,eAAO,MAAM,sBAAsB,EAAE,OAAO,CAAC,cAO5C,CAAC;AAEF;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAExC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.configuredCookieParser = void 0;
|
|
7
|
+
exports.resetCookieParser = resetCookieParser;
|
|
8
|
+
const cookie_parser_1 = __importDefault(require("cookie-parser"));
|
|
9
|
+
const di_1 = require("@spinajs/di");
|
|
10
|
+
const configuration_1 = require("@spinajs/configuration");
|
|
11
|
+
/**
|
|
12
|
+
* cookie-parser bound to the configured `http.cookie.secret`.
|
|
13
|
+
*
|
|
14
|
+
* It MUST be constructed with the secret: that is what puts `req.secret` in place,
|
|
15
|
+
* and without it express throws `cookieParser("secret") required for signed cookies`
|
|
16
|
+
* from any `res.cookie(..., { signed: true })`. Logging in sets a signed `ssid`
|
|
17
|
+
* cookie, so a secretless parser breaks authentication outright.
|
|
18
|
+
*
|
|
19
|
+
* The secret is read on FIRST REQUEST rather than when this module is evaluated,
|
|
20
|
+
* because the config file that installs this middleware is itself loaded before the
|
|
21
|
+
* Configuration service exists. Capturing the value at module scope would freeze the
|
|
22
|
+
* shipped default and silently ignore whatever the app configured.
|
|
23
|
+
*/
|
|
24
|
+
let parser;
|
|
25
|
+
const configuredCookieParser = (req, res, next) => {
|
|
26
|
+
if (!parser) {
|
|
27
|
+
const secret = di_1.DI.get(configuration_1.Configuration)?.get('http.cookie.secret');
|
|
28
|
+
parser = (0, cookie_parser_1.default)(secret);
|
|
29
|
+
}
|
|
30
|
+
return parser(req, res, next);
|
|
31
|
+
};
|
|
32
|
+
exports.configuredCookieParser = configuredCookieParser;
|
|
33
|
+
/**
|
|
34
|
+
* Drops the memoised parser. Only needed where the configured secret can change
|
|
35
|
+
* within one process, ie. tests.
|
|
36
|
+
*/
|
|
37
|
+
function resetCookieParser() {
|
|
38
|
+
parser = undefined;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=cookie.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookie.js","sourceRoot":"","sources":["../../src/cookie.ts"],"names":[],"mappings":";;;;;;AAiCA,8CAEC;AAlCD,kEAAyC;AACzC,oCAAiC;AACjC,0DAAuD;AAEvD;;;;;;;;;;;;GAYG;AACH,IAAI,MAA0C,CAAC;AAExC,MAAM,sBAAsB,GAA2B,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;IAC/E,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,OAAE,CAAC,GAAG,CAAC,6BAAa,CAAC,EAAE,GAAG,CAAS,oBAAoB,CAAC,CAAC;QACxE,MAAM,GAAG,IAAA,uBAAY,EAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;AAChC,CAAC,CAAC;AAPW,QAAA,sBAAsB,0BAOjC;AAEF;;;GAGG;AACH,SAAgB,iBAAiB;IAC/B,MAAM,GAAG,SAAS,CAAC;AACrB,CAAC"}
|
package/lib/cjs/decorators.d.ts
CHANGED
|
@@ -63,19 +63,25 @@ export declare function ParamField(): (target: any, propertyKey?: string | symbo
|
|
|
63
63
|
*
|
|
64
64
|
* @param schema - parameter json schema for optional validation
|
|
65
65
|
*/
|
|
66
|
-
export declare function Query(schema?: any
|
|
66
|
+
export declare function Query(schema?: any, options?: {
|
|
67
|
+
required?: boolean;
|
|
68
|
+
}): (target: any, propertyKey?: string | symbol, indexOrDescriptor?: number | PropertyDescriptor) => void;
|
|
67
69
|
/**
|
|
68
70
|
* Route parameter taken from message body (POST)
|
|
69
71
|
*
|
|
70
72
|
* @param schema - parameter json schema for optional validation
|
|
71
73
|
*/
|
|
72
|
-
export declare function Body(
|
|
74
|
+
export declare function Body(options?: {
|
|
75
|
+
required?: boolean;
|
|
76
|
+
}): (target: any, propertyKey?: string | symbol, indexOrDescriptor?: number | PropertyDescriptor) => void;
|
|
73
77
|
/**
|
|
74
78
|
* Route parameter taken from url parameters eg. route/:id
|
|
75
79
|
*
|
|
76
80
|
* @param schema - parameter json schema for optional validation
|
|
77
81
|
*/
|
|
78
|
-
export declare function Param(schema?: any
|
|
82
|
+
export declare function Param(schema?: any, options?: {
|
|
83
|
+
required?: boolean;
|
|
84
|
+
}): (target: any, propertyKey?: string | symbol, indexOrDescriptor?: number | PropertyDescriptor) => void;
|
|
79
85
|
/**
|
|
80
86
|
* Gets parameter from request header. If not keyname is provided
|
|
81
87
|
* variable name is used as header key name
|
|
@@ -84,7 +90,9 @@ export declare function Param(schema?: any): (target: any, propertyKey?: string
|
|
|
84
90
|
* @param schema - schema for validation ( optional )
|
|
85
91
|
* @returns
|
|
86
92
|
*/
|
|
87
|
-
export declare function Header(keyName?: string, schema?: any
|
|
93
|
+
export declare function Header(keyName?: string, schema?: any, options?: {
|
|
94
|
+
required?: boolean;
|
|
95
|
+
}): (target: any, propertyKey?: string | symbol, indexOrDescriptor?: number | PropertyDescriptor) => void;
|
|
88
96
|
/**
|
|
89
97
|
*
|
|
90
98
|
* Parameter as file
|
|
@@ -92,6 +100,40 @@ export declare function Header(keyName?: string, schema?: any): (target: any, pr
|
|
|
92
100
|
* @param options - upload options
|
|
93
101
|
*/
|
|
94
102
|
export declare function File(options?: IUploadOptions): (target: any, propertyKey?: string | symbol, indexOrDescriptor?: number | PropertyDescriptor) => void;
|
|
103
|
+
/**
|
|
104
|
+
* Multiple uploaded files for a form field, always returned as an array
|
|
105
|
+
* (even when a single file is sent). Semantic alias over {@link File}.
|
|
106
|
+
*
|
|
107
|
+
* @param options - upload options
|
|
108
|
+
*/
|
|
109
|
+
export declare function Files(options?: IUploadOptions): (target: any, propertyKey?: string | symbol, indexOrDescriptor?: number | PropertyDescriptor) => void;
|
|
110
|
+
/**
|
|
111
|
+
* Client IP address (as resolved by the RealIp middleware).
|
|
112
|
+
*/
|
|
113
|
+
export declare function Ip(): (target: any, propertyKey?: string | symbol, indexOrDescriptor?: number | PropertyDescriptor) => void;
|
|
114
|
+
/**
|
|
115
|
+
* Per-request correlation id (matches the `x-request-id` response header).
|
|
116
|
+
*/
|
|
117
|
+
export declare function RequestId(): (target: any, propertyKey?: string | symbol, indexOrDescriptor?: number | PropertyDescriptor) => void;
|
|
118
|
+
/**
|
|
119
|
+
* `User-Agent` request header.
|
|
120
|
+
*/
|
|
121
|
+
export declare function UserAgent(): (target: any, propertyKey?: string | symbol, indexOrDescriptor?: number | PropertyDescriptor) => void;
|
|
122
|
+
/**
|
|
123
|
+
* `Referer` (or `Referrer`) request header.
|
|
124
|
+
*/
|
|
125
|
+
export declare function Referer(): (target: any, propertyKey?: string | symbol, indexOrDescriptor?: number | PropertyDescriptor) => void;
|
|
126
|
+
/**
|
|
127
|
+
* Raw request body Buffer, for webhook signature verification. Captured for
|
|
128
|
+
* JSON requests via the express.json `verify` hook.
|
|
129
|
+
*/
|
|
130
|
+
export declare function RawBody(): (target: any, propertyKey?: string | symbol, indexOrDescriptor?: number | PropertyDescriptor) => void;
|
|
131
|
+
/**
|
|
132
|
+
* Parses an XML request body into an object.
|
|
133
|
+
*
|
|
134
|
+
* @param options - fast-xml-parser options (optional)
|
|
135
|
+
*/
|
|
136
|
+
export declare function FromXml(options?: any): (target: any, propertyKey?: string | symbol, indexOrDescriptor?: number | PropertyDescriptor) => void;
|
|
95
137
|
/**
|
|
96
138
|
* Data taken from cvs file that is uploaded. Actions receives parsed data
|
|
97
139
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"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"}
|