@webda/core 2.4.2 → 3.0.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.
Files changed (227) hide show
  1. package/lib/application.d.ts +171 -34
  2. package/lib/application.js +243 -47
  3. package/lib/application.js.map +1 -1
  4. package/lib/application.spec.js +44 -8
  5. package/lib/application.spec.js.map +1 -1
  6. package/lib/core.d.ts +113 -54
  7. package/lib/core.js +222 -135
  8. package/lib/core.js.map +1 -1
  9. package/lib/core.spec.js +87 -43
  10. package/lib/core.spec.js.map +1 -1
  11. package/lib/errors.d.ts +65 -0
  12. package/lib/errors.js +113 -0
  13. package/lib/errors.js.map +1 -0
  14. package/lib/errors.spec.d.ts +1 -0
  15. package/lib/errors.spec.js +33 -0
  16. package/lib/errors.spec.js.map +1 -0
  17. package/lib/index.d.ts +3 -0
  18. package/lib/index.js +3 -0
  19. package/lib/index.js.map +1 -1
  20. package/lib/models/aclmodel.d.ts +4 -4
  21. package/lib/models/aclmodel.js +10 -6
  22. package/lib/models/aclmodel.js.map +1 -1
  23. package/lib/models/aclmodel.spec.js +33 -24
  24. package/lib/models/aclmodel.spec.js.map +1 -1
  25. package/lib/models/coremodel.d.ts +284 -92
  26. package/lib/models/coremodel.js +403 -103
  27. package/lib/models/coremodel.js.map +1 -1
  28. package/lib/models/coremodel.spec.js +162 -24
  29. package/lib/models/coremodel.spec.js.map +1 -1
  30. package/lib/models/ident.d.ts +20 -6
  31. package/lib/models/ident.js.map +1 -1
  32. package/lib/models/ownermodel.d.ts +13 -23
  33. package/lib/models/ownermodel.js +24 -51
  34. package/lib/models/ownermodel.js.map +1 -1
  35. package/lib/models/ownermodel.spec.js +23 -11
  36. package/lib/models/ownermodel.spec.js.map +1 -1
  37. package/lib/models/relations.d.ts +167 -0
  38. package/lib/models/relations.js +113 -0
  39. package/lib/models/relations.js.map +1 -0
  40. package/lib/models/rolemodel.d.ts +3 -3
  41. package/lib/models/rolemodel.js +6 -6
  42. package/lib/models/rolemodel.js.map +1 -1
  43. package/lib/models/rolemodel.spec.js +12 -12
  44. package/lib/models/rolemodel.spec.js.map +1 -1
  45. package/lib/models/user.d.ts +40 -24
  46. package/lib/models/user.js +74 -48
  47. package/lib/models/user.js.map +1 -1
  48. package/lib/models/user.spec.js +24 -4
  49. package/lib/models/user.spec.js.map +1 -1
  50. package/lib/queues/memoryqueue.spec.js +9 -5
  51. package/lib/queues/memoryqueue.spec.js.map +1 -1
  52. package/lib/queues/queueservice.js.map +1 -1
  53. package/lib/router.d.ts +17 -8
  54. package/lib/router.js +81 -9
  55. package/lib/router.js.map +1 -1
  56. package/lib/router.spec.js +89 -5
  57. package/lib/router.spec.js.map +1 -1
  58. package/lib/services/asyncevents.spec.js +4 -4
  59. package/lib/services/authentication.d.ts +21 -22
  60. package/lib/services/authentication.js +90 -109
  61. package/lib/services/authentication.js.map +1 -1
  62. package/lib/services/authentication.spec.js +51 -65
  63. package/lib/services/authentication.spec.js.map +1 -1
  64. package/lib/services/binary.d.ts +132 -31
  65. package/lib/services/binary.js +257 -72
  66. package/lib/services/binary.js.map +1 -1
  67. package/lib/services/binary.spec.d.ts +16 -6
  68. package/lib/services/binary.spec.js +44 -117
  69. package/lib/services/binary.spec.js.map +1 -1
  70. package/lib/services/cloudbinary.d.ts +9 -10
  71. package/lib/services/cloudbinary.js +14 -15
  72. package/lib/services/cloudbinary.js.map +1 -1
  73. package/lib/services/cloudbinary.spec.d.ts +2 -2
  74. package/lib/services/cloudbinary.spec.js +13 -12
  75. package/lib/services/cloudbinary.spec.js.map +1 -1
  76. package/lib/services/configuration.js +9 -9
  77. package/lib/services/configuration.js.map +1 -1
  78. package/lib/services/configuration.spec.js +5 -7
  79. package/lib/services/configuration.spec.js.map +1 -1
  80. package/lib/services/cron.spec.js +3 -4
  81. package/lib/services/cron.spec.js.map +1 -1
  82. package/lib/services/cryptoservice.d.ts +2 -2
  83. package/lib/services/cryptoservice.js +5 -2
  84. package/lib/services/cryptoservice.js.map +1 -1
  85. package/lib/services/domainservice.d.ts +113 -0
  86. package/lib/services/domainservice.js +357 -0
  87. package/lib/services/domainservice.js.map +1 -0
  88. package/lib/services/domainservice.spec.d.ts +1 -0
  89. package/lib/services/domainservice.spec.js +334 -0
  90. package/lib/services/domainservice.spec.js.map +1 -0
  91. package/lib/services/echo.d.ts +2 -2
  92. package/lib/services/echo.js.map +1 -1
  93. package/lib/services/echo.spec.js +9 -2
  94. package/lib/services/echo.spec.js.map +1 -1
  95. package/lib/services/filebinary.d.ts +13 -14
  96. package/lib/services/filebinary.js +79 -73
  97. package/lib/services/filebinary.js.map +1 -1
  98. package/lib/services/filebinary.spec.d.ts +5 -0
  99. package/lib/services/filebinary.spec.js +222 -11
  100. package/lib/services/filebinary.spec.js.map +1 -1
  101. package/lib/services/fileconfiguration.js +4 -4
  102. package/lib/services/fileconfiguration.js.map +1 -1
  103. package/lib/services/fileconfiguration.spec.js +23 -24
  104. package/lib/services/fileconfiguration.spec.js.map +1 -1
  105. package/lib/services/invitationservice.d.ts +11 -9
  106. package/lib/services/invitationservice.js +17 -23
  107. package/lib/services/invitationservice.js.map +1 -1
  108. package/lib/services/invitationservice.spec.js +43 -40
  109. package/lib/services/invitationservice.spec.js.map +1 -1
  110. package/lib/services/kubernetesconfiguration.js +12 -22
  111. package/lib/services/kubernetesconfiguration.js.map +1 -1
  112. package/lib/services/kubernetesconfiguration.spec.js +1 -6
  113. package/lib/services/kubernetesconfiguration.spec.js.map +1 -1
  114. package/lib/services/mailer.js +1 -1
  115. package/lib/services/mailer.js.map +1 -1
  116. package/lib/services/mailer.spec.js +4 -1
  117. package/lib/services/mailer.spec.js.map +1 -1
  118. package/lib/services/oauth.d.ts +17 -9
  119. package/lib/services/oauth.js +30 -4
  120. package/lib/services/oauth.js.map +1 -1
  121. package/lib/services/oauth.spec.js +32 -15
  122. package/lib/services/oauth.spec.js.map +1 -1
  123. package/lib/services/prometheus.spec.js.map +1 -1
  124. package/lib/services/proxy.d.ts +9 -8
  125. package/lib/services/proxy.js +65 -36
  126. package/lib/services/proxy.js.map +1 -1
  127. package/lib/services/proxy.spec.js +28 -2
  128. package/lib/services/proxy.spec.js.map +1 -1
  129. package/lib/services/resource.d.ts +3 -3
  130. package/lib/services/resource.js +4 -3
  131. package/lib/services/resource.js.map +1 -1
  132. package/lib/services/resource.spec.js +3 -3
  133. package/lib/services/resource.spec.js.map +1 -1
  134. package/lib/services/service.d.ts +10 -13
  135. package/lib/services/service.js +29 -13
  136. package/lib/services/service.js.map +1 -1
  137. package/lib/services/service.spec.js +49 -11
  138. package/lib/services/service.spec.js.map +1 -1
  139. package/lib/services/version.d.ts +2 -2
  140. package/lib/services/version.js.map +1 -1
  141. package/lib/stores/aggregator.js +1 -0
  142. package/lib/stores/aggregator.js.map +1 -1
  143. package/lib/stores/aliasstore.d.ts +2 -2
  144. package/lib/stores/aliasstore.js +15 -4
  145. package/lib/stores/aliasstore.js.map +1 -1
  146. package/lib/stores/aliasstore.spec.js +4 -2
  147. package/lib/stores/aliasstore.spec.js.map +1 -1
  148. package/lib/stores/file.d.ts +5 -2
  149. package/lib/stores/file.js +11 -8
  150. package/lib/stores/file.js.map +1 -1
  151. package/lib/stores/file.spec.js +21 -34
  152. package/lib/stores/file.spec.js.map +1 -1
  153. package/lib/stores/mapper.d.ts +4 -2
  154. package/lib/stores/mapper.js +18 -11
  155. package/lib/stores/mapper.js.map +1 -1
  156. package/lib/stores/mapper.spec.js +6 -3
  157. package/lib/stores/mapper.spec.js.map +1 -1
  158. package/lib/stores/memory.d.ts +5 -2
  159. package/lib/stores/memory.js +11 -9
  160. package/lib/stores/memory.js.map +1 -1
  161. package/lib/stores/memory.spec.d.ts +3 -0
  162. package/lib/stores/memory.spec.js +100 -11
  163. package/lib/stores/memory.spec.js.map +1 -1
  164. package/lib/stores/store.d.ts +177 -87
  165. package/lib/stores/store.js +312 -141
  166. package/lib/stores/store.js.map +1 -1
  167. package/lib/stores/store.spec.d.ts +2 -2
  168. package/lib/stores/store.spec.js +54 -38
  169. package/lib/stores/store.spec.js.map +1 -1
  170. package/lib/stores/webdaql/WebdaQLLexer.d.ts +14 -13
  171. package/lib/stores/webdaql/WebdaQLLexer.js +121 -112
  172. package/lib/stores/webdaql/WebdaQLLexer.js.map +1 -1
  173. package/lib/stores/webdaql/WebdaQLParserLexer.d.ts +14 -13
  174. package/lib/stores/webdaql/WebdaQLParserLexer.js +121 -112
  175. package/lib/stores/webdaql/WebdaQLParserLexer.js.map +1 -1
  176. package/lib/stores/webdaql/WebdaQLParserListener.d.ts +15 -3
  177. package/lib/stores/webdaql/WebdaQLParserParser.d.ts +23 -13
  178. package/lib/stores/webdaql/WebdaQLParserParser.js +149 -94
  179. package/lib/stores/webdaql/WebdaQLParserParser.js.map +1 -1
  180. package/lib/stores/webdaql/WebdaQLParserVisitor.d.ts +9 -2
  181. package/lib/stores/webdaql/query.d.ts +6 -2
  182. package/lib/stores/webdaql/query.js +14 -1
  183. package/lib/stores/webdaql/query.js.map +1 -1
  184. package/lib/stores/webdaql/query.spec.js +10 -1
  185. package/lib/stores/webdaql/query.spec.js.map +1 -1
  186. package/lib/test.d.ts +48 -19
  187. package/lib/test.js +171 -63
  188. package/lib/test.js.map +1 -1
  189. package/lib/unpackedapplication.d.ts +5 -0
  190. package/lib/unpackedapplication.js +58 -10
  191. package/lib/unpackedapplication.js.map +1 -1
  192. package/lib/utils/context.d.ts +76 -29
  193. package/lib/utils/context.js +91 -55
  194. package/lib/utils/context.js.map +1 -1
  195. package/lib/utils/context.spec.d.ts +9 -1
  196. package/lib/utils/context.spec.js +73 -8
  197. package/lib/utils/context.spec.js.map +1 -1
  198. package/lib/utils/cookie.d.ts +4 -5
  199. package/lib/utils/cookie.js +1 -2
  200. package/lib/utils/cookie.js.map +1 -1
  201. package/lib/utils/cookie.spec.js +5 -3
  202. package/lib/utils/cookie.spec.js.map +1 -1
  203. package/lib/utils/httpcontext.spec.js +9 -3
  204. package/lib/utils/httpcontext.spec.js.map +1 -1
  205. package/lib/utils/serializers.d.ts +46 -17
  206. package/lib/utils/serializers.js +116 -2
  207. package/lib/utils/serializers.js.map +1 -1
  208. package/lib/utils/serializers.spec.js +84 -20
  209. package/lib/utils/serializers.spec.js.map +1 -1
  210. package/lib/utils/session.d.ts +14 -8
  211. package/lib/utils/session.js +14 -3
  212. package/lib/utils/session.js.map +1 -1
  213. package/lib/utils/session.spec.js +6 -1
  214. package/lib/utils/session.spec.js.map +1 -1
  215. package/package.json +16 -10
  216. package/test/cachedapp/webda.config.json +6 -1
  217. package/test/config-cached.json +5 -0
  218. package/test/config-file-missing-file.json +5 -7
  219. package/test/config-file-no-reload.json +5 -7
  220. package/test/config-file-reload.json +5 -7
  221. package/test/config-kube-reload.json +5 -11
  222. package/test/config-reload.json +2 -4
  223. package/test/config.json +12 -2
  224. package/test/moddas/voidstore.js +1 -1
  225. package/test/models/ident.js +6 -4
  226. package/test/models/task.js +4 -4
  227. package/webda.module.json +1587 -1266
@@ -8,12 +8,23 @@ import { suite, test } from "@testdeck/mocha";
8
8
  import * as assert from "assert";
9
9
  import { Readable } from "stream";
10
10
  import { WebdaTest } from "../test.js";
11
- import { Context, OperationContext, WebContext } from "./context.js";
11
+ import { OperationContext, SimpleOperationContext, WebContext } from "./context.js";
12
12
  import { HttpContext } from "./httpcontext.js";
13
+ import { Session } from "./session.js";
14
+ export class WebContextMock extends WebContext {
15
+ constructor(webda, httpContext, stream) {
16
+ super(webda, httpContext, stream);
17
+ }
18
+ }
19
+ export class OperationContextMock extends OperationContext {
20
+ constructor(webda) {
21
+ super(webda);
22
+ }
23
+ }
13
24
  let ContextTest = class ContextTest extends WebdaTest {
14
25
  async before() {
15
26
  await super.before();
16
- this.ctx = new Context(this.webda, new HttpContext("test.webda.io", "GET", "/"));
27
+ this.ctx = new WebContextMock(this.webda, new HttpContext("test.webda.io", "GET", "/"));
17
28
  }
18
29
  async urlObject() {
19
30
  let urlObject = new URL("https://test.webda.io/mypath/is/long?search=1&test=2");
@@ -41,13 +52,17 @@ let ContextTest = class ContextTest extends WebdaTest {
41
52
  // Hash is not sent to server so no need in HttpContext (@see https://developer.mozilla.org/en-US/docs/Web/API/URL/hash)
42
53
  // Username and password would endup in a header no in the url
43
54
  }
55
+ async copyContext() {
56
+ let context = await this.newContext();
57
+ await SimpleOperationContext.fromContext(context);
58
+ }
44
59
  async cov() {
45
60
  // Get the last lines
46
61
  this.ctx.logIn();
47
62
  this.ctx.getRoute();
48
63
  assert.notStrictEqual(this.ctx.getService("Users"), undefined);
49
64
  assert.notStrictEqual(this.ctx.getService("Users"), undefined);
50
- this.ctx = new Context(this.webda, new HttpContext("test.webda.io", "GET", "/uritemplate/plop"));
65
+ this.ctx = new WebContextMock(this.webda, new HttpContext("test.webda.io", "GET", "/uritemplate/plop"));
51
66
  this.ctx.setPathParameters({ id: "plop" });
52
67
  this.ctx.setServiceParameters({ id: "service" });
53
68
  assert.strictEqual(this.ctx.getServiceParameters().id, "service");
@@ -57,7 +72,6 @@ let ContextTest = class ContextTest extends WebdaTest {
57
72
  assert.strictEqual(this.ctx.getExtension("mine"), "plop");
58
73
  // @ts-ignore
59
74
  assert.strictEqual(this.ctx.getRequestParameters(), this.ctx.parameters);
60
- assert.strictEqual(this.ctx.isGlobal(), false);
61
75
  // @ts-ignore
62
76
  this.ctx.session = undefined;
63
77
  assert.strictEqual(this.ctx.getSession(), undefined);
@@ -107,6 +121,13 @@ let ContextTest = class ContextTest extends WebdaTest {
107
121
  assert.strictEqual(this.ctx.hasFlushedHeaders(), true);
108
122
  this.ctx.setFlushedHeaders(false);
109
123
  assert.strictEqual(this.ctx.hasFlushedHeaders(), false);
124
+ assert.strictEqual(this.ctx.getResponseCode(), 200);
125
+ }
126
+ simpleOperationContext() {
127
+ const ctx = new SimpleOperationContext(this.webda);
128
+ const session = new Session();
129
+ ctx.setSession(session);
130
+ assert.strictEqual(session, ctx.getSession());
110
131
  }
111
132
  async pipe() {
112
133
  this.ctx.statusCode = 204;
@@ -125,12 +146,36 @@ let ContextTest = class ContextTest extends WebdaTest {
125
146
  assert.strictEqual(this.ctx.statusCode, 200);
126
147
  assert.strictEqual(this.ctx.getResponseBody().toString(), "Plop");
127
148
  }
149
+ async getInputError() {
150
+ let i = 0;
151
+ this.ctx.getRawInputAsString = async () => {
152
+ if (i++ === 0) {
153
+ throw new Error("Error");
154
+ }
155
+ return "";
156
+ };
157
+ assert.strictEqual(await this.ctx.getInput(), undefined);
158
+ }
159
+ async nullInput() {
160
+ this.ctx.getRawInputAsString = async () => {
161
+ return '{"test": null, "plop": 12}';
162
+ };
163
+ assert.deepStrictEqual(await this.ctx.getInput(), { test: null, plop: 12 });
164
+ }
128
165
  getRequest() {
129
166
  // Need to finish this
130
167
  let req = this.ctx.getRequest();
131
168
  // cov
132
169
  req.setTimeout(1, () => { });
133
170
  }
171
+ getResponseSize() {
172
+ // @ts-ignore
173
+ this.ctx._body = "PLOP";
174
+ assert.strictEqual(this.ctx.getResponseSize(), 4);
175
+ // @ts-ignore
176
+ this.ctx._body = "Rémi";
177
+ assert.strictEqual(this.ctx.getResponseSize(), 5);
178
+ }
134
179
  getAbsoluteUrl() {
135
180
  let ctx = new HttpContext("test.webda.io", "GET", "/uritemplate/plop", "http", 80, {
136
181
  cookie: "PHPSESSID=298zf09hf012fh2; csrftoken=u32t4o3tb3gg43; _gat=1"
@@ -156,11 +201,11 @@ let ContextTest = class ContextTest extends WebdaTest {
156
201
  assert.strictEqual(ctx.prefix, "/plop");
157
202
  }
158
203
  expressCompatibility() {
159
- this.ctx = new Context(this.webda, new HttpContext("test.webda.io", "GET", "/uritemplate/plop"));
204
+ this.ctx = new WebContextMock(this.webda, new HttpContext("test.webda.io", "GET", "/uritemplate/plop"));
160
205
  assert.strictEqual(this.ctx.statusCode, 204);
161
206
  assert.strictEqual(this.ctx.status(403), this.ctx);
162
207
  assert.strictEqual(this.ctx.statusCode, 403);
163
- this.ctx = new Context(this.webda, new HttpContext("test.webda.io", "GET", "/uritemplate/plop"));
208
+ this.ctx = new WebContextMock(this.webda, new HttpContext("test.webda.io", "GET", "/uritemplate/plop"));
164
209
  assert.strictEqual(this.ctx.statusCode, 204);
165
210
  assert.strictEqual(this.ctx.json({ plop: "test" }), this.ctx);
166
211
  assert.strictEqual(this.ctx.getResponseBody(), '{"plop":"test"}');
@@ -189,7 +234,10 @@ let ContextTest = class ContextTest extends WebdaTest {
189
234
  });
190
235
  assert.strictEqual(this.ctx.getResponseHeaders()["test"], "plop");
191
236
  this.ctx.setHeader("X-Webda", "HEAD");
237
+ this.ctx.setHeader("X-Webda2", "HEAD");
238
+ this.ctx.setHeader("X-Webda2", undefined);
192
239
  assert.strictEqual(this.ctx.getResponseHeaders()["X-Webda"], "HEAD");
240
+ assert.strictEqual(this.ctx.getResponseHeaders()["X-Webda2"], undefined);
193
241
  this.ctx.write(400);
194
242
  assert.strictEqual(this.ctx.getResponseBody(), "400");
195
243
  // @ts-ignore
@@ -232,7 +280,7 @@ let ContextTest = class ContextTest extends WebdaTest {
232
280
  assert.strictEqual(this.ctx.getLocale(), "en");
233
281
  }
234
282
  async operationContext() {
235
- let ctx = new OperationContext(this.webda);
283
+ let ctx = new OperationContextMock(this.webda);
236
284
  assert.strictEqual(ctx.getCurrentUserId(), undefined);
237
285
  assert.strictEqual(await ctx.getRawInputAsString(), "");
238
286
  assert.strictEqual((await ctx.getRawInput()).toString(), "");
@@ -240,9 +288,11 @@ let ContextTest = class ContextTest extends WebdaTest {
240
288
  ctx.createStream();
241
289
  ctx.getOutputStream().write("plop");
242
290
  assert.strictEqual(ctx.getOutput(), "plop");
291
+ ctx.writeHead(200, { test: "plip" });
292
+ ctx.setHeader("test", "plip");
243
293
  // cov
244
294
  let http = new HttpContext("test.webda.io", "GET", "/");
245
- ctx = new WebContext(this.webda, http);
295
+ ctx = new WebContextMock(this.webda, http);
246
296
  await ctx.getRawInput();
247
297
  ctx.getRawStream();
248
298
  }
@@ -250,15 +300,30 @@ let ContextTest = class ContextTest extends WebdaTest {
250
300
  __decorate([
251
301
  test
252
302
  ], ContextTest.prototype, "urlObject", null);
303
+ __decorate([
304
+ test
305
+ ], ContextTest.prototype, "copyContext", null);
253
306
  __decorate([
254
307
  test
255
308
  ], ContextTest.prototype, "cov", null);
309
+ __decorate([
310
+ test
311
+ ], ContextTest.prototype, "simpleOperationContext", null);
256
312
  __decorate([
257
313
  test
258
314
  ], ContextTest.prototype, "pipe", null);
315
+ __decorate([
316
+ test
317
+ ], ContextTest.prototype, "getInputError", null);
318
+ __decorate([
319
+ test
320
+ ], ContextTest.prototype, "nullInput", null);
259
321
  __decorate([
260
322
  test
261
323
  ], ContextTest.prototype, "getRequest", null);
324
+ __decorate([
325
+ test
326
+ ], ContextTest.prototype, "getResponseSize", null);
262
327
  __decorate([
263
328
  test
264
329
  ], ContextTest.prototype, "getAbsoluteUrl", null);
@@ -1 +1 @@
1
- {"version":3,"file":"context.spec.js","sourceRoot":"","sources":["../../src/utils/context.spec.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,SAAS;IAEjC,KAAK,CAAC,MAAM;QACV,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC;QACrB,IAAI,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;IACnF,CAAC;IAGK,AAAN,KAAK,CAAC,SAAS;QACb,IAAI,SAAS,GAAG,IAAI,GAAG,CAAC,sDAAsD,CAAC,CAAC;QAChF,IAAI,GAAG,GAAG,IAAI,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,iCAAiC,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QACnG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE,GAAG,CAAC,CAAC;QAC7C,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;QACtD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;QACtD,SAAS,GAAG,IAAI,GAAG,CAAC,kCAAkC,CAAC,CAAC;QACxD,GAAG,GAAG,IAAI,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QACvE,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE,IAAI,CAAC,CAAC;QAC9C,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;QACtD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;QACtD,wHAAwH;QACxH,8DAA8D;IAChE,CAAC;IAGK,AAAN,KAAK,CAAC,GAAG;QACP,qBAAqB;QACrB,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACpB,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC;QAC/D,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAU,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC;QACxE,IAAI,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC;QACjG,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;QACjD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAClE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC5D,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;QAC1D,aAAa;QACb,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACzE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;QAC/C,aAAa;QACb,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;QAC7B,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;QACrD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACjD,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7C,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAEjD,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACxB,MAAM,GAAG,IAAI,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC3B,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QAClB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAE7B,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,iBAAiB,CAAC,CAAC;QAC5D,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG;YACnB,aAAa;YACb,IAAI,EAAE,GAAG,EAAE;gBACT,MAAM,GAAG,IAAI,CAAC;YAChB,CAAC;SACF,CAAC;QAEF,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG;YAChB,aAAa;YACb,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI;SACjC,CAAC;QACF,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACzB,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QAElB,aAAa;QACb,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;QACvB,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QAErB,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC7C,MAAM,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,SAAS,CAAC,CAAC;QAC/D,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACtC,MAAM,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,SAAS,CAAC,CAAC;QAE/D,aAAa;QACb,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC;QACxB,aAAa;QACb,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACnC,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QACrB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QAC7C,aAAa;QACb,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAE7C,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,KAAK,CAAC,CAAC;QACxD,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;QAC7B,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC;IAGK,AAAN,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;QAC1B,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACtB,IAAI,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAChD,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QAClC,IAAI,IAAI,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACzC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;QAClC,MAAM,IAAI,CAAC;QACX,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,gCAAgC,CAAC,CAAC;QACzF,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QACrB,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,gCAAgC,CAAC,CAAC;QACzF,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QAC7C,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;IACpE,CAAC;IAGD,UAAU;QACR,sBAAsB;QACtB,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;QAChC,MAAM;QACN,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC9B,CAAC;IAGD,cAAc;QACZ,IAAI,GAAG,GAAG,IAAI,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE,EAAE;YACjF,MAAM,EAAE,6DAA6D;SACtE,CAAC,CAAC;QACH,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,2BAA2B,CAAC,CAAC;QAC7E,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE;YACvC,SAAS,EAAE,iBAAiB;YAC5B,SAAS,EAAE,gBAAgB;YAC3B,IAAI,EAAE,GAAG;SACV,CAAC,CAAC;QACH,GAAG,GAAG,IAAI,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QAChF,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,2CAA2C,CAAC,CAAC;QACtF,GAAG,GAAG,IAAI,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAChF,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,+BAA+B,CAAC,CAAC;QACjF,GAAG,GAAG,IAAI,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAClF,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,6CAA6C,CAAC,CAAC;QACxF,GAAG,GAAG,IAAI,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QACjF,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,4BAA4B,CAAC,CAAC;QAC9E,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC,CAAC;QACnE,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,iBAAiB,CAAC,EAAE,uCAAuC,CAAC,CAAC;QACnG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,0BAA0B,CAAC,EAAE,0BAA0B,CAAC,CAAC;QAC/F,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACxB,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAGD,oBAAoB;QAClB,IAAI,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC;QACjG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QAC7C,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACnD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QAC7C,IAAI,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC;QACjG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QAC7C,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9D,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,iBAAiB,CAAC,CAAC;QAClE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC;IAGK,AAAN,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QAChB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;QAC9C,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,QAAQ,EAAE,0BAA0B,CAAC,CAAC;QACvF,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO;QACL,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QAChB,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,SAAS,CAAC,CAAC;QACtD,aAAa;QACb,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;QAC7B,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,EAAE,SAAS,CAAC,CAAC;QAC3D,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,SAAS,CAAC,CAAC;QACvD,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAClC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC3D,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC7D,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,EAAE;YAC5B,IAAI,EAAE,MAAM;SACb,CAAC,CAAC;QACH,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;QAClE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACtC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;QACrE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,KAAK,CAAC,CAAC;QACtD,aAAa;QACb,MAAM,CAAC,OAAO,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE;YACjC,QAAQ,CAAC;gBACP;oBACE,IAAI,EAAE,UAAU;iBACjB;aACF,CAAC,CAAC;YACH,aAAa;YACb,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACpD,QAAQ,CAAC;gBACP;oBACE,IAAI,EAAE,KAAK;iBACZ;aACF,CAAC,CAAC;YACH,aAAa;YACb,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACrD,CAAC,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;QACtB,aAAa;QACb,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;IAC7B,CAAC;IAGD,aAAa;QACX,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAGD,YAAY;QACV,aAAa;QACb,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,UAAU,EAAE,CAAC,iBAAiB,CAAC,GAAG,+BAA+B,CAAC;QAC5F,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;IAGD,WAAW;QACT,aAAa;QACb,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,UAAU,EAAE,CAAC,iBAAiB,CAAC,GAAG,8CAA8C,CAAC;QAC3G,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAGD,cAAc;QACZ,aAAa;QACb,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,UAAU,EAAE,CAAC,iBAAiB,CAAC,GAAG,8CAA8C,CAAC;QAC3G,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;IAGK,AAAN,KAAK,CAAC,gBAAgB;QACpB,IAAI,GAAG,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3C,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,gBAAgB,EAAE,EAAE,SAAS,CAAC,CAAC;QACtD,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,mBAAmB,EAAE,EAAE,EAAE,CAAC,CAAC;QACxD,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7D,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,SAAS,CAAC,CAAC;QAClD,GAAG,CAAC,YAAY,EAAE,CAAC;QACnB,GAAG,CAAC,eAAe,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACpC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,MAAM,CAAC,CAAC;QAC5C,MAAM;QACN,IAAI,IAAI,GAAG,IAAI,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QACxD,GAAG,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACvC,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;QACxB,GAAG,CAAC,YAAY,EAAE,CAAC;IACrB,CAAC;CACF,CAAA;AArQO;IADL,IAAI;4CA0BJ;AAGK;IADL,IAAI;sCA0EJ;AAGK;IADL,IAAI;uCAiBJ;AAGD;IADC,IAAI;6CAMJ;AAGD;IADC,IAAI;iDAwBJ;AAGD;IADC,IAAI;uDAWJ;AAGK;IADL,IAAI;2CAMJ;AAED;IADC,IAAI;0CAyCJ;AAGD;IADC,IAAI;gDAGJ;AAGD;IADC,IAAI;+CAKJ;AAGD;IADC,IAAI;8CAKJ;AAGD;IADC,IAAI;iDAKJ;AAGK;IADL,IAAI;mDAeJ;AA5QG,WAAW;IADhB,KAAK;GACA,WAAW,CA6QhB"}
1
+ {"version":3,"file":"context.spec.js","sourceRoot":"","sources":["../../src/utils/context.spec.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { CookieSerializeOptions } from "cookie";
2
2
  import { JWTOptions } from "../services/cryptoservice.js";
3
- import { Context } from "./context.js";
3
+ import { WebContext } from "./context.js";
4
4
  import { HttpContext } from "./httpcontext.js";
5
5
  /**
6
6
  * Cookie Options
@@ -57,7 +57,6 @@ export declare class CookieOptions implements CookieSerializeOptions {
57
57
  * You cannot store variables starting with _ in the session if you do use them they won't be persist, so it can be used to add some context
58
58
  *
59
59
  * @category CoreFeatures
60
- * @WebdaModel
61
60
  */
62
61
  export declare class SecureCookie {
63
62
  /**
@@ -70,7 +69,7 @@ export declare class SecureCookie {
70
69
  * @param context
71
70
  * @returns
72
71
  */
73
- static load(name: string, context: Context, options?: JWTOptions): Promise<any>;
72
+ static load(name: string, context: WebContext, options?: JWTOptions): Promise<any>;
74
73
  /**
75
74
  * Send a cookie, split it if required
76
75
  *
@@ -79,7 +78,7 @@ export declare class SecureCookie {
79
78
  * @param data
80
79
  * @param options
81
80
  */
82
- static save(name: string, context: Context, data: any, options?: JWTOptions, cookieOptions?: Partial<CookieOptions>): Promise<void>;
81
+ static save(name: string, context: WebContext, data: any, options?: JWTOptions, cookieOptions?: Partial<CookieOptions>): Promise<void>;
83
82
  /**
84
83
  * Will send the cookie to context and split it
85
84
  * if needed as max length for cookies are 4096
@@ -90,5 +89,5 @@ export declare class SecureCookie {
90
89
  * @param value of the cookie
91
90
  * @param params for the cookie
92
91
  */
93
- static sendCookie(ctx: Context, name: string, value: string, params: CookieOptions): void;
92
+ static sendCookie(ctx: WebContext, name: string, value: string, params: CookieOptions): void;
94
93
  }
@@ -40,7 +40,6 @@ export class CookieOptions {
40
40
  * You cannot store variables starting with _ in the session if you do use them they won't be persist, so it can be used to add some context
41
41
  *
42
42
  * @category CoreFeatures
43
- * @WebdaModel
44
43
  */
45
44
  export class SecureCookie {
46
45
  /**
@@ -56,7 +55,7 @@ export class SecureCookie {
56
55
  static async load(name, context, options) {
57
56
  let cookies = {};
58
57
  let raw = "";
59
- let session = context.newSession();
58
+ let session = await context.newSession();
60
59
  // No http context
61
60
  if (!context.getHttpContext()) {
62
61
  return session;
@@ -1 +1 @@
1
- {"version":3,"file":"cookie.js","sourceRoot":"","sources":["../../src/utils/cookie.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cookie.js","sourceRoot":"","sources":["../../src/utils/cookie.ts"],"names":[],"mappings":"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"}
@@ -7,16 +7,17 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { suite, test } from "@testdeck/mocha";
8
8
  import * as assert from "assert";
9
9
  import { serialize as cookieSerialize } from "cookie";
10
- import { Context, CookieOptions, SecureCookie } from "../index.js";
10
+ import { CookieOptions, SecureCookie } from "../index.js";
11
11
  import { WebdaTest } from "../test.js";
12
12
  import { SimpleOperationContext } from "./context.js";
13
+ import { WebContextMock } from "./context.spec.js";
13
14
  import { HttpContext } from "./httpcontext.js";
14
15
  import { Session } from "./session.js";
15
16
  const SECRET = "Lp4B72FPU5n6q4EpVRGyPFnZp5cgLRPScVWixW52Yq84hD4MmnfVfgxKQ5ENLp4B72FPU5n6q4EpVRGyPFnZp5cgLRPScVWixW52Yq84hD4MmnfVfgxKQ5ENLp4B72FPU5n6q4EpVRGyPFnZp5cgLRPScVWixW52Yq84hD4MmnfVfgxKQ5ENLp4B72FPU5n6q4EpVRGyPFnZp5cgLRPScVWixW52Yq84hD4MmnfVfgxKQ5ENLp4B72FPU5n6q4EpVRGyPFnZp5cgLRPScVWixW52Yq84hD4MmnfVfgxKQ5ENLp4B72FPU5n6q4EpVRGyPFnZp5cgLRPScVWixW52Yq84hD4MmnfVfgxKQ5ENLp4B72FPU5n6q4EpVRGyPFnZp5cgLRPScVWixW52Yq84hD4MmnfVfgxKQ5ENLp4B72FPU5n6q4EpVRGyPFnZp5cgLRPScVWixW52Yq84hD4MmnfVfgxKQ5ENLp4B72FPU5n6q4EpVRGyPFnZp5cgLRPScVWixW52Yq84hD4MmnfVfgxKQ5ENLp4B72FPU5n6q4EpVRGyPFnZp5cgLRPScVWixW52Yq84hD4MmnfVfgxKQ5ENLp4B72FPU5n6q4EpVRGyPFnZp5cgLRPScVWixW52Yq84hD4MmnfVfgxKQ5ENLp4B72FPU5n6q4EpVRGyPFnZp5cgLRPScVWixW52Yq84hD4MmnfVfgxKQ5ENLp4B72FPU5n6q4EpVRGyPFnZp5cgLRPScVWixW52Yq84hD4MmnfVfgxKQ5EN";
16
17
  let CookieTest = class CookieTest extends WebdaTest {
17
18
  async before() {
18
19
  await super.before();
19
- this._ctx = await this.webda.newContext(new HttpContext("test.webda.io", "GET", "/"));
20
+ this._ctx = await this.webda.newWebContext(new HttpContext("test.webda.io", "GET", "/"));
20
21
  this.webda.updateContextWithRoute(this._ctx);
21
22
  }
22
23
  async testBadSecret() {
@@ -24,10 +25,11 @@ let CookieTest = class CookieTest extends WebdaTest {
24
25
  ctx.getHttpContext().cookies = {};
25
26
  ctx.getHttpContext().cookies["test"] = "plop";
26
27
  let session = await SecureCookie.load("test", ctx, undefined);
28
+ console.log(session);
27
29
  assert.strictEqual(Object.keys(session).length, 0);
28
30
  }
29
31
  async cov() {
30
- let session = await SecureCookie.load("test", new Context(this.webda, undefined, undefined), undefined);
32
+ let session = await SecureCookie.load("test", new WebContextMock(this.webda, undefined, undefined), undefined);
31
33
  assert.strictEqual(Object.keys(session).length, 0);
32
34
  assert.strictEqual(await new SimpleOperationContext(this.webda).setInput(Buffer.from("plop")).getRawInputAsString(), "plop");
33
35
  let ctx = await this.newContext();
@@ -1 +1 @@
1
- {"version":3,"file":"cookie.spec.js","sourceRoot":"","sources":["../../src/utils/cookie.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cookie.spec.js","sourceRoot":"","sources":["../../src/utils/cookie.spec.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,9 @@ let HttpContextTest = class HttpContextTest {
24
24
  assert.strictEqual(ctx.getUniqueHeader("other"), "head2");
25
25
  }
26
26
  async stream() {
27
- let ctx = new HttpContext("test.webda.io", "GET", "/test", "http", 80, { "X-Test": "weBda" });
27
+ let ctx = new HttpContext("test.webda.io", "GET", "/test", "http", 80, {
28
+ "X-Test": "weBda"
29
+ });
28
30
  ctx.setBody("Test");
29
31
  // Next line is just for cov
30
32
  ctx.setClientIp("127.0.0.1").getClientIp();
@@ -40,14 +42,18 @@ let HttpContextTest = class HttpContextTest {
40
42
  await assert.rejects(() => ctx.getRawBodyAsString(), /Only UTF-8 is currently managed/);
41
43
  }
42
44
  async oversize() {
43
- let ctx = new HttpContext("test.webda.io", "GET", "/test", "http", 80, { "X-Test": "weBda" });
45
+ let ctx = new HttpContext("test.webda.io", "GET", "/test", "http", 80, {
46
+ "X-Test": "weBda"
47
+ });
44
48
  ctx.setBody("Test".repeat(1024));
45
49
  let stream = ctx.getRawStream();
46
50
  ctx.setBody(stream);
47
51
  await assert.rejects(() => ctx.getRawBody(128), /Request oversized/);
48
52
  }
49
53
  async timeout() {
50
- let ctx = new HttpContext("test.webda.io", "GET", "/test", "http", 80, { "X-Test": "weBda" });
54
+ let ctx = new HttpContext("test.webda.io", "GET", "/test", "http", 80, {
55
+ "X-Test": "weBda"
56
+ });
51
57
  let str = new FakeReadable();
52
58
  ctx.setBody(str);
53
59
  await assert.rejects(() => ctx.getRawBody(undefined, 100), /Request timeout/);
@@ -1 +1 @@
1
- {"version":3,"file":"httpcontext.spec.js","sourceRoot":"","sources":["../../src/utils/httpcontext.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"httpcontext.spec.js","sourceRoot":"","sources":["../../src/utils/httpcontext.spec.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,44 @@
1
+ /// <reference types="node" />
2
+ import { Readable, Writable } from "stream";
3
+ type WalkerOptionsType = {
4
+ followSymlinks?: boolean;
5
+ includeDir?: boolean;
6
+ maxDepth?: number;
7
+ };
8
+ type FinderOptionsType = WalkerOptionsType & {
9
+ filterPattern?: RegExp;
10
+ processor?: (filepath: string) => void;
11
+ };
1
12
  /**
2
- * Allow save/load of yaml or json file
13
+ * Define a Finder that can be use
3
14
  */
4
- export declare const FileUtils: {
15
+ export interface StorageFinder {
5
16
  /**
6
- * Load a YAML or JSON file based on its extension
7
- *
8
- * @param filename to load
9
- * @returns
17
+ * Recursively browse the path and call processor on each
10
18
  */
11
- load: (filename: any) => any;
19
+ walk(path: string, processor: (filepath: string) => void, options?: WalkerOptionsType, state?: {
20
+ depth: number;
21
+ }): void;
12
22
  /**
13
- * Save a YAML or JSON file based on its extension
14
- *
15
- * @param object to serialize
16
- * @param filename to save
17
- * @returns
23
+ * Find
24
+ */
25
+ find(currentPath: string, options?: FinderOptionsType): string[];
26
+ /**
27
+ * Get a write stream based on the id return by the finder
18
28
  */
19
- save: (object: any, filename?: string, publicAudience?: boolean) => void;
29
+ getWriteStream(path: string): Writable;
30
+ /**
31
+ * Get a read stream based on the id return by the finder
32
+ */
33
+ getReadStream(path: string): Readable;
34
+ }
35
+ /**
36
+ * Allow save/load of yaml or json file
37
+ */
38
+ export declare const FileUtils: StorageFinder & {
39
+ save: (object: any, filename: string, publicAudience?: boolean) => void;
40
+ load: (filename: string) => any;
41
+ clean: (...files: string[]) => void;
20
42
  };
21
43
  /**
22
44
  * Simple JSON utils
@@ -55,11 +77,17 @@ export declare const JSONUtils: {
55
77
  /**
56
78
  * Helper to FileUtils.save
57
79
  */
58
- loadFile: (filename: any) => any;
80
+ loadFile: (filename: string) => any;
59
81
  /**
60
82
  * Helper to FileUtils.save
61
83
  */
62
- saveFile: (object: any, filename?: string, publicAudience?: boolean) => void;
84
+ saveFile: (object: any, filename: string, publicAudience?: boolean) => void;
85
+ /**
86
+ * Sort object keys
87
+ * @param unordered
88
+ * @returns
89
+ */
90
+ sortObject: (unordered: any, transformer?: (obj: any) => any) => any;
63
91
  };
64
92
  /**
65
93
  * Expose basic YAML function
@@ -68,11 +96,11 @@ export declare const YAMLUtils: {
68
96
  /**
69
97
  * Helper to FileUtils.save
70
98
  */
71
- saveFile: (object: any, filename?: string, publicAudience?: boolean) => void;
99
+ saveFile: (object: any, filename: string, publicAudience?: boolean) => void;
72
100
  /**
73
101
  * Helper to FileUtils.load
74
102
  */
75
- loadFile: (filename: any) => any;
103
+ loadFile: (filename: string) => any;
76
104
  /**
77
105
  * Duplicate an object using serializer
78
106
  */
@@ -92,3 +120,4 @@ export declare const YAMLUtils: {
92
120
  */
93
121
  stringify: (value: any, options?: any) => string;
94
122
  };
123
+ export {};