@webda/core 2.0.0-beta.1 → 2.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 (279) hide show
  1. package/lib/application.d.ts +9 -21
  2. package/lib/application.js +71 -84
  3. package/lib/application.js.map +1 -1
  4. package/lib/application.spec.js +121 -140
  5. package/lib/application.spec.js.map +1 -1
  6. package/lib/core.d.ts +86 -46
  7. package/lib/core.js +254 -316
  8. package/lib/core.js.map +1 -1
  9. package/lib/core.spec.js +326 -391
  10. package/lib/core.spec.js.map +1 -1
  11. package/lib/index.d.ts +49 -45
  12. package/lib/index.js +54 -67
  13. package/lib/index.js.map +1 -1
  14. package/lib/models/aclmodel.d.ts +2 -2
  15. package/lib/models/aclmodel.js +63 -90
  16. package/lib/models/aclmodel.js.map +1 -1
  17. package/lib/models/aclmodel.spec.js +127 -151
  18. package/lib/models/aclmodel.spec.js.map +1 -1
  19. package/lib/models/coremodel.d.ts +84 -11
  20. package/lib/models/coremodel.js +104 -103
  21. package/lib/models/coremodel.js.map +1 -1
  22. package/lib/models/coremodel.spec.js +91 -91
  23. package/lib/models/coremodel.spec.js.map +1 -1
  24. package/lib/models/deployment.js +1 -2
  25. package/lib/models/ident.d.ts +5 -3
  26. package/lib/models/ident.js +4 -9
  27. package/lib/models/ident.js.map +1 -1
  28. package/lib/models/ident.spec.js +9 -11
  29. package/lib/models/ident.spec.js.map +1 -1
  30. package/lib/models/ownermodel.d.ts +12 -2
  31. package/lib/models/ownermodel.js +54 -62
  32. package/lib/models/ownermodel.js.map +1 -1
  33. package/lib/models/ownermodel.spec.js +129 -152
  34. package/lib/models/ownermodel.spec.js.map +1 -1
  35. package/lib/models/rolemodel.d.ts +2 -2
  36. package/lib/models/rolemodel.js +24 -40
  37. package/lib/models/rolemodel.js.map +1 -1
  38. package/lib/models/rolemodel.spec.js +44 -61
  39. package/lib/models/rolemodel.spec.js.map +1 -1
  40. package/lib/models/user.d.ts +5 -5
  41. package/lib/models/user.js +3 -8
  42. package/lib/models/user.js.map +1 -1
  43. package/lib/models/user.spec.js +14 -16
  44. package/lib/models/user.spec.js.map +1 -1
  45. package/lib/queues/filequeue.d.ts +2 -2
  46. package/lib/queues/filequeue.js +72 -93
  47. package/lib/queues/filequeue.js.map +1 -1
  48. package/lib/queues/filequeue.spec.js +53 -70
  49. package/lib/queues/filequeue.spec.js.map +1 -1
  50. package/lib/queues/memoryqueue.d.ts +2 -2
  51. package/lib/queues/memoryqueue.js +37 -61
  52. package/lib/queues/memoryqueue.js.map +1 -1
  53. package/lib/queues/memoryqueue.spec.js +142 -165
  54. package/lib/queues/memoryqueue.spec.js.map +1 -1
  55. package/lib/queues/pubsubservice.d.ts +2 -2
  56. package/lib/queues/pubsubservice.js +3 -7
  57. package/lib/queues/pubsubservice.js.map +1 -1
  58. package/lib/queues/queue.spec.d.ts +1 -1
  59. package/lib/queues/queue.spec.js +42 -56
  60. package/lib/queues/queue.spec.js.map +1 -1
  61. package/lib/queues/queueservice.d.ts +4 -4
  62. package/lib/queues/queueservice.js +52 -67
  63. package/lib/queues/queueservice.js.map +1 -1
  64. package/lib/router.d.ts +7 -3
  65. package/lib/router.js +49 -48
  66. package/lib/router.js.map +1 -1
  67. package/lib/router.spec.js +64 -61
  68. package/lib/router.spec.js.map +1 -1
  69. package/lib/services/asyncevents.d.ts +2 -2
  70. package/lib/services/asyncevents.js +44 -64
  71. package/lib/services/asyncevents.js.map +1 -1
  72. package/lib/services/asyncevents.spec.js +81 -98
  73. package/lib/services/asyncevents.spec.js.map +1 -1
  74. package/lib/services/authentication.d.ts +28 -19
  75. package/lib/services/authentication.js +539 -571
  76. package/lib/services/authentication.js.map +1 -1
  77. package/lib/services/authentication.spec.js +411 -447
  78. package/lib/services/authentication.spec.js.map +1 -1
  79. package/lib/services/binary.d.ts +8 -6
  80. package/lib/services/binary.js +212 -244
  81. package/lib/services/binary.js.map +1 -1
  82. package/lib/services/binary.spec.d.ts +3 -3
  83. package/lib/services/binary.spec.js +390 -443
  84. package/lib/services/binary.spec.js.map +1 -1
  85. package/lib/services/cloudbinary.d.ts +3 -3
  86. package/lib/services/cloudbinary.js +46 -71
  87. package/lib/services/cloudbinary.js.map +1 -1
  88. package/lib/services/cloudbinary.spec.d.ts +3 -3
  89. package/lib/services/cloudbinary.spec.js +133 -162
  90. package/lib/services/cloudbinary.spec.js.map +1 -1
  91. package/lib/services/configuration.d.ts +6 -3
  92. package/lib/services/configuration.js +78 -103
  93. package/lib/services/configuration.js.map +1 -1
  94. package/lib/services/configuration.spec.js +63 -83
  95. package/lib/services/configuration.spec.js.map +1 -1
  96. package/lib/services/cron.d.ts +3 -2
  97. package/lib/services/cron.js +9 -13
  98. package/lib/services/cron.js.map +1 -1
  99. package/lib/services/cron.spec.js +18 -21
  100. package/lib/services/cron.spec.js.map +1 -1
  101. package/lib/services/cryptoservice.d.ts +258 -0
  102. package/lib/services/cryptoservice.js +312 -0
  103. package/lib/services/cryptoservice.js.map +1 -0
  104. package/lib/services/cryptoservice.spec.d.ts +1 -0
  105. package/lib/services/cryptoservice.spec.js +137 -0
  106. package/lib/services/cryptoservice.spec.js.map +1 -0
  107. package/lib/services/debugmailer.d.ts +1 -1
  108. package/lib/services/debugmailer.js +13 -34
  109. package/lib/services/debugmailer.js.map +1 -1
  110. package/lib/services/debugmailer.spec.js +16 -29
  111. package/lib/services/debugmailer.spec.js.map +1 -1
  112. package/lib/services/echo.d.ts +2 -2
  113. package/lib/services/echo.js +15 -31
  114. package/lib/services/echo.js.map +1 -1
  115. package/lib/services/echo.spec.js +27 -40
  116. package/lib/services/echo.spec.js.map +1 -1
  117. package/lib/services/filebinary.d.ts +15 -5
  118. package/lib/services/filebinary.js +171 -200
  119. package/lib/services/filebinary.js.map +1 -1
  120. package/lib/services/filebinary.spec.d.ts +2 -1
  121. package/lib/services/filebinary.spec.js +106 -117
  122. package/lib/services/filebinary.spec.js.map +1 -1
  123. package/lib/services/fileconfiguration.d.ts +2 -2
  124. package/lib/services/fileconfiguration.js +25 -43
  125. package/lib/services/fileconfiguration.js.map +1 -1
  126. package/lib/services/fileconfiguration.spec.js +79 -109
  127. package/lib/services/fileconfiguration.spec.js.map +1 -1
  128. package/lib/services/invitationservice.d.ts +9 -9
  129. package/lib/services/invitationservice.js +275 -313
  130. package/lib/services/invitationservice.js.map +1 -1
  131. package/lib/services/invitationservice.spec.js +442 -448
  132. package/lib/services/invitationservice.spec.js.map +1 -1
  133. package/lib/services/kubernetesconfiguration.d.ts +2 -2
  134. package/lib/services/kubernetesconfiguration.js +41 -59
  135. package/lib/services/kubernetesconfiguration.js.map +1 -1
  136. package/lib/services/kubernetesconfiguration.spec.js +80 -98
  137. package/lib/services/kubernetesconfiguration.spec.js.map +1 -1
  138. package/lib/services/mailer.d.ts +4 -4
  139. package/lib/services/mailer.js +62 -86
  140. package/lib/services/mailer.js.map +1 -1
  141. package/lib/services/mailer.spec.js +86 -127
  142. package/lib/services/mailer.spec.js.map +1 -1
  143. package/lib/services/notificationservice.d.ts +4 -4
  144. package/lib/services/notificationservice.js +23 -42
  145. package/lib/services/notificationservice.js.map +1 -1
  146. package/lib/services/notificationservice.spec.js +47 -73
  147. package/lib/services/notificationservice.spec.js.map +1 -1
  148. package/lib/services/oauth.d.ts +32 -6
  149. package/lib/services/oauth.js +73 -78
  150. package/lib/services/oauth.js.map +1 -1
  151. package/lib/services/oauth.spec.js +128 -147
  152. package/lib/services/oauth.spec.js.map +1 -1
  153. package/lib/services/proxy.d.ts +74 -0
  154. package/lib/services/proxy.js +126 -0
  155. package/lib/services/proxy.js.map +1 -0
  156. package/lib/services/proxy.spec.d.ts +1 -0
  157. package/lib/services/proxy.spec.js +59 -0
  158. package/lib/services/proxy.spec.js.map +1 -0
  159. package/lib/services/resource.d.ts +2 -2
  160. package/lib/services/resource.js +12 -18
  161. package/lib/services/resource.js.map +1 -1
  162. package/lib/services/resource.spec.js +67 -99
  163. package/lib/services/resource.spec.js.map +1 -1
  164. package/lib/services/service.d.ts +33 -7
  165. package/lib/services/service.js +74 -42
  166. package/lib/services/service.js.map +1 -1
  167. package/lib/services/service.spec.js +62 -67
  168. package/lib/services/service.spec.js.map +1 -1
  169. package/lib/services/version.d.ts +1 -1
  170. package/lib/services/version.js +3 -8
  171. package/lib/services/version.js.map +1 -1
  172. package/lib/services/version.spec.js +11 -24
  173. package/lib/services/version.spec.js.map +1 -1
  174. package/lib/stores/aggregator.d.ts +3 -3
  175. package/lib/stores/aggregator.js +37 -57
  176. package/lib/stores/aggregator.js.map +1 -1
  177. package/lib/stores/file.d.ts +3 -3
  178. package/lib/stores/file.js +93 -131
  179. package/lib/stores/file.js.map +1 -1
  180. package/lib/stores/file.spec.d.ts +2 -2
  181. package/lib/stores/file.spec.js +261 -289
  182. package/lib/stores/file.spec.js.map +1 -1
  183. package/lib/stores/mapper.d.ts +4 -4
  184. package/lib/stores/mapper.js +112 -137
  185. package/lib/stores/mapper.js.map +1 -1
  186. package/lib/stores/mapper.spec.js +131 -150
  187. package/lib/stores/mapper.spec.js.map +1 -1
  188. package/lib/stores/memory.d.ts +67 -6
  189. package/lib/stores/memory.js +155 -117
  190. package/lib/stores/memory.js.map +1 -1
  191. package/lib/stores/memory.spec.d.ts +3 -2
  192. package/lib/stores/memory.spec.js +127 -105
  193. package/lib/stores/memory.spec.js.map +1 -1
  194. package/lib/stores/store.d.ts +35 -15
  195. package/lib/stores/store.js +839 -821
  196. package/lib/stores/store.js.map +1 -1
  197. package/lib/stores/store.spec.d.ts +6 -4
  198. package/lib/stores/store.spec.js +627 -647
  199. package/lib/stores/store.spec.js.map +1 -1
  200. package/lib/stores/webdaql/WebdaQLLexer.d.ts +4 -4
  201. package/lib/stores/webdaql/WebdaQLLexer.js +9 -13
  202. package/lib/stores/webdaql/WebdaQLLexer.js.map +1 -1
  203. package/lib/stores/webdaql/WebdaQLParserLexer.d.ts +4 -4
  204. package/lib/stores/webdaql/WebdaQLParserLexer.js +9 -13
  205. package/lib/stores/webdaql/WebdaQLParserLexer.js.map +1 -1
  206. package/lib/stores/webdaql/WebdaQLParserListener.d.ts +2 -2
  207. package/lib/stores/webdaql/WebdaQLParserListener.js +1 -2
  208. package/lib/stores/webdaql/WebdaQLParserListener.js.map +1 -1
  209. package/lib/stores/webdaql/WebdaQLParserParser.d.ts +10 -10
  210. package/lib/stores/webdaql/WebdaQLParserParser.js +62 -91
  211. package/lib/stores/webdaql/WebdaQLParserParser.js.map +1 -1
  212. package/lib/stores/webdaql/WebdaQLParserVisitor.d.ts +2 -2
  213. package/lib/stores/webdaql/WebdaQLParserVisitor.js +1 -2
  214. package/lib/stores/webdaql/WebdaQLParserVisitor.js.map +1 -1
  215. package/lib/stores/webdaql/query.d.ts +4 -5
  216. package/lib/stores/webdaql/query.js +16 -19
  217. package/lib/stores/webdaql/query.js.map +1 -1
  218. package/lib/stores/webdaql/query.spec.js +30 -32
  219. package/lib/stores/webdaql/query.spec.js.map +1 -1
  220. package/lib/test.d.ts +3 -3
  221. package/lib/test.js +74 -94
  222. package/lib/test.js.map +1 -1
  223. package/lib/unpackedapplication.d.ts +1 -1
  224. package/lib/unpackedapplication.js +25 -31
  225. package/lib/unpackedapplication.js.map +1 -1
  226. package/lib/utils/abstractdeployer.js +1 -5
  227. package/lib/utils/abstractdeployer.js.map +1 -1
  228. package/lib/utils/abstractdeployer.spec.js +6 -8
  229. package/lib/utils/abstractdeployer.spec.js.map +1 -1
  230. package/lib/utils/context.d.ts +61 -29
  231. package/lib/utils/context.js +133 -127
  232. package/lib/utils/context.js.map +1 -1
  233. package/lib/utils/context.spec.js +147 -153
  234. package/lib/utils/context.spec.js.map +1 -1
  235. package/lib/utils/cookie.d.ts +66 -45
  236. package/lib/utils/cookie.js +69 -158
  237. package/lib/utils/cookie.js.map +1 -1
  238. package/lib/utils/cookie.spec.js +220 -238
  239. package/lib/utils/cookie.spec.js.map +1 -1
  240. package/lib/utils/esm.d.ts +4 -0
  241. package/lib/utils/esm.js +10 -0
  242. package/lib/utils/esm.js.map +1 -0
  243. package/lib/utils/httpcontext.d.ts +37 -9
  244. package/lib/utils/httpcontext.js +86 -57
  245. package/lib/utils/httpcontext.js.map +1 -1
  246. package/lib/utils/httpcontext.spec.js +37 -48
  247. package/lib/utils/httpcontext.spec.js.map +1 -1
  248. package/lib/utils/logger.d.ts +2 -2
  249. package/lib/utils/logger.js +15 -28
  250. package/lib/utils/logger.js.map +1 -1
  251. package/lib/utils/logger.spec.js +9 -11
  252. package/lib/utils/logger.spec.js.map +1 -1
  253. package/lib/utils/serializers.js +17 -20
  254. package/lib/utils/serializers.js.map +1 -1
  255. package/lib/utils/serializers.spec.js +43 -44
  256. package/lib/utils/serializers.spec.js.map +1 -1
  257. package/lib/utils/session.d.ts +120 -0
  258. package/lib/utils/session.js +155 -0
  259. package/lib/utils/session.js.map +1 -0
  260. package/lib/utils/session.spec.d.ts +1 -0
  261. package/lib/utils/session.spec.js +66 -0
  262. package/lib/utils/session.spec.js.map +1 -0
  263. package/lib/utils/waiter.d.ts +1 -1
  264. package/lib/utils/waiter.js +32 -52
  265. package/lib/utils/waiter.js.map +1 -1
  266. package/lib/utils/waiter.spec.js +75 -92
  267. package/lib/utils/waiter.spec.js.map +1 -1
  268. package/package.json +22 -14
  269. package/test/config-invitation.json +1 -3
  270. package/test/config.json +3 -3
  271. package/test/config.old.json +1 -2
  272. package/test/moddas/annotatedservice.js +5 -5
  273. package/test/moddas/debugmailer.js +2 -3
  274. package/test/moddas/fakeservice.js +2 -3
  275. package/test/moddas/voidstore.js +6 -4
  276. package/test/models/ident.js +2 -6
  277. package/test/models/task.js +3 -7
  278. package/test/package.json +2 -1
  279. package/webda.module.json +956 -188
@@ -0,0 +1,137 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { suite, test } from "@testdeck/mocha";
8
+ import * as assert from "assert";
9
+ import jwt from "jsonwebtoken";
10
+ import * as sinon from "sinon";
11
+ import { WebdaTest } from "../test.js";
12
+ import { JSONUtils } from "../utils/serializers.js";
13
+ /**
14
+ *
15
+ */
16
+ let CryptoServiceTest = class CryptoServiceTest extends WebdaTest {
17
+ async hmac() {
18
+ let hmac = await this.webda.getCrypto().hmac({ test: "plop" });
19
+ let hmacString = await this.webda.getCrypto().hmac(JSONUtils.stringify({ test: "plop" }));
20
+ assert.strictEqual(hmac, hmacString);
21
+ await this.webda.getCrypto().hmacVerify({ test: "plop" }, hmac);
22
+ await this.webda.getCrypto().hmacVerify(JSONUtils.stringify({ test: "plop" }), hmac);
23
+ }
24
+ async encryption() {
25
+ let encrypted = await this.webda.getCrypto().encrypt({ test: "plop" });
26
+ let decrypted = await this.webda.getCrypto().decrypt(encrypted);
27
+ assert.strictEqual(decrypted.test, "plop");
28
+ }
29
+ async rotate() {
30
+ const crypto = this.webda.getCrypto();
31
+ let encrypted = await crypto.encrypt({ test: "plop" });
32
+ let oldKey = crypto.current;
33
+ let hmac = await crypto.hmac({ test: "plop" });
34
+ sinon.stub(crypto, "getNextId").callsFake(this.nextIdStub(crypto));
35
+ await crypto.rotate();
36
+ let decrypted = await crypto.decrypt(encrypted);
37
+ assert.strictEqual(decrypted.test, "plop");
38
+ await crypto.hmacVerify({ test: "plop" }, hmac);
39
+ assert.strictEqual(await crypto.hmac({ test: "plop" }, oldKey), hmac);
40
+ }
41
+ async failedRotation() {
42
+ // Check failed rotate
43
+ await this.webda.getRegistry().patch({ uuid: "keys", current: "123" });
44
+ await this.webda.getCrypto().rotate();
45
+ }
46
+ /**
47
+ * Increment by one every time
48
+ */
49
+ nextIdStub(crypto) {
50
+ return () => {
51
+ let age = parseInt(crypto.current, 36) + 10;
52
+ return {
53
+ id: age.toString(36),
54
+ age
55
+ };
56
+ };
57
+ }
58
+ async jwks() {
59
+ const crypto = this.webda.getCrypto();
60
+ crypto.getParameters().url = "/jwk";
61
+ await crypto.resolve().init();
62
+ let ctx = await this.newContext();
63
+ await this.execute(ctx, "test.webda.io", "GET", "/jwk");
64
+ let body = JSON.parse(ctx.getResponseBody());
65
+ sinon.stub(crypto, "getNextId").callsFake(this.nextIdStub(crypto));
66
+ assert.strictEqual(body.keys.length, 1);
67
+ await crypto.rotate();
68
+ await this.execute(ctx, "test.webda.io", "GET", "/jwk");
69
+ body = JSON.parse(ctx.getResponseBody());
70
+ assert.strictEqual(body.keys.length, 2);
71
+ }
72
+ async unknownKeys() {
73
+ const crypto = this.webda.getCrypto();
74
+ // Custom made JWT
75
+ let jwtToken = jwt.sign("TEST", "test");
76
+ await assert.rejects(() => crypto.jwtVerify(jwtToken), /Unknown key/);
77
+ jwtToken = jwt.sign("TEST", "test", { keyid: "B" + crypto.current });
78
+ await assert.rejects(() => crypto.jwtVerify(jwtToken), /Unknown key/);
79
+ assert.ok(!(await crypto.hmacVerify("mydata", "md.ss")));
80
+ let oldKey = crypto.current;
81
+ sinon.stub(crypto, "getNextId").callsFake(this.nextIdStub(crypto));
82
+ await crypto.rotate();
83
+ let encrypted = await this.webda.getCrypto().encrypt({ test: "plop" });
84
+ delete crypto.keys[crypto.current];
85
+ crypto.current = oldKey;
86
+ crypto.age = parseInt(oldKey, 36); // It should be reloaded
87
+ assert.strictEqual((await this.webda.getCrypto().decrypt(encrypted)).test, "plop");
88
+ // Remove again but remove it from the registry now
89
+ await this.webda.getRegistry().removeAttribute("keys", `key_${crypto.current}`);
90
+ delete crypto.keys[crypto.current];
91
+ crypto.current = oldKey;
92
+ crypto.age = parseInt(oldKey, 36);
93
+ await assert.rejects(() => this.webda.getCrypto().decrypt(encrypted), /err/);
94
+ }
95
+ async jwt() {
96
+ // Test asymetric JWT
97
+ const crypto = this.webda.getCrypto();
98
+ let token = await crypto.jwtSign("plop", { algorithm: "PS256" });
99
+ assert.strictEqual(await crypto.jwtVerify(token), "plop");
100
+ token = await crypto.jwtSign("plop");
101
+ assert.strictEqual(await crypto.jwtVerify(token), "plop");
102
+ token = await crypto.jwtSign("plop", { algorithm: "HS256" });
103
+ assert.strictEqual(await crypto.jwtVerify(token), "plop");
104
+ }
105
+ async cov() {
106
+ this.webda.getCrypto().keys = undefined;
107
+ await assert.rejects(() => this.webda.getCrypto().getCurrentKeys(), /not initialized/);
108
+ }
109
+ };
110
+ __decorate([
111
+ test
112
+ ], CryptoServiceTest.prototype, "hmac", null);
113
+ __decorate([
114
+ test
115
+ ], CryptoServiceTest.prototype, "encryption", null);
116
+ __decorate([
117
+ test
118
+ ], CryptoServiceTest.prototype, "rotate", null);
119
+ __decorate([
120
+ test
121
+ ], CryptoServiceTest.prototype, "failedRotation", null);
122
+ __decorate([
123
+ test
124
+ ], CryptoServiceTest.prototype, "jwks", null);
125
+ __decorate([
126
+ test
127
+ ], CryptoServiceTest.prototype, "unknownKeys", null);
128
+ __decorate([
129
+ test
130
+ ], CryptoServiceTest.prototype, "jwt", null);
131
+ __decorate([
132
+ test
133
+ ], CryptoServiceTest.prototype, "cov", null);
134
+ CryptoServiceTest = __decorate([
135
+ suite
136
+ ], CryptoServiceTest);
137
+ //# sourceMappingURL=cryptoservice.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cryptoservice.spec.js","sourceRoot":"","sources":["../../src/services/cryptoservice.spec.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { AbstractMailer } from "./mailer";
1
+ import { AbstractMailer } from "./mailer.js";
2
2
  /**
3
3
  * Fake Service to help debug mail expedition
4
4
  * @WebdaModda
@@ -1,21 +1,9 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.DebugMailer = void 0;
13
- const mailer_1 = require("./mailer");
1
+ import { AbstractMailer } from "./mailer.js";
14
2
  /**
15
3
  * Fake Service to help debug mail expedition
16
4
  * @WebdaModda
17
5
  */
18
- class DebugMailer extends mailer_1.AbstractMailer {
6
+ export default class DebugMailer extends AbstractMailer {
19
7
  constructor(webda, name, params) {
20
8
  super(webda, name, params);
21
9
  this.sent = [];
@@ -27,11 +15,9 @@ class DebugMailer extends mailer_1.AbstractMailer {
27
15
  * @param options
28
16
  * @param callback
29
17
  */
30
- send(options, _callback = undefined) {
31
- return __awaiter(this, void 0, void 0, function* () {
32
- this.log("DEBUG", "Send a fake email", options);
33
- this.sent.push(options);
34
- });
18
+ async send(options, _callback = undefined) {
19
+ this.log("DEBUG", "Send a fake email", options);
20
+ this.sent.push(options);
35
21
  }
36
22
  /**
37
23
  * Just send a new Error exception
@@ -45,29 +31,22 @@ class DebugMailer extends mailer_1.AbstractMailer {
45
31
  * @param name
46
32
  * @returns
47
33
  */
48
- hasNotification(_name) {
49
- return __awaiter(this, void 0, void 0, function* () {
50
- // Load template
51
- return true;
52
- });
34
+ async hasNotification(_name) {
35
+ // Load template
36
+ return true;
53
37
  }
54
38
  /**
55
39
  * Just send a new Error exception as async
56
40
  */
57
- errorAsync() {
58
- return __awaiter(this, void 0, void 0, function* () {
59
- throw new Error("FakeError");
60
- });
41
+ async errorAsync() {
42
+ throw new Error("FakeError");
61
43
  }
62
44
  /**
63
45
  * Empty async method
64
46
  */
65
- async() {
66
- return __awaiter(this, void 0, void 0, function* () {
67
- // Empty on purpose
68
- });
47
+ async async() {
48
+ // Empty on purpose
69
49
  }
70
50
  }
71
- exports.default = DebugMailer;
72
- exports.DebugMailer = DebugMailer;
51
+ export { DebugMailer };
73
52
  //# sourceMappingURL=debugmailer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"debugmailer.js","sourceRoot":"","sources":["../../src/services/debugmailer.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAA0C;AAE1C;;;GAGG;AACH,MAAqB,WAAY,SAAQ,uBAAc;IAGrD,YAAY,KAAK,EAAE,IAAI,EAAE,MAAM;QAC7B,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAH7B,SAAI,GAAU,EAAE,CAAC;QAIf,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACG,IAAI,CAAC,OAAO,EAAE,SAAS,GAAG,SAAS;;YACvC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC;YAChD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;KAAA;IAED;;OAEG;IACH,KAAK;QACH,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IAED;;;;;OAKG;IACG,eAAe,CAAC,KAAa;;YACjC,gBAAgB;YAChB,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAED;;OAEG;IACG,UAAU;;YACd,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;QAC/B,CAAC;KAAA;IAED;;OAEG;IACG,KAAK;;YACT,mBAAmB;QACrB,CAAC;KAAA;CACF;AAlDD,8BAkDC;AAEQ,kCAAW"}
1
+ {"version":3,"file":"debugmailer.js","sourceRoot":"","sources":["../../src/services/debugmailer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,cAAc;IAGrD,YAAY,KAAK,EAAE,IAAI,EAAE,MAAM;QAC7B,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAH7B,SAAI,GAAU,EAAE,CAAC;QAIf,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,GAAG,SAAS;QACvC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,KAAK;QACH,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,eAAe,CAAC,KAAa;QACjC,gBAAgB;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,mBAAmB;IACrB,CAAC;CACF;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -1,42 +1,29 @@
1
- "use strict";
2
1
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
2
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
3
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
6
  };
8
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
9
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
10
- return new (P || (P = Promise))(function (resolve, reject) {
11
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
12
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
13
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
14
- step((generator = generator.apply(thisArg, _arguments || [])).next());
15
- });
16
- };
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- const mocha_1 = require("@testdeck/mocha");
19
- const assert = require("assert");
20
- const test_1 = require("../test");
21
- const debugmailer_1 = require("./debugmailer");
22
- let DebugMailerTest = class DebugMailerTest extends test_1.WebdaTest {
23
- testSend() {
24
- return __awaiter(this, void 0, void 0, function* () {
25
- let mailer = new debugmailer_1.DebugMailer(this.webda, "test", {});
26
- mailer.send({ option1: "test" });
27
- assert.strictEqual(mailer.sent.length, 1);
28
- assert.strictEqual(mailer.sent[0].option1, "test");
29
- yield mailer.async();
30
- assert.throws(() => mailer.error(), /FakeError/);
31
- yield assert.rejects(() => mailer.errorAsync(), /FakeError/);
32
- assert.strictEqual(yield mailer.hasNotification(""), true);
33
- });
7
+ import { suite, test } from "@testdeck/mocha";
8
+ import * as assert from "assert";
9
+ import { WebdaTest } from "../test.js";
10
+ import { DebugMailer } from "./debugmailer.js";
11
+ let DebugMailerTest = class DebugMailerTest extends WebdaTest {
12
+ async testSend() {
13
+ let mailer = new DebugMailer(this.webda, "test", {});
14
+ mailer.send({ option1: "test" });
15
+ assert.strictEqual(mailer.sent.length, 1);
16
+ assert.strictEqual(mailer.sent[0].option1, "test");
17
+ await mailer.async();
18
+ assert.throws(() => mailer.error(), /FakeError/);
19
+ await assert.rejects(() => mailer.errorAsync(), /FakeError/);
20
+ assert.strictEqual(await mailer.hasNotification(""), true);
34
21
  }
35
22
  };
36
23
  __decorate([
37
- mocha_1.test
24
+ test
38
25
  ], DebugMailerTest.prototype, "testSend", null);
39
26
  DebugMailerTest = __decorate([
40
- mocha_1.suite
27
+ suite
41
28
  ], DebugMailerTest);
42
29
  //# sourceMappingURL=debugmailer.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"debugmailer.spec.js","sourceRoot":"","sources":["../../src/services/debugmailer.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAA8C;AAC9C,iCAAiC;AACjC,kCAAoC;AACpC,+CAA4C;AAG5C,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,gBAAS;IAE/B,QAAQ;;YACZ,IAAI,MAAM,GAAG,IAAI,yBAAW,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;YACrD,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YACjC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACnD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YACrB,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,WAAW,CAAC,CAAC;YACjD,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,WAAW,CAAC,CAAC;YAC7D,MAAM,CAAC,WAAW,CAAC,MAAM,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QAC7D,CAAC;KAAA;CACF,CAAA;AAVC;IADC,YAAI;+CAUJ;AAXG,eAAe;IADpB,aAAK;GACA,eAAe,CAYpB"}
1
+ {"version":3,"file":"debugmailer.spec.js","sourceRoot":"","sources":["../../src/services/debugmailer.spec.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,SAAS;IAErC,KAAK,CAAC,QAAQ;QACZ,IAAI,MAAM,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACjC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC1C,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACnD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,WAAW,CAAC,CAAC;QACjD,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,WAAW,CAAC,CAAC;QAC7D,MAAM,CAAC,WAAW,CAAC,MAAM,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IAC7D,CAAC;CACF,CAAA;AAVC;IADC,IAAI;+CAUJ;AAXG,eAAe;IADpB,KAAK;GACA,eAAe,CAYpB"}
@@ -1,5 +1,5 @@
1
- import { Context } from "../index";
2
- import { Service, ServiceParameters } from "./service";
1
+ import { Context } from "../index.js";
2
+ import { Service, ServiceParameters } from "./service.js";
3
3
  export declare class EchoServiceParameters extends ServiceParameters {
4
4
  /**
5
5
  * Mime of the result
@@ -1,19 +1,6 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.EchoService = exports.EchoServiceParameters = void 0;
13
- const service_1 = require("./service");
14
- class EchoServiceParameters extends service_1.ServiceParameters {
1
+ import { Service, ServiceParameters } from "./service.js";
2
+ export class EchoServiceParameters extends ServiceParameters {
15
3
  }
16
- exports.EchoServiceParameters = EchoServiceParameters;
17
4
  /**
18
5
  * Return a static string with a static route
19
6
  *
@@ -30,7 +17,7 @@ exports.EchoServiceParameters = EchoServiceParameters;
30
17
  * ```
31
18
  * @WebdaModda
32
19
  */
33
- class EchoService extends service_1.Service {
20
+ export class EchoService extends Service {
34
21
  /**
35
22
  * Load parameters
36
23
  *
@@ -45,21 +32,18 @@ class EchoService extends service_1.Service {
45
32
  this.addRoute(this.parameters.url, ["GET"], this.execute);
46
33
  }
47
34
  /** @ignore */
48
- execute(ctx) {
49
- return __awaiter(this, void 0, void 0, function* () {
50
- if (this.parameters.mime) {
51
- ctx.writeHead(200, {
52
- "Content-Type": this.parameters.mime
53
- });
54
- }
55
- if (typeof this.parameters.result != "string") {
56
- ctx.write(JSON.stringify(this.parameters.result));
57
- }
58
- else {
59
- ctx.write(this.parameters.result);
60
- }
61
- });
35
+ async execute(ctx) {
36
+ if (this.parameters.mime) {
37
+ ctx.writeHead(200, {
38
+ "Content-Type": this.parameters.mime
39
+ });
40
+ }
41
+ if (typeof this.parameters.result != "string") {
42
+ ctx.write(JSON.stringify(this.parameters.result));
43
+ }
44
+ else {
45
+ ctx.write(this.parameters.result);
46
+ }
62
47
  }
63
48
  }
64
- exports.EchoService = EchoService;
65
49
  //# sourceMappingURL=echo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"echo.js","sourceRoot":"","sources":["../../src/services/echo.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,uCAAuD;AAEvD,MAAa,qBAAsB,SAAQ,2BAAiB;CAa3D;AAbD,sDAaC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAa,WAAY,SAAQ,iBAA8B;IAC7D;;;;;OAKG;IACH,cAAc,CAAC,MAAW;QACxB,OAAO,IAAI,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,cAAc;IACd,UAAU;QACR,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED,cAAc;IACR,OAAO,CAAC,GAAY;;YACxB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;gBACxB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;oBACjB,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI;iBACrC,CAAC,CAAC;aACJ;YACD,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,QAAQ,EAAE;gBAC7C,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;aACnD;iBAAM;gBACL,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;aACnC;QACH,CAAC;KAAA;CACF;AA7BD,kCA6BC"}
1
+ {"version":3,"file":"echo.js","sourceRoot":"","sources":["../../src/services/echo.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAEvD,MAAM,OAAO,qBAAsB,SAAQ,iBAAiB;CAa3D;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,WAAY,SAAQ,OAA8B;IAC7D;;;;;OAKG;IACH,cAAc,CAAC,MAAW;QACxB,OAAO,IAAI,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,cAAc;IACd,UAAU;QACR,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED,cAAc;IACd,KAAK,CAAC,OAAO,CAAC,GAAY;QACxB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;YACxB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;gBACjB,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI;aACrC,CAAC,CAAC;SACJ;QACD,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,QAAQ,EAAE;YAC7C,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;SACnD;aAAM;YACL,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;SACnC;IACH,CAAC;CACF"}
@@ -1,53 +1,40 @@
1
- "use strict";
2
1
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
2
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
3
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
6
  };
8
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
9
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
10
- return new (P || (P = Promise))(function (resolve, reject) {
11
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
12
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
13
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
14
- step((generator = generator.apply(thisArg, _arguments || [])).next());
15
- });
16
- };
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- const mocha_1 = require("@testdeck/mocha");
19
- const assert = require("assert");
20
- const sinon = require("sinon");
21
- const test_1 = require("../test");
22
- const echo_1 = require("./echo");
23
- let EchoTest = class EchoTest extends test_1.WebdaTest {
24
- cov() {
25
- return __awaiter(this, void 0, void 0, function* () {
26
- let service = new echo_1.EchoService(this.webda, "test", { url: "/bouzouf", result: "plop" });
27
- // @ts-ignore
28
- let stub = sinon.spy(service, "addRoute");
29
- try {
30
- service.initRoutes();
31
- assert.strictEqual(stub.callCount, 1);
32
- }
33
- finally {
34
- stub.restore();
35
- }
36
- let ctx = yield this.newContext();
37
- yield service.execute(ctx);
38
- assert.strictEqual(ctx.getResponseBody(), "plop");
39
- service = new echo_1.EchoService(this.webda, "test", { url: "/bouzouf", mime: "mine/json", result: { obj: "plop" } });
40
- ctx = yield this.newContext();
41
- yield service.execute(ctx);
42
- assert.strictEqual(ctx.getResponseHeaders()["Content-Type"], "mine/json");
43
- assert.strictEqual(ctx.getResponseBody(), '{"obj":"plop"}');
44
- });
7
+ import { suite, test } from "@testdeck/mocha";
8
+ import * as assert from "assert";
9
+ import * as sinon from "sinon";
10
+ import { WebdaTest } from "../test.js";
11
+ import { EchoService } from "./echo.js";
12
+ let EchoTest = class EchoTest extends WebdaTest {
13
+ async cov() {
14
+ let service = new EchoService(this.webda, "test", { url: "/bouzouf", result: "plop" });
15
+ // @ts-ignore
16
+ let stub = sinon.spy(service, "addRoute");
17
+ try {
18
+ service.initRoutes();
19
+ assert.strictEqual(stub.callCount, 1);
20
+ }
21
+ finally {
22
+ stub.restore();
23
+ }
24
+ let ctx = await this.newContext();
25
+ await service.execute(ctx);
26
+ assert.strictEqual(ctx.getResponseBody(), "plop");
27
+ service = new EchoService(this.webda, "test", { url: "/bouzouf", mime: "mine/json", result: { obj: "plop" } });
28
+ ctx = await this.newContext();
29
+ await service.execute(ctx);
30
+ assert.strictEqual(ctx.getResponseHeaders()["Content-Type"], "mine/json");
31
+ assert.strictEqual(ctx.getResponseBody(), '{"obj":"plop"}');
45
32
  }
46
33
  };
47
34
  __decorate([
48
- mocha_1.test
35
+ test
49
36
  ], EchoTest.prototype, "cov", null);
50
37
  EchoTest = __decorate([
51
- mocha_1.suite
38
+ suite
52
39
  ], EchoTest);
53
40
  //# sourceMappingURL=echo.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"echo.spec.js","sourceRoot":"","sources":["../../src/services/echo.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAA8C;AAC9C,iCAAiC;AACjC,+BAA+B;AAC/B,kCAAoC;AACpC,iCAAqC;AAGrC,IAAM,QAAQ,GAAd,MAAM,QAAS,SAAQ,gBAAS;IAExB,GAAG;;YACP,IAAI,OAAO,GAAG,IAAI,kBAAW,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YACvF,aAAa;YACb,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAC1C,IAAI;gBACF,OAAO,CAAC,UAAU,EAAE,CAAC;gBACrB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;aACvC;oBAAS;gBACR,IAAI,CAAC,OAAO,EAAE,CAAC;aAChB;YACD,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC3B,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,MAAM,CAAC,CAAC;YAClD,OAAO,GAAG,IAAI,kBAAW,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;YAC/G,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YAC9B,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC3B,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,cAAc,CAAC,EAAE,WAAW,CAAC,CAAC;YAC1E,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,gBAAgB,CAAC,CAAC;QAC9D,CAAC;KAAA;CACF,CAAA;AAnBC;IADC,YAAI;mCAmBJ;AApBG,QAAQ;IADb,aAAK;GACA,QAAQ,CAqBb"}
1
+ {"version":3,"file":"echo.spec.js","sourceRoot":"","sources":["../../src/services/echo.spec.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAGrC,IAAM,QAAQ,GAAd,MAAM,QAAS,SAAQ,SAAS;IAE9B,KAAK,CAAC,GAAG;QACP,IAAI,OAAO,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACvF,aAAa;QACb,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC1C,IAAI;YACF,OAAO,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;SACvC;gBAAS;YACR,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;QACD,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,MAAM,CAAC,CAAC;QAClD,OAAO,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAC/G,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC9B,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,cAAc,CAAC,EAAE,WAAW,CAAC,CAAC;QAC1E,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,gBAAgB,CAAC,CAAC;IAC9D,CAAC;CACF,CAAA;AAnBC;IADC,IAAI;mCAmBJ;AApBG,QAAQ;IADb,KAAK;GACA,QAAQ,CAqBb"}
@@ -1,14 +1,20 @@
1
1
  /// <reference types="node" />
2
2
  import { Readable } from "stream";
3
- import { CloudBinary, CloudBinaryParameters, CoreModel } from "..";
4
- import { Context } from "../utils/context";
5
- import { Binary, BinaryFile, BinaryMap } from "./binary";
6
- import { ServiceParameters } from "./service";
3
+ import { CloudBinary, CloudBinaryParameters, CoreModel } from "../index.js";
4
+ import { Context } from "../utils/context.js";
5
+ import { Binary, BinaryFile, BinaryMap } from "./binary.js";
6
+ import CryptoService from "./cryptoservice.js";
7
+ import { ServiceParameters } from "./service.js";
7
8
  export declare class FileBinaryParameters extends CloudBinaryParameters {
8
9
  /**
9
10
  * Define the folder to store objects in
10
11
  */
11
12
  folder: string;
13
+ /**
14
+ * Maximum size to handle
15
+ * @default 10Mb
16
+ */
17
+ maxSize?: number;
12
18
  constructor(params: any, service: Binary);
13
19
  }
14
20
  /**
@@ -27,6 +33,10 @@ export declare class FileBinaryParameters extends CloudBinaryParameters {
27
33
  * @WebdaModda
28
34
  */
29
35
  export declare class FileBinary<T extends FileBinaryParameters = FileBinaryParameters> extends CloudBinary<T> {
36
+ /**
37
+ * Used for hmac
38
+ */
39
+ cryptoService: CryptoService;
30
40
  /**
31
41
  * Load parameters
32
42
  *
@@ -64,7 +74,7 @@ export declare class FileBinary<T extends FileBinaryParameters = FileBinaryParam
64
74
  * @param ctx
65
75
  * @param expiresIn
66
76
  */
67
- getToken(hash: string, method: "PUT" | "GET", expiresIn?: number): any;
77
+ getToken(hash: string, method: "PUT" | "GET", expiresIn?: number): Promise<string>;
68
78
  /**
69
79
  * Get put URL
70
80
  * @param ctx