@tsed/platform-test-sdk 7.83.3 → 8.0.0-alpha.10

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.
Files changed (185) hide show
  1. package/lib/esm/components/PlatformTestSdk.js +1 -1
  2. package/lib/esm/components/PlatformTestSdk.js.map +1 -1
  3. package/lib/esm/modules/feature/FeatureModule.js.map +1 -1
  4. package/lib/esm/modules/feature/controllers/FeatureController.js +2 -1
  5. package/lib/esm/modules/feature/controllers/FeatureController.js.map +1 -1
  6. package/lib/esm/tests/exports.js +1 -1
  7. package/lib/esm/tests/exports.js.map +1 -1
  8. package/lib/esm/tests/testAcceptMime.js +3 -2
  9. package/lib/esm/tests/testAcceptMime.js.map +1 -1
  10. package/lib/esm/tests/testAuth.js +3 -2
  11. package/lib/esm/tests/testAuth.js.map +1 -1
  12. package/lib/esm/tests/testBodyParams.js +2 -1
  13. package/lib/esm/tests/testBodyParams.js.map +1 -1
  14. package/lib/esm/tests/testCache.js +4 -3
  15. package/lib/esm/tests/testCache.js.map +1 -1
  16. package/lib/esm/tests/testChildrenControllers.js +3 -1
  17. package/lib/esm/tests/testChildrenControllers.js.map +1 -1
  18. package/lib/esm/tests/testCookies.js +3 -1
  19. package/lib/esm/tests/testCookies.js.map +1 -1
  20. package/lib/esm/tests/testCustom404.js +1 -0
  21. package/lib/esm/tests/testCustom404.js.map +1 -1
  22. package/lib/esm/tests/testDeepQueryParams.js +3 -2
  23. package/lib/esm/tests/testDeepQueryParams.js.map +1 -1
  24. package/lib/esm/tests/testErrors.js +9 -8
  25. package/lib/esm/tests/testErrors.js.map +1 -1
  26. package/lib/esm/tests/testHandlers.js +3 -2
  27. package/lib/esm/tests/testHandlers.js.map +1 -1
  28. package/lib/esm/tests/testHeaderParams.js +3 -2
  29. package/lib/esm/tests/testHeaderParams.js.map +1 -1
  30. package/lib/esm/tests/testHeaders.js +7 -6
  31. package/lib/esm/tests/testHeaders.js.map +1 -1
  32. package/lib/esm/tests/testInheritanceController.js +4 -3
  33. package/lib/esm/tests/testInheritanceController.js.map +1 -1
  34. package/lib/esm/tests/testLocals.js +3 -1
  35. package/lib/esm/tests/testLocals.js.map +1 -1
  36. package/lib/esm/tests/testLocation.js +3 -2
  37. package/lib/esm/tests/testLocation.js.map +1 -1
  38. package/lib/esm/tests/testMiddlewares.js +3 -1
  39. package/lib/esm/tests/testMiddlewares.js.map +1 -1
  40. package/lib/esm/tests/testModule.js +3 -1
  41. package/lib/esm/tests/testModule.js.map +1 -1
  42. package/lib/esm/tests/testMulter.js +1 -0
  43. package/lib/esm/tests/testMulter.js.map +1 -1
  44. package/lib/esm/tests/testPathParams.js +3 -2
  45. package/lib/esm/tests/testPathParams.js.map +1 -1
  46. package/lib/esm/tests/testQueryParams.js +3 -2
  47. package/lib/esm/tests/testQueryParams.js.map +1 -1
  48. package/lib/esm/tests/testRedirect.js +4 -2
  49. package/lib/esm/tests/testRedirect.js.map +1 -1
  50. package/lib/esm/tests/testResponse.js +5 -4
  51. package/lib/esm/tests/testResponse.js.map +1 -1
  52. package/lib/esm/tests/testResponseFilter.js +5 -4
  53. package/lib/esm/tests/testResponseFilter.js.map +1 -1
  54. package/lib/esm/tests/testRouting.js +3 -1
  55. package/lib/esm/tests/testRouting.js.map +1 -1
  56. package/lib/esm/tests/testScopeRequest.js +3 -1
  57. package/lib/esm/tests/testScopeRequest.js.map +1 -1
  58. package/lib/esm/tests/testSession.js +3 -2
  59. package/lib/esm/tests/testSession.js.map +1 -1
  60. package/lib/esm/tests/testStatics.js +1 -0
  61. package/lib/esm/tests/testStatics.js.map +1 -1
  62. package/lib/esm/tests/testStream.js +3 -2
  63. package/lib/esm/tests/testStream.js.map +1 -1
  64. package/lib/esm/tests/testView.js +4 -2
  65. package/lib/esm/tests/testView.js.map +1 -1
  66. package/lib/types/components/PlatformTestSdk.d.ts +1 -1
  67. package/package.json +26 -24
  68. package/lib/cjs/components/PlatformTestSdk.js +0 -30
  69. package/lib/cjs/components/PlatformTestSdk.js.map +0 -1
  70. package/lib/cjs/data/response.data.json +0 -3
  71. package/lib/cjs/data/swagger.json +0 -32
  72. package/lib/cjs/errors/CustomBadRequest.js +0 -17
  73. package/lib/cjs/errors/CustomBadRequest.js.map +0 -1
  74. package/lib/cjs/errors/CustomInternalError.js +0 -17
  75. package/lib/cjs/errors/CustomInternalError.js.map +0 -1
  76. package/lib/cjs/index.js +0 -44
  77. package/lib/cjs/index.js.map +0 -1
  78. package/lib/cjs/interfaces/PlatformTestingSdkOpts.js +0 -3
  79. package/lib/cjs/interfaces/PlatformTestingSdkOpts.js.map +0 -1
  80. package/lib/cjs/interfaces/index.js +0 -8
  81. package/lib/cjs/interfaces/index.js.map +0 -1
  82. package/lib/cjs/modules/feature/FeatureModule.js +0 -17
  83. package/lib/cjs/modules/feature/FeatureModule.js.map +0 -1
  84. package/lib/cjs/modules/feature/controllers/FeatureController.js +0 -23
  85. package/lib/cjs/modules/feature/controllers/FeatureController.js.map +0 -1
  86. package/lib/cjs/package.json +0 -3
  87. package/lib/cjs/tests/exports.js +0 -68
  88. package/lib/cjs/tests/exports.js.map +0 -1
  89. package/lib/cjs/tests/testAcceptMime.js +0 -103
  90. package/lib/cjs/tests/testAcceptMime.js.map +0 -1
  91. package/lib/cjs/tests/testAuth.js +0 -343
  92. package/lib/cjs/tests/testAuth.js.map +0 -1
  93. package/lib/cjs/tests/testBodyParams.js +0 -539
  94. package/lib/cjs/tests/testBodyParams.js.map +0 -1
  95. package/lib/cjs/tests/testCache.js +0 -299
  96. package/lib/cjs/tests/testCache.js.map +0 -1
  97. package/lib/cjs/tests/testChildrenControllers.js +0 -64
  98. package/lib/cjs/tests/testChildrenControllers.js.map +0 -1
  99. package/lib/cjs/tests/testCookies.js +0 -45
  100. package/lib/cjs/tests/testCookies.js.map +0 -1
  101. package/lib/cjs/tests/testCustom404.js +0 -32
  102. package/lib/cjs/tests/testCustom404.js.map +0 -1
  103. package/lib/cjs/tests/testDeepQueryParams.js +0 -139
  104. package/lib/cjs/tests/testDeepQueryParams.js.map +0 -1
  105. package/lib/cjs/tests/testErrors.js +0 -253
  106. package/lib/cjs/tests/testErrors.js.map +0 -1
  107. package/lib/cjs/tests/testHandlers.js +0 -106
  108. package/lib/cjs/tests/testHandlers.js.map +0 -1
  109. package/lib/cjs/tests/testHeaderParams.js +0 -169
  110. package/lib/cjs/tests/testHeaderParams.js.map +0 -1
  111. package/lib/cjs/tests/testHeaders.js +0 -85
  112. package/lib/cjs/tests/testHeaders.js.map +0 -1
  113. package/lib/cjs/tests/testInheritanceController.js +0 -239
  114. package/lib/cjs/tests/testInheritanceController.js.map +0 -1
  115. package/lib/cjs/tests/testLocals.js +0 -63
  116. package/lib/cjs/tests/testLocals.js.map +0 -1
  117. package/lib/cjs/tests/testLocation.js +0 -42
  118. package/lib/cjs/tests/testLocation.js.map +0 -1
  119. package/lib/cjs/tests/testMiddlewares.js +0 -210
  120. package/lib/cjs/tests/testMiddlewares.js.map +0 -1
  121. package/lib/cjs/tests/testModule.js +0 -49
  122. package/lib/cjs/tests/testModule.js.map +0 -1
  123. package/lib/cjs/tests/testMulter.js +0 -169
  124. package/lib/cjs/tests/testMulter.js.map +0 -1
  125. package/lib/cjs/tests/testPathParams.js +0 -143
  126. package/lib/cjs/tests/testPathParams.js.map +0 -1
  127. package/lib/cjs/tests/testQueryParams.js +0 -241
  128. package/lib/cjs/tests/testQueryParams.js.map +0 -1
  129. package/lib/cjs/tests/testRedirect.js +0 -143
  130. package/lib/cjs/tests/testRedirect.js.map +0 -1
  131. package/lib/cjs/tests/testResponse.js +0 -569
  132. package/lib/cjs/tests/testResponse.js.map +0 -1
  133. package/lib/cjs/tests/testResponseFilter.js +0 -106
  134. package/lib/cjs/tests/testResponseFilter.js.map +0 -1
  135. package/lib/cjs/tests/testRouting.js +0 -77
  136. package/lib/cjs/tests/testRouting.js.map +0 -1
  137. package/lib/cjs/tests/testScopeRequest.js +0 -113
  138. package/lib/cjs/tests/testScopeRequest.js.map +0 -1
  139. package/lib/cjs/tests/testSession.js +0 -122
  140. package/lib/cjs/tests/testSession.js.map +0 -1
  141. package/lib/cjs/tests/testStatics.js +0 -58
  142. package/lib/cjs/tests/testStatics.js.map +0 -1
  143. package/lib/cjs/tests/testStream.js +0 -65
  144. package/lib/cjs/tests/testStream.js.map +0 -1
  145. package/lib/cjs/tests/testView.js +0 -83
  146. package/lib/cjs/tests/testView.js.map +0 -1
  147. package/lib/esm/package.json +0 -3
  148. package/lib/types-esm/components/PlatformTestSdk.d.ts +0 -9
  149. package/lib/types-esm/errors/CustomBadRequest.d.ts +0 -8
  150. package/lib/types-esm/errors/CustomInternalError.d.ts +0 -8
  151. package/lib/types-esm/index.d.ts +0 -40
  152. package/lib/types-esm/interfaces/PlatformTestingSdkOpts.d.ts +0 -8
  153. package/lib/types-esm/interfaces/index.d.ts +0 -4
  154. package/lib/types-esm/modules/feature/FeatureModule.d.ts +0 -2
  155. package/lib/types-esm/modules/feature/controllers/FeatureController.d.ts +0 -3
  156. package/lib/types-esm/tests/exports.d.ts +0 -2
  157. package/lib/types-esm/tests/testAcceptMime.d.ts +0 -2
  158. package/lib/types-esm/tests/testAuth.d.ts +0 -8
  159. package/lib/types-esm/tests/testBodyParams.d.ts +0 -3
  160. package/lib/types-esm/tests/testCache.d.ts +0 -2
  161. package/lib/types-esm/tests/testChildrenControllers.d.ts +0 -2
  162. package/lib/types-esm/tests/testCookies.d.ts +0 -11
  163. package/lib/types-esm/tests/testCustom404.d.ts +0 -2
  164. package/lib/types-esm/tests/testDeepQueryParams.d.ts +0 -3
  165. package/lib/types-esm/tests/testErrors.d.ts +0 -19
  166. package/lib/types-esm/tests/testHandlers.d.ts +0 -12
  167. package/lib/types-esm/tests/testHeaderParams.d.ts +0 -16
  168. package/lib/types-esm/tests/testHeaders.d.ts +0 -8
  169. package/lib/types-esm/tests/testInheritanceController.d.ts +0 -42
  170. package/lib/types-esm/tests/testLocals.d.ts +0 -2
  171. package/lib/types-esm/tests/testLocation.d.ts +0 -2
  172. package/lib/types-esm/tests/testMiddlewares.d.ts +0 -8
  173. package/lib/types-esm/tests/testModule.d.ts +0 -2
  174. package/lib/types-esm/tests/testMulter.d.ts +0 -21
  175. package/lib/types-esm/tests/testPathParams.d.ts +0 -2
  176. package/lib/types-esm/tests/testQueryParams.d.ts +0 -6
  177. package/lib/types-esm/tests/testRedirect.d.ts +0 -2
  178. package/lib/types-esm/tests/testResponse.d.ts +0 -16
  179. package/lib/types-esm/tests/testResponseFilter.d.ts +0 -2
  180. package/lib/types-esm/tests/testRouting.d.ts +0 -7
  181. package/lib/types-esm/tests/testScopeRequest.d.ts +0 -12
  182. package/lib/types-esm/tests/testSession.d.ts +0 -16
  183. package/lib/types-esm/tests/testStatics.d.ts +0 -2
  184. package/lib/types-esm/tests/testStream.d.ts +0 -2
  185. package/lib/types-esm/tests/testView.d.ts +0 -2
@@ -1,239 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.testInheritanceController = exports.TestChildController = exports.TestBaseController = exports.FindingsController = exports.ResourcesCtrl = exports.BaseController = exports.Resource = void 0;
4
- const tslib_1 = require("tslib");
5
- const common_1 = require("@tsed/common");
6
- const exceptions_1 = require("@tsed/exceptions");
7
- const schema_1 = require("@tsed/schema");
8
- const supertest_1 = tslib_1.__importDefault(require("supertest"));
9
- const uuid_1 = require("uuid");
10
- class Resource {
11
- }
12
- tslib_1.__decorate([
13
- (0, schema_1.Property)(),
14
- tslib_1.__metadata("design:type", String)
15
- ], Resource.prototype, "id", void 0);
16
- tslib_1.__decorate([
17
- (0, schema_1.Property)(),
18
- (0, schema_1.MinLength)(3),
19
- (0, schema_1.MaxLength)(100),
20
- tslib_1.__metadata("design:type", String)
21
- ], Resource.prototype, "name", void 0);
22
- exports.Resource = Resource;
23
- class BaseController {
24
- get(id) {
25
- const resource = this.resources.find((resource) => resource.id === id);
26
- if (!resource) {
27
- return Promise.reject(new exceptions_1.NotFound("Not found"));
28
- }
29
- return Promise.resolve(resource);
30
- }
31
- list() {
32
- return Promise.resolve(this.resources);
33
- }
34
- }
35
- tslib_1.__decorate([
36
- (0, common_1.Get)("/:id"),
37
- (0, schema_1.Summary)("Return an element by his resource"),
38
- tslib_1.__param(0, (0, schema_1.Description)("Id of the resource")),
39
- tslib_1.__param(0, (0, common_1.PathParams)("id")),
40
- tslib_1.__metadata("design:type", Function),
41
- tslib_1.__metadata("design:paramtypes", [String]),
42
- tslib_1.__metadata("design:returntype", Promise)
43
- ], BaseController.prototype, "get", null);
44
- tslib_1.__decorate([
45
- (0, common_1.Get)("/"),
46
- (0, schema_1.Summary)("Return all elements from a service"),
47
- tslib_1.__metadata("design:type", Function),
48
- tslib_1.__metadata("design:paramtypes", []),
49
- tslib_1.__metadata("design:returntype", Promise)
50
- ], BaseController.prototype, "list", null);
51
- exports.BaseController = BaseController;
52
- let ResourcesCtrl = class ResourcesCtrl extends BaseController {
53
- constructor() {
54
- super(...arguments);
55
- this.resources = [{ id: "1", name: "John" }];
56
- }
57
- async get(id) {
58
- const resource = await super.get(id);
59
- resource.name = resource.name + " hello You!";
60
- return resource;
61
- }
62
- post(resource) {
63
- resource.id = (0, uuid_1.v4)();
64
- this.resources.push(resource);
65
- return resource;
66
- }
67
- };
68
- tslib_1.__decorate([
69
- (0, common_1.Get)("/:id"),
70
- (0, schema_1.Summary)("Return an element by his resource"),
71
- tslib_1.__param(0, (0, schema_1.Description)("Id of the resource")),
72
- tslib_1.__param(0, (0, common_1.PathParams)("id")),
73
- tslib_1.__metadata("design:type", Function),
74
- tslib_1.__metadata("design:paramtypes", [String]),
75
- tslib_1.__metadata("design:returntype", Promise)
76
- ], ResourcesCtrl.prototype, "get", null);
77
- tslib_1.__decorate([
78
- (0, common_1.Post)("/"),
79
- (0, schema_1.Returns)(201).Type(Resource),
80
- tslib_1.__param(0, (0, common_1.BodyParams)()),
81
- tslib_1.__metadata("design:type", Function),
82
- tslib_1.__metadata("design:paramtypes", [Resource]),
83
- tslib_1.__metadata("design:returntype", void 0)
84
- ], ResourcesCtrl.prototype, "post", null);
85
- ResourcesCtrl = tslib_1.__decorate([
86
- (0, common_1.Controller)("/resources")
87
- ], ResourcesCtrl);
88
- exports.ResourcesCtrl = ResourcesCtrl;
89
- let AuthMiddleware = class AuthMiddleware {
90
- use() {
91
- return true;
92
- }
93
- };
94
- AuthMiddleware = tslib_1.__decorate([
95
- (0, common_1.Middleware)()
96
- ], AuthMiddleware);
97
- class AttachmentController {
98
- getAll(parentID) {
99
- return `All attachments of ${parentID}`;
100
- }
101
- }
102
- tslib_1.__decorate([
103
- (0, common_1.Get)("/:parentID/attachments"),
104
- tslib_1.__param(0, (0, common_1.PathParams)("parentID")),
105
- tslib_1.__metadata("design:type", Function),
106
- tslib_1.__metadata("design:paramtypes", [String]),
107
- tslib_1.__metadata("design:returntype", void 0)
108
- ], AttachmentController.prototype, "getAll", null);
109
- let FindingsController = class FindingsController extends AttachmentController {
110
- get() {
111
- return "hello Finding";
112
- }
113
- };
114
- tslib_1.__decorate([
115
- (0, common_1.Get)("/"),
116
- tslib_1.__metadata("design:type", Function),
117
- tslib_1.__metadata("design:paramtypes", []),
118
- tslib_1.__metadata("design:returntype", void 0)
119
- ], FindingsController.prototype, "get", null);
120
- FindingsController = tslib_1.__decorate([
121
- (0, common_1.Controller)("/findings"),
122
- (0, common_1.UseAuth)(AuthMiddleware)
123
- ], FindingsController);
124
- exports.FindingsController = FindingsController;
125
- class TestBaseController {
126
- scenario3(search) {
127
- return {
128
- search
129
- };
130
- }
131
- scenario5(q) {
132
- return { data: q };
133
- }
134
- }
135
- tslib_1.__decorate([
136
- (0, common_1.Get)("/"),
137
- tslib_1.__param(0, (0, common_1.QueryParams)("search")),
138
- tslib_1.__metadata("design:type", Function),
139
- tslib_1.__metadata("design:paramtypes", [String]),
140
- tslib_1.__metadata("design:returntype", void 0)
141
- ], TestBaseController.prototype, "scenario3", null);
142
- tslib_1.__decorate([
143
- (0, common_1.Get)("/override"),
144
- tslib_1.__param(0, (0, common_1.QueryParams)("q")),
145
- tslib_1.__metadata("design:type", Function),
146
- tslib_1.__metadata("design:paramtypes", [String]),
147
- tslib_1.__metadata("design:returntype", void 0)
148
- ], TestBaseController.prototype, "scenario5", null);
149
- exports.TestBaseController = TestBaseController;
150
- let TestChildController = class TestChildController extends TestBaseController {
151
- scenario4(id) {
152
- return { id };
153
- }
154
- scenario5(s) {
155
- return { data: s };
156
- }
157
- };
158
- tslib_1.__decorate([
159
- (0, common_1.Get)("/:id"),
160
- tslib_1.__param(0, (0, common_1.PathParams)("id")),
161
- tslib_1.__metadata("design:type", Function),
162
- tslib_1.__metadata("design:paramtypes", [String]),
163
- tslib_1.__metadata("design:returntype", Object)
164
- ], TestChildController.prototype, "scenario4", null);
165
- tslib_1.__decorate([
166
- (0, common_1.Get)("/override"),
167
- tslib_1.__param(0, (0, common_1.QueryParams)("s")),
168
- tslib_1.__metadata("design:type", Function),
169
- tslib_1.__metadata("design:paramtypes", [String]),
170
- tslib_1.__metadata("design:returntype", void 0)
171
- ], TestChildController.prototype, "scenario5", null);
172
- TestChildController = tslib_1.__decorate([
173
- (0, common_1.Controller)("/test")
174
- ], TestChildController);
175
- exports.TestChildController = TestChildController;
176
- function testInheritanceController(options) {
177
- let request;
178
- beforeAll(common_1.PlatformTest.bootstrap(options.server, {
179
- ...options,
180
- mount: {
181
- "/rest": [ResourcesCtrl, FindingsController, TestChildController]
182
- }
183
- }));
184
- beforeAll(() => {
185
- request = (0, supertest_1.default)(common_1.PlatformTest.callback());
186
- });
187
- afterAll(common_1.PlatformTest.reset);
188
- describe("Scenario 1:", () => {
189
- it("should return list", async () => {
190
- const { body } = await request.get("/rest/resources").expect(200);
191
- expect(body).toEqual([{ id: "1", name: "John" }]);
192
- });
193
- it("should return a resource", async () => {
194
- const { body } = await request.get("/rest/resources/1").expect(200);
195
- expect(body).toEqual({
196
- id: "1",
197
- name: "John hello You!"
198
- });
199
- });
200
- it("should add a resource", async () => {
201
- const { body } = await request
202
- .post("/rest/resources")
203
- .send({
204
- name: "july"
205
- })
206
- .expect(201);
207
- expect(body.name).toEqual("july");
208
- expect(typeof body.id).toBe("string");
209
- const { body: resource } = await request.get(`/rest/resources/${body.id}`).expect(200);
210
- expect(resource.id).toEqual(body.id);
211
- });
212
- });
213
- describe("scenario2: FindingsController", () => {
214
- it("should call /rest/findings/:parentID/attachments", async () => {
215
- const { text } = await request.get("/rest/findings/1/attachments").expect(200);
216
- expect(text).toEqual("All attachments of 1");
217
- });
218
- it("should call /rest/findings", async () => {
219
- const { text } = await request.get("/rest/findings").expect(200);
220
- expect(text).toEqual("hello Finding");
221
- });
222
- });
223
- it("Scenario3: should call inherited method", async () => {
224
- const { body } = await request.get("/rest/test?search=test").expect(200);
225
- expect(body).toEqual({
226
- search: "test"
227
- });
228
- });
229
- it("Scenario4: should the Child method", async () => {
230
- const { body } = await request.get("/rest/test/1").expect(200);
231
- expect(body).toEqual({ id: "1" });
232
- });
233
- it("Scenario5: should call the Child method and not the base method", async () => {
234
- const { body } = await request.get("/rest/test/1").expect(200);
235
- expect(body).toEqual({ id: "1" });
236
- });
237
- }
238
- exports.testInheritanceController = testInheritanceController;
239
- //# sourceMappingURL=testInheritanceController.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"testInheritanceController.js","sourceRoot":"","sources":["../../../src/tests/testInheritanceController.ts"],"names":[],"mappings":"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"}
@@ -1,63 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.testLocals = void 0;
4
- const tslib_1 = require("tslib");
5
- const common_1 = require("@tsed/common");
6
- const supertest_1 = tslib_1.__importDefault(require("supertest"));
7
- let LocalsMiddleware = class LocalsMiddleware {
8
- use(request, locals, ctx) {
9
- locals.id = "local-10909";
10
- ctx.set("uid", "ctx-10909");
11
- }
12
- };
13
- tslib_1.__decorate([
14
- tslib_1.__param(0, (0, common_1.Req)()),
15
- tslib_1.__param(1, (0, common_1.Locals)()),
16
- tslib_1.__param(2, (0, common_1.Context)()),
17
- tslib_1.__metadata("design:type", Function),
18
- tslib_1.__metadata("design:paramtypes", [Object, Object, common_1.PlatformContext]),
19
- tslib_1.__metadata("design:returntype", void 0)
20
- ], LocalsMiddleware.prototype, "use", null);
21
- LocalsMiddleware = tslib_1.__decorate([
22
- (0, common_1.Middleware)()
23
- ], LocalsMiddleware);
24
- let LocalsCtrl = class LocalsCtrl {
25
- testStackMiddlewares(id, uid) {
26
- return {
27
- id: `${id}-${uid}`
28
- };
29
- }
30
- };
31
- tslib_1.__decorate([
32
- (0, common_1.Get)("/scenario-1"),
33
- (0, common_1.Use)(LocalsMiddleware),
34
- tslib_1.__param(0, (0, common_1.Locals)("id")),
35
- tslib_1.__param(1, (0, common_1.Context)("uid")),
36
- tslib_1.__metadata("design:type", Function),
37
- tslib_1.__metadata("design:paramtypes", [Object, String]),
38
- tslib_1.__metadata("design:returntype", Object)
39
- ], LocalsCtrl.prototype, "testStackMiddlewares", null);
40
- LocalsCtrl = tslib_1.__decorate([
41
- (0, common_1.Controller)("/locals")
42
- ], LocalsCtrl);
43
- function testLocals(options) {
44
- let request;
45
- beforeAll(common_1.PlatformTest.bootstrap(options.server, {
46
- ...options,
47
- mount: {
48
- "/rest": [LocalsCtrl]
49
- }
50
- }));
51
- beforeAll(() => {
52
- request = (0, supertest_1.default)(common_1.PlatformTest.callback());
53
- });
54
- afterAll(common_1.PlatformTest.reset);
55
- describe("Scenario 1: GET /rest/locals/scenario-1", () => {
56
- it("should call middleware and set a id in locals", async () => {
57
- const { body } = await request.get("/rest/locals/scenario-1").expect(200);
58
- expect(body.id).toEqual("local-10909-ctx-10909");
59
- });
60
- });
61
- }
62
- exports.testLocals = testLocals;
63
- //# sourceMappingURL=testLocals.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"testLocals.js","sourceRoot":"","sources":["../../../src/tests/testLocals.ts"],"names":[],"mappings":";;;;AAAA,yCAAuI;AACvI,kEAAkC;AAIlC,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IACpB,GAAG,CAAQ,OAAY,EAAY,MAAW,EAAa,GAAoB;QAC7E,MAAM,CAAC,EAAE,GAAG,aAAa,CAAC;QAC1B,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAC9B,CAAC;CACF,CAAA;AAJC;IAAK,mBAAA,IAAA,YAAG,GAAE,CAAA;IAAgB,mBAAA,IAAA,eAAM,GAAE,CAAA;IAAe,mBAAA,IAAA,gBAAO,GAAE,CAAA;;6DAAM,wBAAe;;2CAG9E;AAJG,gBAAgB;IADrB,IAAA,mBAAU,GAAE;GACP,gBAAgB,CAKrB;AAGD,IAAM,UAAU,GAAhB,MAAM,UAAU;IAGP,oBAAoB,CAAe,EAAO,EAAkB,GAAW;QAC5E,OAAO;YACL,EAAE,EAAE,GAAG,EAAE,IAAI,GAAG,EAAE;SACnB,CAAC;IACJ,CAAC;CACF,CAAA;AAPC;IAAC,IAAA,YAAG,EAAC,aAAa,CAAC;IAClB,IAAA,YAAG,EAAC,gBAAgB,CAAC;IACO,mBAAA,IAAA,eAAM,EAAC,IAAI,CAAC,CAAA;IAAW,mBAAA,IAAA,gBAAO,EAAC,KAAK,CAAC,CAAA;;;;sDAIjE;AAPG,UAAU;IADf,IAAA,mBAAU,EAAC,SAAS,CAAC;GAChB,UAAU,CAQf;AAED,SAAgB,UAAU,CAAC,OAA+B;IACxD,IAAI,OAAwB,CAAC;IAC7B,SAAS,CACP,qBAAY,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE;QACrC,GAAG,OAAO;QACV,KAAK,EAAE;YACL,OAAO,EAAE,CAAC,UAAU,CAAC;SACtB;KACF,CAAC,CACH,CAAC;IACF,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,IAAA,mBAAS,EAAC,qBAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,qBAAY,CAAC,KAAK,CAAC,CAAC;IAE7B,QAAQ,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACvD,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;YAC7D,MAAM,EAAC,IAAI,EAAC,GAAQ,MAAM,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAE7E,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAtBD,gCAsBC"}
@@ -1,42 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.testLocation = void 0;
4
- const tslib_1 = require("tslib");
5
- const common_1 = require("@tsed/common");
6
- const supertest_1 = tslib_1.__importDefault(require("supertest"));
7
- const schema_1 = require("@tsed/schema");
8
- let LocationCtrl = class LocationCtrl {
9
- testScenario1() {
10
- return "Hello";
11
- }
12
- };
13
- tslib_1.__decorate([
14
- (0, common_1.Get)("/scenario-1"),
15
- (0, schema_1.Location)("/test"),
16
- tslib_1.__metadata("design:type", Function),
17
- tslib_1.__metadata("design:paramtypes", []),
18
- tslib_1.__metadata("design:returntype", void 0)
19
- ], LocationCtrl.prototype, "testScenario1", null);
20
- LocationCtrl = tslib_1.__decorate([
21
- (0, common_1.Controller)("/location")
22
- ], LocationCtrl);
23
- function testLocation(options) {
24
- let request;
25
- beforeAll(common_1.PlatformTest.bootstrap(options.server, {
26
- ...options,
27
- mount: {
28
- "/rest": [LocationCtrl]
29
- }
30
- }));
31
- beforeAll(() => {
32
- request = (0, supertest_1.default)(common_1.PlatformTest.callback());
33
- });
34
- afterAll(common_1.PlatformTest.reset);
35
- it("Scenario1: GET /rest/location/scenario-1", async () => {
36
- const response = await request.get("/rest/location/scenario-1").expect(200);
37
- expect(response.text).toEqual("Hello");
38
- expect(response.header.location).toEqual("/test");
39
- });
40
- }
41
- exports.testLocation = testLocation;
42
- //# sourceMappingURL=testLocation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"testLocation.js","sourceRoot":"","sources":["../../../src/tests/testLocation.ts"],"names":[],"mappings":";;;;AAAA,yCAA2D;AAC3D,kEAAkC;AAClC,yCAAsC;AAItC,IAAM,YAAY,GAAlB,MAAM,YAAY;IAGhB,aAAa;QACX,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAA;AALC;IAAC,IAAA,YAAG,EAAC,aAAa,CAAC;IAClB,IAAA,iBAAQ,EAAC,OAAO,CAAC;;;;iDAGjB;AALG,YAAY;IADjB,IAAA,mBAAU,EAAC,WAAW,CAAC;GAClB,YAAY,CAMjB;AAED,SAAgB,YAAY,CAAC,OAA+B;IAC1D,IAAI,OAAwB,CAAC;IAE7B,SAAS,CACP,qBAAY,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE;QACrC,GAAG,OAAO;QACV,KAAK,EAAE;YACL,OAAO,EAAE,CAAC,YAAY,CAAC;SACxB;KACF,CAAC,CACH,CAAC;IACF,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,IAAA,mBAAS,EAAC,qBAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,qBAAY,CAAC,KAAK,CAAC,CAAC;IAE7B,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAE5E,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC;AAtBD,oCAsBC"}
@@ -1,210 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.testMiddlewares = exports.CatchErrorMiddleware = void 0;
4
- const tslib_1 = require("tslib");
5
- require("@tsed/ajv");
6
- const common_1 = require("@tsed/common");
7
- const exceptions_1 = require("@tsed/exceptions");
8
- const supertest_1 = tslib_1.__importDefault(require("supertest"));
9
- let BeforeCustomMiddleware = class BeforeCustomMiddleware {
10
- use(ctx) {
11
- ctx.set("stacks", ["UseBefore - Ctrl"]);
12
- }
13
- };
14
- tslib_1.__decorate([
15
- tslib_1.__param(0, (0, common_1.Context)()),
16
- tslib_1.__metadata("design:type", Function),
17
- tslib_1.__metadata("design:paramtypes", [Object]),
18
- tslib_1.__metadata("design:returntype", void 0)
19
- ], BeforeCustomMiddleware.prototype, "use", null);
20
- BeforeCustomMiddleware = tslib_1.__decorate([
21
- (0, common_1.Middleware)()
22
- ], BeforeCustomMiddleware);
23
- let BeforeEndpointCustomMiddleware = class BeforeEndpointCustomMiddleware {
24
- use(ctx) {
25
- ctx.get("stacks").push("UseBefore - endpoint");
26
- }
27
- };
28
- tslib_1.__decorate([
29
- tslib_1.__param(0, (0, common_1.Context)()),
30
- tslib_1.__metadata("design:type", Function),
31
- tslib_1.__metadata("design:paramtypes", [Object]),
32
- tslib_1.__metadata("design:returntype", void 0)
33
- ], BeforeEndpointCustomMiddleware.prototype, "use", null);
34
- BeforeEndpointCustomMiddleware = tslib_1.__decorate([
35
- (0, common_1.Middleware)()
36
- ], BeforeEndpointCustomMiddleware);
37
- let AfterCustomMiddleware = class AfterCustomMiddleware {
38
- use(ctx) {
39
- ctx.get("stacks").push("UseAfter - Ctrl");
40
- }
41
- };
42
- tslib_1.__decorate([
43
- tslib_1.__param(0, (0, common_1.Context)()),
44
- tslib_1.__metadata("design:type", Function),
45
- tslib_1.__metadata("design:paramtypes", [Object]),
46
- tslib_1.__metadata("design:returntype", void 0)
47
- ], AfterCustomMiddleware.prototype, "use", null);
48
- AfterCustomMiddleware = tslib_1.__decorate([
49
- (0, common_1.Middleware)()
50
- ], AfterCustomMiddleware);
51
- let UseCustomMiddleware = class UseCustomMiddleware {
52
- use(ctx) {
53
- ctx.get("stacks").push("Use - Ctrl");
54
- }
55
- };
56
- tslib_1.__decorate([
57
- tslib_1.__param(0, (0, common_1.Context)()),
58
- tslib_1.__metadata("design:type", Function),
59
- tslib_1.__metadata("design:paramtypes", [Object]),
60
- tslib_1.__metadata("design:returntype", void 0)
61
- ], UseCustomMiddleware.prototype, "use", null);
62
- UseCustomMiddleware = tslib_1.__decorate([
63
- (0, common_1.Middleware)()
64
- ], UseCustomMiddleware);
65
- let AfterEndpointCustomMiddleware = class AfterEndpointCustomMiddleware {
66
- use(ctx) {
67
- ctx.get("stacks").push("UseAfter - endpoint");
68
- }
69
- };
70
- tslib_1.__decorate([
71
- tslib_1.__param(0, (0, common_1.Context)()),
72
- tslib_1.__metadata("design:type", Function),
73
- tslib_1.__metadata("design:paramtypes", [Object]),
74
- tslib_1.__metadata("design:returntype", void 0)
75
- ], AfterEndpointCustomMiddleware.prototype, "use", null);
76
- AfterEndpointCustomMiddleware = tslib_1.__decorate([
77
- (0, common_1.Middleware)()
78
- ], AfterEndpointCustomMiddleware);
79
- let UseMiddleware = class UseMiddleware {
80
- use(ctx) {
81
- ctx.get("stacks").push("Use - Ctrl");
82
- }
83
- };
84
- tslib_1.__decorate([
85
- tslib_1.__param(0, (0, common_1.Context)()),
86
- tslib_1.__metadata("design:type", Function),
87
- tslib_1.__metadata("design:paramtypes", [Object]),
88
- tslib_1.__metadata("design:returntype", void 0)
89
- ], UseMiddleware.prototype, "use", null);
90
- UseMiddleware = tslib_1.__decorate([
91
- (0, common_1.Middleware)()
92
- ], UseMiddleware);
93
- let UseEndpointMiddleware = class UseEndpointMiddleware {
94
- use(ctx) {
95
- ctx.get("stacks").push("Use - endpoint");
96
- }
97
- };
98
- tslib_1.__decorate([
99
- tslib_1.__param(0, (0, common_1.Context)()),
100
- tslib_1.__metadata("design:type", Function),
101
- tslib_1.__metadata("design:paramtypes", [Object]),
102
- tslib_1.__metadata("design:returntype", void 0)
103
- ], UseEndpointMiddleware.prototype, "use", null);
104
- UseEndpointMiddleware = tslib_1.__decorate([
105
- (0, common_1.Middleware)()
106
- ], UseEndpointMiddleware);
107
- let CatchErrorMiddleware = class CatchErrorMiddleware {
108
- use(err) {
109
- if ([401].includes(err.status)) {
110
- throw new exceptions_1.BadRequest("Bad format");
111
- }
112
- throw err;
113
- }
114
- };
115
- tslib_1.__decorate([
116
- tslib_1.__param(0, (0, common_1.Err)()),
117
- tslib_1.__metadata("design:type", Function),
118
- tslib_1.__metadata("design:paramtypes", [exceptions_1.Exception]),
119
- tslib_1.__metadata("design:returntype", void 0)
120
- ], CatchErrorMiddleware.prototype, "use", null);
121
- CatchErrorMiddleware = tslib_1.__decorate([
122
- (0, common_1.Middleware)()
123
- ], CatchErrorMiddleware);
124
- exports.CatchErrorMiddleware = CatchErrorMiddleware;
125
- let TestMiddlewaresCtrl = class TestMiddlewaresCtrl {
126
- scenario1(context) {
127
- context.get("stacks").push("endpoint");
128
- return { stacks: context.get("stacks") };
129
- }
130
- scenario2(test) {
131
- if (test === "error") {
132
- throw new exceptions_1.Unauthorized("Unauthorized");
133
- }
134
- return {
135
- hello: "world"
136
- };
137
- }
138
- };
139
- tslib_1.__decorate([
140
- (0, common_1.Get)("/scenario-1"),
141
- (0, common_1.UseBefore)(BeforeEndpointCustomMiddleware),
142
- (0, common_1.UseAfter)(AfterEndpointCustomMiddleware),
143
- (0, common_1.Use)(UseEndpointMiddleware),
144
- tslib_1.__param(0, (0, common_1.Context)()),
145
- tslib_1.__metadata("design:type", Function),
146
- tslib_1.__metadata("design:paramtypes", [Object]),
147
- tslib_1.__metadata("design:returntype", void 0)
148
- ], TestMiddlewaresCtrl.prototype, "scenario1", null);
149
- tslib_1.__decorate([
150
- (0, common_1.Get)("/scenario-2"),
151
- tslib_1.__param(0, (0, common_1.QueryParams)("test")),
152
- tslib_1.__metadata("design:type", Function),
153
- tslib_1.__metadata("design:paramtypes", [String]),
154
- tslib_1.__metadata("design:returntype", void 0)
155
- ], TestMiddlewaresCtrl.prototype, "scenario2", null);
156
- TestMiddlewaresCtrl = tslib_1.__decorate([
157
- (0, common_1.Controller)("/middlewares"),
158
- (0, common_1.UseBefore)(BeforeCustomMiddleware),
159
- (0, common_1.UseAfter)(AfterCustomMiddleware),
160
- (0, common_1.UseAfter)(CatchErrorMiddleware),
161
- (0, common_1.Use)(UseCustomMiddleware)
162
- ], TestMiddlewaresCtrl);
163
- function testMiddlewares(options) {
164
- let request;
165
- beforeAll(common_1.PlatformTest.bootstrap(options.server, {
166
- ...options,
167
- mount: {
168
- "/rest": [TestMiddlewaresCtrl]
169
- }
170
- }));
171
- beforeAll(() => {
172
- request = (0, supertest_1.default)(common_1.PlatformTest.callback());
173
- });
174
- afterAll(common_1.PlatformTest.reset);
175
- describe("Scenario 1: GET /rest/middlewares/scenario-1", () => {
176
- it("should call all middlewares", async () => {
177
- const response = await request.get("/rest/middlewares/scenario-1").expect(200);
178
- expect(response.body).toEqual({
179
- stacks: [
180
- "UseBefore - Ctrl",
181
- "UseBefore - endpoint",
182
- "Use - Ctrl",
183
- "Use - endpoint",
184
- "endpoint",
185
- "UseAfter - endpoint",
186
- "UseAfter - Ctrl"
187
- ]
188
- });
189
- });
190
- });
191
- describe("Scenario 2: GET /rest/middlewares/scenario-2", () => {
192
- it("should call the endpoint without triggering middleware", async () => {
193
- const response = await request.get("/rest/middlewares/scenario-2").expect(200);
194
- expect(response.body).toEqual({
195
- hello: "world"
196
- });
197
- });
198
- it("should call the endpoint, throw an error and transform the error by calling the error middleware", async () => {
199
- const response = await request.get("/rest/middlewares/scenario-2?test=error").expect(400);
200
- expect(response.body).toEqual({
201
- errors: [],
202
- message: "Bad format",
203
- name: "BAD_REQUEST",
204
- status: 400
205
- });
206
- });
207
- });
208
- }
209
- exports.testMiddlewares = testMiddlewares;
210
- //# sourceMappingURL=testMiddlewares.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"testMiddlewares.js","sourceRoot":"","sources":["../../../src/tests/testMiddlewares.ts"],"names":[],"mappings":"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"}
@@ -1,49 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.testModule = void 0;
4
- const tslib_1 = require("tslib");
5
- const common_1 = require("@tsed/common");
6
- const supertest_1 = tslib_1.__importDefault(require("supertest"));
7
- const FeatureModule_js_1 = require("../modules/feature/FeatureModule.js");
8
- let TestRootCtrl = class TestRootCtrl {
9
- testScenario1() {
10
- return "From root";
11
- }
12
- };
13
- tslib_1.__decorate([
14
- (0, common_1.Get)("/"),
15
- tslib_1.__metadata("design:type", Function),
16
- tslib_1.__metadata("design:paramtypes", []),
17
- tslib_1.__metadata("design:returntype", void 0)
18
- ], TestRootCtrl.prototype, "testScenario1", null);
19
- TestRootCtrl = tslib_1.__decorate([
20
- (0, common_1.Controller)("/root")
21
- ], TestRootCtrl);
22
- function testModule(options) {
23
- let request;
24
- beforeAll(common_1.PlatformTest.bootstrap(options.server, {
25
- ...options,
26
- mount: {
27
- "/rest": [TestRootCtrl]
28
- },
29
- imports: [FeatureModule_js_1.FeatureModule]
30
- }));
31
- beforeAll(() => {
32
- request = (0, supertest_1.default)(common_1.PlatformTest.callback());
33
- });
34
- afterAll(common_1.PlatformTest.reset);
35
- describe("Scenario1: GET /rest/root", () => {
36
- it("should get content from root controller", async () => {
37
- const response = await request.get("/rest/root").expect(200);
38
- expect(response.text).toEqual("From root");
39
- });
40
- });
41
- describe("Scenario2: GET /rest/features", () => {
42
- it("should get content from a module with his controller", async () => {
43
- const response = await request.get("/rest/features").expect(200);
44
- expect(response.text).toEqual("From feature");
45
- });
46
- });
47
- }
48
- exports.testModule = testModule;
49
- //# sourceMappingURL=testModule.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"testModule.js","sourceRoot":"","sources":["../../../src/tests/testModule.ts"],"names":[],"mappings":";;;;AAAA,yCAA2D;AAC3D,kEAAkC;AAElC,0EAAkE;AAGlE,IAAM,YAAY,GAAlB,MAAM,YAAY;IAEhB,aAAa;QACX,OAAO,WAAW,CAAC;IACrB,CAAC;CACF,CAAA;AAJC;IAAC,IAAA,YAAG,EAAC,GAAG,CAAC;;;;iDAGR;AAJG,YAAY;IADjB,IAAA,mBAAU,EAAC,OAAO,CAAC;GACd,YAAY,CAKjB;AAED,SAAgB,UAAU,CAAC,OAA+B;IACxD,IAAI,OAAwB,CAAC;IAE7B,SAAS,CACP,qBAAY,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE;QACrC,GAAG,OAAO;QACV,KAAK,EAAE;YACL,OAAO,EAAE,CAAC,YAAY,CAAC;SACxB;QACD,OAAO,EAAE,CAAC,gCAAa,CAAC;KACzB,CAAC,CACH,CAAC;IACF,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,IAAA,mBAAS,EAAC,qBAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,qBAAY,CAAC,KAAK,CAAC,CAAC;IAE7B,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;YACvD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAE7D,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;QAC7C,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;YACpE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAEjE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAhCD,gCAgCC"}