tspace-spear 1.2.9-beta.1 → 1.3.0
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/README.md +103 -0
- package/dist/cli/generators/controller/template.d.ts +1 -1
- package/dist/cli/generators/controller/template.js +1 -1
- package/dist/lib/core/client/index.js +19 -23
- package/dist/lib/core/client/index.js.map +1 -1
- package/dist/lib/core/client/types.d.ts +4 -3
- package/dist/lib/core/compiler/generator.js +2 -2
- package/dist/lib/core/compiler/generator.js.map +1 -1
- package/dist/lib/core/compiler/pre-routes.d.ts +260 -6
- package/dist/lib/core/compiler/pre-routes.js +54 -4
- package/dist/lib/core/compiler/pre-routes.js.map +1 -1
- package/dist/lib/core/const/index.d.ts +12 -0
- package/dist/lib/core/const/index.js +6 -1
- package/dist/lib/core/const/index.js.map +1 -1
- package/dist/lib/core/decorators/headers.js +1 -0
- package/dist/lib/core/decorators/headers.js.map +1 -1
- package/dist/lib/core/decorators/middleware.d.ts +9 -3
- package/dist/lib/core/decorators/middleware.js +55 -15
- package/dist/lib/core/decorators/middleware.js.map +1 -1
- package/dist/lib/core/decorators/statusCode.js.map +1 -1
- package/dist/lib/core/server/fast-router.d.ts +5 -5
- package/dist/lib/core/server/fast-router.js +2 -2
- package/dist/lib/core/server/fast-router.js.map +1 -1
- package/dist/lib/core/server/http/index.d.ts +22 -0
- package/dist/lib/core/server/http/index.js +220 -0
- package/dist/lib/core/server/http/index.js.map +1 -0
- package/dist/lib/core/server/index.d.ts +3 -2
- package/dist/lib/core/server/index.js +94 -60
- package/dist/lib/core/server/index.js.map +1 -1
- package/dist/lib/core/server/net/index.d.ts +13 -8
- package/dist/lib/core/server/net/index.js +2 -2
- package/dist/lib/core/server/net/index.js.map +1 -1
- package/dist/lib/core/server/parser-factory.d.ts +3 -4
- package/dist/lib/core/server/parser-factory.js +17 -157
- package/dist/lib/core/server/parser-factory.js.map +1 -1
- package/dist/lib/core/server/response.d.ts +1 -2
- package/dist/lib/core/server/response.js +173 -171
- package/dist/lib/core/server/response.js.map +1 -1
- package/dist/lib/core/server/uWS/index.d.ts +2 -3
- package/dist/lib/core/server/uWS/index.js +15 -10
- package/dist/lib/core/server/uWS/index.js.map +1 -1
- package/dist/lib/core/types/index.d.ts +15 -6
- package/dist/lib/core/utils/index.d.ts +3 -3
- package/dist/lib/core/utils/index.js +19 -16
- package/dist/lib/core/utils/index.js.map +1 -1
- package/package.json +27 -10
- package/dist/cli/app.d.ts +0 -1
- package/dist/cli/app.js +0 -28
- package/dist/cli/app.js.map +0 -1
- package/dist/cli/controller.d.ts +0 -1
- package/dist/cli/controller.js +0 -158
- package/dist/cli/controller.js.map +0 -1
- package/dist/lib/core/compiler/types.d.ts +0 -39
- package/dist/lib/core/compiler/types.js +0 -3
- package/dist/lib/core/compiler/types.js.map +0 -1
|
@@ -14,11 +14,61 @@ exports.appRoutes = {
|
|
|
14
14
|
query: { id: 123, name: "example" },
|
|
15
15
|
body: undefined,
|
|
16
16
|
files: undefined,
|
|
17
|
-
response: {
|
|
18
|
-
{ id: 123, name: "example" },
|
|
19
|
-
{ id: 123, name: "example" },
|
|
20
|
-
{ id: 123, name: "example" }
|
|
17
|
+
response: { message: "example", query: { id: 123, name: "example" }, cats: [
|
|
18
|
+
{ id: 123, name: "example", age: 123 },
|
|
19
|
+
{ id: 123, name: "example", age: 123 },
|
|
20
|
+
{ id: 123, name: "example", age: 123 }
|
|
21
21
|
] }
|
|
22
|
+
},
|
|
23
|
+
POST: {
|
|
24
|
+
params: undefined,
|
|
25
|
+
query: undefined,
|
|
26
|
+
body: { name: "example", age: 123 },
|
|
27
|
+
files: undefined,
|
|
28
|
+
response: { message: "example", cat: { name: "example", age: 123, id: 123 } }
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"/cats/:id": {
|
|
32
|
+
GET: {
|
|
33
|
+
params: { id: 123 },
|
|
34
|
+
query: undefined,
|
|
35
|
+
body: undefined,
|
|
36
|
+
files: undefined,
|
|
37
|
+
response: { message: "example", cat: { id: 123, name: "example", age: 123 } }
|
|
38
|
+
},
|
|
39
|
+
PUT: {
|
|
40
|
+
params: { id: 123 },
|
|
41
|
+
query: undefined,
|
|
42
|
+
body: { name: "example", age: 123 },
|
|
43
|
+
files: undefined,
|
|
44
|
+
response: { message: "example", cat: { id: 123, name: "example", age: 123 } }
|
|
45
|
+
},
|
|
46
|
+
PATCH: {
|
|
47
|
+
params: { id: 123 },
|
|
48
|
+
query: undefined,
|
|
49
|
+
body: { name: "example", age: 123 },
|
|
50
|
+
files: undefined,
|
|
51
|
+
response: { message: "example", cat: { id: 123, name: "example", age: 123 } }
|
|
52
|
+
},
|
|
53
|
+
DELETE: {
|
|
54
|
+
params: { id: 123 },
|
|
55
|
+
query: undefined,
|
|
56
|
+
body: undefined,
|
|
57
|
+
files: undefined,
|
|
58
|
+
response: { message: "example", deleted: true }
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
"/cats/upload": {
|
|
62
|
+
POST: {
|
|
63
|
+
params: undefined,
|
|
64
|
+
query: undefined,
|
|
65
|
+
body: undefined,
|
|
66
|
+
files: { image: [
|
|
67
|
+
{ size: 123, sizes: { bytes: 123, kb: 123, mb: 123, gb: 123 }, tempFilePath: "example", tempFileName: "example", mimetype: "example", extension: "example", name: "example" },
|
|
68
|
+
{ size: 123, sizes: { bytes: 123, kb: 123, mb: 123, gb: 123 }, tempFilePath: "example", tempFileName: "example", mimetype: "example", extension: "example", name: "example" },
|
|
69
|
+
{ size: 123, sizes: { bytes: 123, kb: 123, mb: 123, gb: 123 }, tempFilePath: "example", tempFileName: "example", mimetype: "example", extension: "example", name: "example" }
|
|
70
|
+
] },
|
|
71
|
+
response: { message: "example", image: { size: 123, sizes: { bytes: 123, kb: 123, mb: 123, gb: 123 }, tempFilePath: "example", tempFileName: "example", mimetype: "example", extension: "example", name: "example" } }
|
|
22
72
|
}
|
|
23
73
|
}
|
|
24
74
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pre-routes.js","sourceRoot":"","sources":["../../../../src/lib/core/compiler/pre-routes.ts"],"names":[],"mappings":";AACA,cAAc;AACd,sBAAsB;AACtB,cAAc;AACd,kDAAkD;AAClD,wCAAwC;AACxC,sBAAsB;;;AAET,QAAA,SAAS,GAAG;IAEvB,OAAO,EAAE;QAEP,GAAG,EAAE;YACH,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE;YACnC,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"pre-routes.js","sourceRoot":"","sources":["../../../../src/lib/core/compiler/pre-routes.ts"],"names":[],"mappings":";AACA,cAAc;AACd,sBAAsB;AACtB,cAAc;AACd,kDAAkD;AAClD,wCAAwC;AACxC,sBAAsB;;;AAET,QAAA,SAAS,GAAG;IAEvB,OAAO,EAAE;QAEP,GAAG,EAAE;YACH,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE;YACnC,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE;oBACzE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE;oBACtC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE;oBACtC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE;iBACvC,EAAE;SACJ;QAED,IAAI,EAAE;YACJ,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE;YACnC,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE;SAC9E;KACF;IAED,WAAW,EAAE;QAEX,GAAG,EAAE;YACH,MAAM,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE;YACnB,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;SAC9E;QAED,GAAG,EAAE;YACH,MAAM,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE;YACnB,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE;YACnC,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;SAC9E;QAED,KAAK,EAAE;YACL,MAAM,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE;YACnB,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE;YACnC,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;SAC9E;QAED,MAAM,EAAE;YACN,MAAM,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE;YACnB,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE;SAChD;KACF;IAED,cAAc,EAAE;QAEd,IAAI,EAAE;YACJ,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,EAAE,KAAK,EAAE;oBACd,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC7K,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC7K,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;iBAC9K,EAAE;YACH,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;SACvN;KACF;CACF,CAAC;AAoED,CAAC"}
|
|
@@ -75,6 +75,12 @@ export declare const HEADER_CONTENT_TYPES: {
|
|
|
75
75
|
readonly js: {
|
|
76
76
|
readonly 'Content-Type': "application/javascript";
|
|
77
77
|
};
|
|
78
|
+
readonly jsText: {
|
|
79
|
+
readonly 'Content-Type': "application/javascript";
|
|
80
|
+
};
|
|
81
|
+
readonly jsX: {
|
|
82
|
+
readonly 'Content-Type': "application/x-javascript";
|
|
83
|
+
};
|
|
78
84
|
readonly json: {
|
|
79
85
|
readonly 'Content-Type': "application/json";
|
|
80
86
|
};
|
|
@@ -150,4 +156,10 @@ export declare const HEADER_CONTENT_TYPES: {
|
|
|
150
156
|
readonly octet: {
|
|
151
157
|
readonly 'Content-Type': "application/octet-stream";
|
|
152
158
|
};
|
|
159
|
+
readonly xml: {
|
|
160
|
+
readonly 'Content-Type': "application/xml";
|
|
161
|
+
};
|
|
162
|
+
readonly xmlText: {
|
|
163
|
+
readonly 'Content-Type': "text/xml";
|
|
164
|
+
};
|
|
153
165
|
};
|
|
@@ -70,6 +70,8 @@ exports.HEADER_CONTENT_TYPES = {
|
|
|
70
70
|
html: { 'Content-Type': 'text/html' },
|
|
71
71
|
css: { 'Content-Type': 'text/css' },
|
|
72
72
|
js: { 'Content-Type': 'application/javascript' },
|
|
73
|
+
jsText: { 'Content-Type': 'application/javascript' },
|
|
74
|
+
jsX: { 'Content-Type': 'application/x-javascript' },
|
|
73
75
|
json: { 'Content-Type': 'application/json' },
|
|
74
76
|
form: { 'Content-Type': 'application/x-www-form-urlencoded' },
|
|
75
77
|
multipart: { 'Content-Type': 'multipart/form-data' },
|
|
@@ -100,6 +102,9 @@ exports.HEADER_CONTENT_TYPES = {
|
|
|
100
102
|
ttf: { 'Content-Type': 'font/ttf' },
|
|
101
103
|
otf: { 'Content-Type': 'font/otf' },
|
|
102
104
|
// binary
|
|
103
|
-
octet: { 'Content-Type': 'application/octet-stream' }
|
|
105
|
+
octet: { 'Content-Type': 'application/octet-stream' },
|
|
106
|
+
// xml
|
|
107
|
+
xml: { 'Content-Type': 'application/xml' },
|
|
108
|
+
xmlText: { 'Content-Type': 'text/xml' },
|
|
104
109
|
};
|
|
105
110
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/core/const/index.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG;IAChC,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,+BAA+B;IACpC,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,kBAAkB;IACvB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,kBAAkB;IACvB,GAAG,EAAE,mBAAmB;IACxB,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,kBAAkB;IACvB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,gBAAgB;IACrB,GAAG,EAAE,+BAA+B;IACpC,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,mBAAmB;IACxB,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,wBAAwB;IAC7B,GAAG,EAAE,uBAAuB;IAC5B,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,sBAAsB;IAC3B,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,mBAAmB;IACxB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,kBAAkB;IACvB,GAAG,EAAE,uBAAuB;IAC5B,GAAG,EAAE,mBAAmB;IACxB,GAAG,EAAE,iCAAiC;IACtC,GAAG,EAAE,+BAA+B;IACpC,GAAG,EAAE,uBAAuB;IAC5B,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,4BAA4B;IACjC,GAAG,EAAE,yBAAyB;IAC9B,GAAG,EAAE,sBAAsB;IAC3B,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,iCAAiC;CAChC,CAAC;AAGE,QAAA,oBAAoB,GAAG;IAClC,IAAI,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/core/const/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,6 +34,7 @@ const WriteHeader = (statusCode, contentType) => {
|
|
|
34
34
|
return (target, key, descriptor) => {
|
|
35
35
|
const originalMethod = descriptor.value;
|
|
36
36
|
descriptor.value = async function (ctx, next) {
|
|
37
|
+
//@ts-ignore
|
|
37
38
|
ctx.res.writeHead(...[statusCode, contentType]);
|
|
38
39
|
return await originalMethod.call(this, ctx, next);
|
|
39
40
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headers.js","sourceRoot":"","sources":["../../../../src/lib/core/decorators/headers.ts"],"names":[],"mappings":";;;AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACI,MAAM,WAAW,GAAG,CAAC,UAAkB,EAAE,WAAgC,EAAmB,EAAE;IACnG,OAAO,CAAC,MAAW,EAAE,GAAQ,EAAE,UAA8B,EAAE,EAAE;QAC/D,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC;QAExC,UAAU,CAAC,KAAK,GAAG,KAAK,WAAW,GAAc,EAAE,IAAoB;YACrE,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;YAChD,OAAO,MAAM,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QACpD,CAAC,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"headers.js","sourceRoot":"","sources":["../../../../src/lib/core/decorators/headers.ts"],"names":[],"mappings":";;;AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACI,MAAM,WAAW,GAAG,CAAC,UAAkB,EAAE,WAAgC,EAAmB,EAAE;IACnG,OAAO,CAAC,MAAW,EAAE,GAAQ,EAAE,UAA8B,EAAE,EAAE;QAC/D,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC;QAExC,UAAU,CAAC,KAAK,GAAG,KAAK,WAAW,GAAc,EAAE,IAAoB;YACrE,YAAY;YACZ,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;YAChD,OAAO,MAAM,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QACpD,CAAC,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC,CAAC;AAZW,QAAA,WAAW,eAYtB"}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import { T } from '../types';
|
|
2
|
+
type MiddlewareDecorator = {
|
|
3
|
+
<TFunction extends Function>(target: TFunction): void | TFunction;
|
|
4
|
+
<T>(target: Object, propertyKey: string | symbol, descriptor: TypedPropertyDescriptor<T>): void | TypedPropertyDescriptor<T>;
|
|
5
|
+
};
|
|
6
|
+
type MiddlewareClass = new (...args: any) => any;
|
|
2
7
|
/**
|
|
3
8
|
* Attaches a middleware function to a controller method.
|
|
4
9
|
*
|
|
@@ -34,9 +39,9 @@ import { T } from '../types';
|
|
|
34
39
|
* ```
|
|
35
40
|
*
|
|
36
41
|
* @param {T.ContextHandler[]} middlewares - Middleware function to execute before the route handler.
|
|
37
|
-
* @returns {
|
|
42
|
+
* @returns {MiddlewareDecorator}
|
|
38
43
|
*/
|
|
39
|
-
export declare
|
|
44
|
+
export declare function Middleware(...middlewares: (T.ContextHandler | T.ContextHandler[])[] | (MiddlewareClass | MiddlewareClass[])[]): MiddlewareDecorator;
|
|
40
45
|
/**
|
|
41
46
|
* Attaches a middleware function to a controller method.
|
|
42
47
|
*
|
|
@@ -74,4 +79,5 @@ export declare const Middleware: (...middlewares: (T.ContextHandler | T.ContextH
|
|
|
74
79
|
* @param {T.ContextHandler[]} middlewares - Middleware function to execute before the route handler.
|
|
75
80
|
* @returns {MethodDecorator}
|
|
76
81
|
*/
|
|
77
|
-
export declare const UseGuards:
|
|
82
|
+
export declare const UseGuards: typeof Middleware;
|
|
83
|
+
export {};
|
|
@@ -1,7 +1,36 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.UseGuards =
|
|
3
|
+
exports.UseGuards = void 0;
|
|
4
|
+
exports.Middleware = Middleware;
|
|
4
5
|
const metadata_1 = require("../metadata");
|
|
6
|
+
const normalizeMiddlewares = (mid) => {
|
|
7
|
+
const result = [];
|
|
8
|
+
const visit = (item) => {
|
|
9
|
+
if (Array.isArray(item)) {
|
|
10
|
+
item.forEach(visit);
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
if (!item)
|
|
14
|
+
return;
|
|
15
|
+
if (typeof item === "function") {
|
|
16
|
+
const proto = item.prototype;
|
|
17
|
+
if (proto && proto !== Object.prototype) {
|
|
18
|
+
const instance = new item();
|
|
19
|
+
Object.getOwnPropertyNames(proto)
|
|
20
|
+
.filter(name => name !== "constructor")
|
|
21
|
+
.forEach(name => {
|
|
22
|
+
if (typeof instance[name] === "function") {
|
|
23
|
+
result.push(instance[name].bind(instance));
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
result.push(item);
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
visit(mid);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
5
34
|
/**
|
|
6
35
|
* Attaches a middleware function to a controller method.
|
|
7
36
|
*
|
|
@@ -37,34 +66,45 @@ const metadata_1 = require("../metadata");
|
|
|
37
66
|
* ```
|
|
38
67
|
*
|
|
39
68
|
* @param {T.ContextHandler[]} middlewares - Middleware function to execute before the route handler.
|
|
40
|
-
* @returns {
|
|
69
|
+
* @returns {MiddlewareDecorator}
|
|
41
70
|
*/
|
|
42
|
-
|
|
43
|
-
return (target,
|
|
71
|
+
function Middleware(...middlewares) {
|
|
72
|
+
return ((target, propertyKey, descriptor) => {
|
|
73
|
+
if (descriptor == null) {
|
|
74
|
+
Reflect.defineMetadata(metadata_1.MIDDLEWARE_METADATA, middlewares.flat(), target);
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
44
77
|
const originalMethod = descriptor.value;
|
|
45
78
|
descriptor.value = function (ctx, next) {
|
|
46
79
|
try {
|
|
47
|
-
|
|
48
|
-
let index = 0;
|
|
80
|
+
let groupIndex = 0;
|
|
49
81
|
const nextMiddleware = (err) => {
|
|
50
82
|
if (err) {
|
|
51
83
|
return next(err);
|
|
52
84
|
}
|
|
53
|
-
const
|
|
54
|
-
if (
|
|
85
|
+
const currentMiddlewares = normalizeMiddlewares(middlewares.flat()[groupIndex++]);
|
|
86
|
+
if (currentMiddlewares.length === 0) {
|
|
55
87
|
return originalMethod.call(this, ctx, next);
|
|
56
88
|
}
|
|
57
|
-
|
|
89
|
+
const last = currentMiddlewares.length - 1;
|
|
90
|
+
for (let i = 0; i <= last; i++) {
|
|
91
|
+
const middleware = currentMiddlewares[i];
|
|
92
|
+
if (i === last) {
|
|
93
|
+
return middleware(ctx, nextMiddleware);
|
|
94
|
+
}
|
|
95
|
+
middleware(ctx, nextMiddleware);
|
|
96
|
+
continue;
|
|
97
|
+
}
|
|
58
98
|
};
|
|
59
99
|
return nextMiddleware();
|
|
60
100
|
}
|
|
61
|
-
catch (
|
|
62
|
-
return next(
|
|
101
|
+
catch (err) {
|
|
102
|
+
return next(err);
|
|
63
103
|
}
|
|
64
104
|
};
|
|
65
|
-
};
|
|
66
|
-
}
|
|
67
|
-
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
;
|
|
68
108
|
/**
|
|
69
109
|
* Attaches a middleware function to a controller method.
|
|
70
110
|
*
|
|
@@ -102,5 +142,5 @@ exports.Middleware = Middleware;
|
|
|
102
142
|
* @param {T.ContextHandler[]} middlewares - Middleware function to execute before the route handler.
|
|
103
143
|
* @returns {MethodDecorator}
|
|
104
144
|
*/
|
|
105
|
-
exports.UseGuards =
|
|
145
|
+
exports.UseGuards = Middleware;
|
|
106
146
|
//# sourceMappingURL=middleware.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../../src/lib/core/decorators/middleware.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../../src/lib/core/decorators/middleware.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statusCode.js","sourceRoot":"","sources":["../../../../src/lib/core/decorators/statusCode.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACI,MAAM,UAAU,GAAG,CAAC,UAAwB,EAAmB,EAAE;IACpE,OAAO,CAAC,MAAW,EAAE,GAAQ,EAAE,UAA8B,EAAE,EAAE;QAC7D,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC;QAExC,MAAM,IAAI,GAAG,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC;QAE1E,UAAU,CAAC,KAAK,GAAG,KAAK,WAAW,GAAc,EAAE,IAAoB;YACnE,IAAG,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBACtB,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"statusCode.js","sourceRoot":"","sources":["../../../../src/lib/core/decorators/statusCode.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACI,MAAM,UAAU,GAAG,CAAC,UAAwB,EAAmB,EAAE;IACpE,OAAO,CAAC,MAAW,EAAE,GAAQ,EAAE,UAA8B,EAAE,EAAE;QAC7D,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC;QAExC,MAAM,IAAI,GAAG,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC;QAE1E,UAAU,CAAC,KAAK,GAAG,KAAK,WAAW,GAAc,EAAE,IAAoB;YACnE,IAAG,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBACtB,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,IAAoB,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YACpF,CAAC;YACD,OAAO,MAAM,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QACtD,CAAC,CAAC;QAEF,OAAO,UAAU,CAAC;IACtB,CAAC,CAAC;AACN,CAAC,CAAC;AAfW,QAAA,UAAU,cAerB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
type Handler = (req:
|
|
1
|
+
import type { T } from "../..";
|
|
2
|
+
type Handler = (req: T.Request, res: T.Response, params: Record<string, string>) => any;
|
|
3
3
|
export declare class FastRouter {
|
|
4
4
|
private trees;
|
|
5
5
|
private _routes;
|
|
@@ -113,8 +113,8 @@ export declare class FastRouter {
|
|
|
113
113
|
* It supports parameterized routes, static routes, and (optionally)
|
|
114
114
|
* wildcard matching depending on router implementation.
|
|
115
115
|
*
|
|
116
|
-
* @param {
|
|
117
|
-
* @param {
|
|
116
|
+
* @param {T.Request} req Incoming HTTP request object
|
|
117
|
+
* @param {T.Response} res Server response object used to send output
|
|
118
118
|
*
|
|
119
119
|
* @returns void
|
|
120
120
|
*
|
|
@@ -125,7 +125,7 @@ export declare class FastRouter {
|
|
|
125
125
|
* This is typically called by the HTTP server layer and should not
|
|
126
126
|
* be invoked directly in most application code.
|
|
127
127
|
*/
|
|
128
|
-
lookup(req:
|
|
128
|
+
lookup(req: T.Request, res: T.Response): any;
|
|
129
129
|
private _createNode;
|
|
130
130
|
private _add;
|
|
131
131
|
private _extractParams;
|
|
@@ -160,8 +160,8 @@ class FastRouter {
|
|
|
160
160
|
* It supports parameterized routes, static routes, and (optionally)
|
|
161
161
|
* wildcard matching depending on router implementation.
|
|
162
162
|
*
|
|
163
|
-
* @param {
|
|
164
|
-
* @param {
|
|
163
|
+
* @param {T.Request} req Incoming HTTP request object
|
|
164
|
+
* @param {T.Response} res Server response object used to send output
|
|
165
165
|
*
|
|
166
166
|
* @returns void
|
|
167
167
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fast-router.js","sourceRoot":"","sources":["../../../../src/lib/core/server/fast-router.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"fast-router.js","sourceRoot":"","sources":["../../../../src/lib/core/server/fast-router.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { IncomingMessage, ServerResponse } from "http";
|
|
2
|
+
import type { T } from "../../types";
|
|
3
|
+
export declare const httpAdaptRequestResponse: (req: IncomingMessage, res: ServerResponse) => {
|
|
4
|
+
req: T.Request;
|
|
5
|
+
res: T.Response;
|
|
6
|
+
};
|
|
7
|
+
export declare const httpBody: (req: T.Request, res: T.Response) => Promise<unknown>;
|
|
8
|
+
export declare const httpfiles: ({ req, res, options, }: {
|
|
9
|
+
req: T.Request;
|
|
10
|
+
res: T.Response;
|
|
11
|
+
options: {
|
|
12
|
+
limit: number;
|
|
13
|
+
tempFileDir: string;
|
|
14
|
+
removeTempFile: {
|
|
15
|
+
remove: boolean;
|
|
16
|
+
ms: number;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
}) => Promise<{
|
|
20
|
+
body: T.Body;
|
|
21
|
+
files: T.FileUpload;
|
|
22
|
+
}>;
|
|
@@ -0,0 +1,220 @@
|
|
|
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.httpfiles = exports.httpBody = exports.httpAdaptRequestResponse = void 0;
|
|
7
|
+
const fs_1 = __importDefault(require("fs"));
|
|
8
|
+
const path_1 = __importDefault(require("path"));
|
|
9
|
+
const mime_types_1 = __importDefault(require("mime-types"));
|
|
10
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
11
|
+
const string_decoder_1 = require("string_decoder");
|
|
12
|
+
const busboy_1 = __importDefault(require("busboy"));
|
|
13
|
+
const utils_1 = require("../../utils");
|
|
14
|
+
const httpAdaptRequestResponse = (req, res) => {
|
|
15
|
+
const headers = req.headers || {};
|
|
16
|
+
const request = {
|
|
17
|
+
http: req,
|
|
18
|
+
method: req.method?.toUpperCase() || "GET",
|
|
19
|
+
url: req.url || "/",
|
|
20
|
+
headers,
|
|
21
|
+
on(event, cb) {
|
|
22
|
+
return req.on(event, cb);
|
|
23
|
+
},
|
|
24
|
+
pipe(cb) {
|
|
25
|
+
return req.pipe(cb);
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
const response = {
|
|
29
|
+
http: res,
|
|
30
|
+
writableEnded: false,
|
|
31
|
+
aborted: false,
|
|
32
|
+
writeHeaders: Object.create(null),
|
|
33
|
+
headersSent: false,
|
|
34
|
+
statusCode: 200,
|
|
35
|
+
setHeader(key, value) {
|
|
36
|
+
if (!response.headersSent && !response.writableEnded) {
|
|
37
|
+
res.setHeader(key, value);
|
|
38
|
+
}
|
|
39
|
+
return response;
|
|
40
|
+
},
|
|
41
|
+
writeHeader(key, value) {
|
|
42
|
+
return response.setHeader(key, value);
|
|
43
|
+
},
|
|
44
|
+
writeHead(status, context) {
|
|
45
|
+
response.statusCode = status;
|
|
46
|
+
if (!response.headersSent) {
|
|
47
|
+
res.writeHead(status, context);
|
|
48
|
+
response.headersSent = true;
|
|
49
|
+
}
|
|
50
|
+
return response;
|
|
51
|
+
},
|
|
52
|
+
writeStatus(status) {
|
|
53
|
+
response.statusCode = status;
|
|
54
|
+
if (!response.headersSent) {
|
|
55
|
+
res.statusCode = status;
|
|
56
|
+
}
|
|
57
|
+
return response;
|
|
58
|
+
},
|
|
59
|
+
end(chunk) {
|
|
60
|
+
if (response.writableEnded)
|
|
61
|
+
return;
|
|
62
|
+
if (chunk == null) {
|
|
63
|
+
res.end();
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
response.writableEnded = true;
|
|
67
|
+
if (!response.headersSent) {
|
|
68
|
+
res.statusCode = response.statusCode;
|
|
69
|
+
}
|
|
70
|
+
if (typeof chunk === 'string' ||
|
|
71
|
+
Buffer.isBuffer(chunk) ||
|
|
72
|
+
chunk instanceof Uint8Array) {
|
|
73
|
+
res.end(chunk);
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
res.end(JSON.stringify(chunk));
|
|
77
|
+
return;
|
|
78
|
+
},
|
|
79
|
+
};
|
|
80
|
+
return {
|
|
81
|
+
req: request,
|
|
82
|
+
res: response,
|
|
83
|
+
};
|
|
84
|
+
};
|
|
85
|
+
exports.httpAdaptRequestResponse = httpAdaptRequestResponse;
|
|
86
|
+
const httpBody = (req, res) => {
|
|
87
|
+
return new Promise((resolve, reject) => {
|
|
88
|
+
const decoder = new string_decoder_1.StringDecoder("utf-8");
|
|
89
|
+
let payload = "";
|
|
90
|
+
req.on("data", (data) => {
|
|
91
|
+
payload += decoder.write(data);
|
|
92
|
+
});
|
|
93
|
+
req.on("end", async () => {
|
|
94
|
+
payload += decoder.end();
|
|
95
|
+
const contentType = req.headers["content-type"]?.toLowerCase() || null;
|
|
96
|
+
try {
|
|
97
|
+
const body = await (0, utils_1.normalizeRequestBody)({ contentType, payload });
|
|
98
|
+
return resolve(body);
|
|
99
|
+
}
|
|
100
|
+
catch (err) {
|
|
101
|
+
return reject(err);
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
req.on("error", (err) => {
|
|
105
|
+
return reject(err);
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
};
|
|
109
|
+
exports.httpBody = httpBody;
|
|
110
|
+
const httpfiles = async ({ req, res, options, }) => {
|
|
111
|
+
const temp = options.tempFileDir;
|
|
112
|
+
if (!fs_1.default.existsSync(temp)) {
|
|
113
|
+
try {
|
|
114
|
+
fs_1.default.mkdirSync(temp, { recursive: true });
|
|
115
|
+
}
|
|
116
|
+
catch (err) { }
|
|
117
|
+
}
|
|
118
|
+
return new Promise((resolve, reject) => {
|
|
119
|
+
const body = {};
|
|
120
|
+
const files = {};
|
|
121
|
+
const fileWritePromises = [];
|
|
122
|
+
const bb = (0, busboy_1.default)({ headers: req.headers, defParamCharset: "utf8" });
|
|
123
|
+
const removeTemp = (fileTemp, ms) => {
|
|
124
|
+
const remove = () => {
|
|
125
|
+
try {
|
|
126
|
+
fs_1.default.unlinkSync(fileTemp);
|
|
127
|
+
}
|
|
128
|
+
catch (err) { }
|
|
129
|
+
};
|
|
130
|
+
setTimeout(remove, ms);
|
|
131
|
+
};
|
|
132
|
+
bb.on("file", (fieldName, fileData, info) => {
|
|
133
|
+
const { filename, mimeType } = info;
|
|
134
|
+
const extension = mime_types_1.default.extension(mimeType) ||
|
|
135
|
+
path_1.default.extname(filename).replace(".", "") ||
|
|
136
|
+
"bin";
|
|
137
|
+
const tempFilename = crypto_1.default.randomBytes(16).toString("hex");
|
|
138
|
+
const filePath = path_1.default.join(path_1.default.resolve(), `${temp}/${tempFilename}`);
|
|
139
|
+
const writeStream = fs_1.default.createWriteStream(filePath);
|
|
140
|
+
let fileSize = 0;
|
|
141
|
+
fileData.on("data", (data) => {
|
|
142
|
+
fileSize += data.length;
|
|
143
|
+
if (fileSize > options.limit) {
|
|
144
|
+
fileData.unpipe(writeStream);
|
|
145
|
+
writeStream.destroy();
|
|
146
|
+
return reject(new Error(`The file '${fieldName}' is too large to be uploaded. The limit is '${options.limit}' bytes.`));
|
|
147
|
+
}
|
|
148
|
+
});
|
|
149
|
+
const fileWritePromise = new Promise((resolve, reject) => {
|
|
150
|
+
fileData.pipe(writeStream);
|
|
151
|
+
writeStream.on("finish", () => {
|
|
152
|
+
const file = {
|
|
153
|
+
name: filename,
|
|
154
|
+
tempFilePath: filePath,
|
|
155
|
+
tempFileName: tempFilename,
|
|
156
|
+
mimetype: mimeType,
|
|
157
|
+
extension: extension,
|
|
158
|
+
size: fileSize,
|
|
159
|
+
sizes: {
|
|
160
|
+
bytes: fileSize,
|
|
161
|
+
kb: fileSize / 1024,
|
|
162
|
+
mb: fileSize / 1024 / 1024,
|
|
163
|
+
gb: fileSize / 1024 / 1024 / 1024,
|
|
164
|
+
},
|
|
165
|
+
write: (to) => {
|
|
166
|
+
return new Promise((resolve, reject) => {
|
|
167
|
+
fs_1.default
|
|
168
|
+
.createReadStream(filePath)
|
|
169
|
+
.pipe(fs_1.default.createWriteStream(to))
|
|
170
|
+
.on("finish", () => {
|
|
171
|
+
return resolve(null);
|
|
172
|
+
})
|
|
173
|
+
.on("error", (err) => {
|
|
174
|
+
return reject(err);
|
|
175
|
+
});
|
|
176
|
+
});
|
|
177
|
+
},
|
|
178
|
+
remove: () => {
|
|
179
|
+
return new Promise((resolve) => setTimeout(() => {
|
|
180
|
+
fs_1.default.unlinkSync(filePath);
|
|
181
|
+
return resolve(null);
|
|
182
|
+
}, 100));
|
|
183
|
+
},
|
|
184
|
+
};
|
|
185
|
+
if (files[fieldName] == null) {
|
|
186
|
+
files[fieldName] = [];
|
|
187
|
+
}
|
|
188
|
+
files[fieldName].push(file);
|
|
189
|
+
if (options.removeTempFile.remove) {
|
|
190
|
+
removeTemp(filePath, options.removeTempFile.ms);
|
|
191
|
+
}
|
|
192
|
+
return resolve(null);
|
|
193
|
+
});
|
|
194
|
+
writeStream.on("error", reject);
|
|
195
|
+
});
|
|
196
|
+
fileWritePromises.push(fileWritePromise);
|
|
197
|
+
});
|
|
198
|
+
bb.on("field", (name, value) => {
|
|
199
|
+
body[name] = value;
|
|
200
|
+
});
|
|
201
|
+
bb.on("finish", () => {
|
|
202
|
+
Promise.all(fileWritePromises)
|
|
203
|
+
.then(() => {
|
|
204
|
+
return resolve({
|
|
205
|
+
files,
|
|
206
|
+
body,
|
|
207
|
+
});
|
|
208
|
+
})
|
|
209
|
+
.catch((err) => {
|
|
210
|
+
return reject(err);
|
|
211
|
+
});
|
|
212
|
+
});
|
|
213
|
+
bb.on("error", (err) => {
|
|
214
|
+
return reject(err);
|
|
215
|
+
});
|
|
216
|
+
req.pipe(bb);
|
|
217
|
+
});
|
|
218
|
+
};
|
|
219
|
+
exports.httpfiles = httpfiles;
|
|
220
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/lib/core/server/http/index.ts"],"names":[],"mappings":"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"}
|