@webda/core 1.6.0-beta.3 → 2.0.0-beta.2

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 (253) hide show
  1. package/lib/application.d.ts +355 -195
  2. package/lib/application.js +188 -682
  3. package/lib/application.js.map +1 -1
  4. package/lib/application.spec.js +109 -289
  5. package/lib/application.spec.js.map +1 -1
  6. package/lib/core.d.ts +150 -215
  7. package/lib/core.js +188 -71
  8. package/lib/core.js.map +1 -1
  9. package/lib/core.spec.js +103 -42
  10. package/lib/core.spec.js.map +1 -1
  11. package/lib/index.d.ts +4 -0
  12. package/lib/index.js +9 -1
  13. package/lib/index.js.map +1 -1
  14. package/lib/models/aclmodel.d.ts +3 -1
  15. package/lib/models/aclmodel.js +6 -3
  16. package/lib/models/aclmodel.js.map +1 -1
  17. package/lib/models/aclmodel.spec.js +10 -5
  18. package/lib/models/aclmodel.spec.js.map +1 -1
  19. package/lib/models/coremodel.d.ts +86 -24
  20. package/lib/models/coremodel.js +85 -36
  21. package/lib/models/coremodel.js.map +1 -1
  22. package/lib/models/coremodel.spec.js +21 -2
  23. package/lib/models/coremodel.spec.js.map +1 -1
  24. package/lib/models/ident.d.ts +7 -5
  25. package/lib/models/ident.js +2 -1
  26. package/lib/models/ident.js.map +1 -1
  27. package/lib/models/ident.spec.js +1 -1
  28. package/lib/models/ident.spec.js.map +1 -1
  29. package/lib/models/ownermodel.d.ts +18 -4
  30. package/lib/models/ownermodel.js +24 -4
  31. package/lib/models/ownermodel.js.map +1 -1
  32. package/lib/models/ownermodel.spec.js +18 -1
  33. package/lib/models/ownermodel.spec.js.map +1 -1
  34. package/lib/models/rolemodel.js.map +1 -1
  35. package/lib/models/rolemodel.spec.js +5 -2
  36. package/lib/models/rolemodel.spec.js.map +1 -1
  37. package/lib/models/user.d.ts +7 -6
  38. package/lib/models/user.js +2 -1
  39. package/lib/models/user.js.map +1 -1
  40. package/lib/models/user.spec.js +1 -1
  41. package/lib/models/user.spec.js.map +1 -1
  42. package/lib/queues/filequeue.d.ts +2 -7
  43. package/lib/queues/filequeue.js +4 -13
  44. package/lib/queues/filequeue.js.map +1 -1
  45. package/lib/queues/filequeue.spec.js +2 -3
  46. package/lib/queues/filequeue.spec.js.map +1 -1
  47. package/lib/queues/memoryqueue.d.ts +2 -7
  48. package/lib/queues/memoryqueue.js +1 -11
  49. package/lib/queues/memoryqueue.js.map +1 -1
  50. package/lib/queues/memoryqueue.spec.js +1 -1
  51. package/lib/queues/memoryqueue.spec.js.map +1 -1
  52. package/lib/queues/queue.spec.d.ts +1 -1
  53. package/lib/queues/queue.spec.js +12 -10
  54. package/lib/queues/queue.spec.js.map +1 -1
  55. package/lib/queues/queueservice.d.ts +1 -1
  56. package/lib/queues/queueservice.js +1 -1
  57. package/lib/queues/queueservice.js.map +1 -1
  58. package/lib/router.d.ts +52 -2
  59. package/lib/router.js +80 -51
  60. package/lib/router.js.map +1 -1
  61. package/lib/router.spec.js +23 -6
  62. package/lib/router.spec.js.map +1 -1
  63. package/lib/services/asyncevents.d.ts +1 -0
  64. package/lib/services/asyncevents.js +4 -3
  65. package/lib/services/asyncevents.js.map +1 -1
  66. package/lib/services/asyncevents.spec.js +2 -2
  67. package/lib/services/asyncevents.spec.js.map +1 -1
  68. package/lib/services/authentication.d.ts +39 -11
  69. package/lib/services/authentication.js +60 -55
  70. package/lib/services/authentication.js.map +1 -1
  71. package/lib/services/authentication.spec.js +2 -1
  72. package/lib/services/authentication.spec.js.map +1 -1
  73. package/lib/services/binary.d.ts +127 -65
  74. package/lib/services/binary.js +255 -98
  75. package/lib/services/binary.js.map +1 -1
  76. package/lib/services/binary.spec.d.ts +2 -1
  77. package/lib/services/binary.spec.js +101 -30
  78. package/lib/services/binary.spec.js.map +1 -1
  79. package/lib/services/cloudbinary.d.ts +67 -0
  80. package/lib/services/cloudbinary.js +178 -0
  81. package/lib/services/cloudbinary.js.map +1 -0
  82. package/lib/services/cloudbinary.spec.d.ts +13 -0
  83. package/lib/services/cloudbinary.spec.js +212 -0
  84. package/lib/services/cloudbinary.spec.js.map +1 -0
  85. package/lib/services/configuration.d.ts +7 -2
  86. package/lib/services/configuration.js +6 -5
  87. package/lib/services/configuration.js.map +1 -1
  88. package/lib/services/configuration.spec.js +3 -2
  89. package/lib/services/configuration.spec.js.map +1 -1
  90. package/lib/services/cron.d.ts +5 -6
  91. package/lib/services/cron.js +5 -12
  92. package/lib/services/cron.js.map +1 -1
  93. package/lib/services/cron.spec.js +3 -4
  94. package/lib/services/cron.spec.js.map +1 -1
  95. package/lib/services/debugmailer.d.ts +3 -5
  96. package/lib/services/debugmailer.js +3 -11
  97. package/lib/services/debugmailer.js.map +1 -1
  98. package/lib/services/debugmailer.spec.js +1 -1
  99. package/lib/services/debugmailer.spec.js.map +1 -1
  100. package/lib/services/echo.d.ts +3 -7
  101. package/lib/services/echo.js +1 -11
  102. package/lib/services/echo.js.map +1 -1
  103. package/lib/services/echo.spec.js +4 -3
  104. package/lib/services/echo.spec.js.map +1 -1
  105. package/lib/services/filebinary.d.ts +45 -16
  106. package/lib/services/filebinary.js +147 -50
  107. package/lib/services/filebinary.js.map +1 -1
  108. package/lib/services/filebinary.spec.d.ts +4 -2
  109. package/lib/services/filebinary.spec.js +50 -12
  110. package/lib/services/filebinary.spec.js.map +1 -1
  111. package/lib/services/fileconfiguration.d.ts +1 -5
  112. package/lib/services/fileconfiguration.js +3 -12
  113. package/lib/services/fileconfiguration.js.map +1 -1
  114. package/lib/services/fileconfiguration.spec.js +2 -2
  115. package/lib/services/fileconfiguration.spec.js.map +1 -1
  116. package/lib/services/invitationservice.d.ts +28 -4
  117. package/lib/services/invitationservice.js +9 -6
  118. package/lib/services/invitationservice.js.map +1 -1
  119. package/lib/services/invitationservice.spec.js +4 -3
  120. package/lib/services/invitationservice.spec.js.map +1 -1
  121. package/lib/services/kubernetesconfiguration.d.ts +3 -5
  122. package/lib/services/kubernetesconfiguration.js +7 -14
  123. package/lib/services/kubernetesconfiguration.js.map +1 -1
  124. package/lib/services/kubernetesconfiguration.spec.js +5 -5
  125. package/lib/services/kubernetesconfiguration.spec.js.map +1 -1
  126. package/lib/services/mailer.d.ts +1 -5
  127. package/lib/services/mailer.js +1 -10
  128. package/lib/services/mailer.js.map +1 -1
  129. package/lib/services/mailer.spec.js +3 -3
  130. package/lib/services/mailer.spec.js.map +1 -1
  131. package/lib/services/notificationservice.d.ts +2 -0
  132. package/lib/services/notificationservice.js +2 -0
  133. package/lib/services/notificationservice.js.map +1 -1
  134. package/lib/services/notificationservice.spec.js +2 -2
  135. package/lib/services/notificationservice.spec.js.map +1 -1
  136. package/lib/services/oauth.d.ts +8 -6
  137. package/lib/services/oauth.js +30 -14
  138. package/lib/services/oauth.js.map +1 -1
  139. package/lib/services/oauth.spec.js +11 -10
  140. package/lib/services/oauth.spec.js.map +1 -1
  141. package/lib/services/resource.d.ts +18 -5
  142. package/lib/services/resource.js +42 -23
  143. package/lib/services/resource.js.map +1 -1
  144. package/lib/services/resource.spec.js +4 -4
  145. package/lib/services/resource.spec.js.map +1 -1
  146. package/lib/services/service.d.ts +25 -25
  147. package/lib/services/service.js +21 -25
  148. package/lib/services/service.js.map +1 -1
  149. package/lib/services/service.spec.js +2 -2
  150. package/lib/services/service.spec.js.map +1 -1
  151. package/lib/services/version.d.ts +2 -5
  152. package/lib/services/version.js +1 -10
  153. package/lib/services/version.js.map +1 -1
  154. package/lib/services/version.spec.js +1 -1
  155. package/lib/services/version.spec.js.map +1 -1
  156. package/lib/stores/aggregator.d.ts +3 -5
  157. package/lib/stores/aggregator.js +3 -10
  158. package/lib/stores/aggregator.js.map +1 -1
  159. package/lib/stores/file.d.ts +15 -8
  160. package/lib/stores/file.js +21 -18
  161. package/lib/stores/file.js.map +1 -1
  162. package/lib/stores/file.spec.d.ts +3 -1
  163. package/lib/stores/file.spec.js +32 -8
  164. package/lib/stores/file.spec.js.map +1 -1
  165. package/lib/stores/mapper.d.ts +1 -5
  166. package/lib/stores/mapper.js +5 -13
  167. package/lib/stores/mapper.js.map +1 -1
  168. package/lib/stores/mapper.spec.js +2 -2
  169. package/lib/stores/mapper.spec.js.map +1 -1
  170. package/lib/stores/memory.d.ts +5 -9
  171. package/lib/stores/memory.js +5 -17
  172. package/lib/stores/memory.js.map +1 -1
  173. package/lib/stores/memory.spec.d.ts +2 -1
  174. package/lib/stores/memory.spec.js +36 -4
  175. package/lib/stores/memory.spec.js.map +1 -1
  176. package/lib/stores/store.d.ts +142 -29
  177. package/lib/stores/store.js +451 -82
  178. package/lib/stores/store.js.map +1 -1
  179. package/lib/stores/store.spec.d.ts +31 -4
  180. package/lib/stores/store.spec.js +206 -35
  181. package/lib/stores/store.spec.js.map +1 -1
  182. package/lib/stores/webdaql/WebdaQLLexer.d.ts +53 -0
  183. package/lib/stores/webdaql/WebdaQLLexer.js +290 -0
  184. package/lib/stores/webdaql/WebdaQLLexer.js.map +1 -0
  185. package/lib/stores/webdaql/WebdaQLParserLexer.d.ts +53 -0
  186. package/lib/stores/webdaql/WebdaQLParserLexer.js +290 -0
  187. package/lib/stores/webdaql/WebdaQLParserLexer.js.map +1 -0
  188. package/lib/stores/webdaql/WebdaQLParserListener.d.ts +284 -0
  189. package/lib/stores/webdaql/WebdaQLParserListener.js +4 -0
  190. package/lib/stores/webdaql/WebdaQLParserListener.js.map +1 -0
  191. package/lib/stores/webdaql/WebdaQLParserParser.d.ts +301 -0
  192. package/lib/stores/webdaql/WebdaQLParserParser.js +1781 -0
  193. package/lib/stores/webdaql/WebdaQLParserParser.js.map +1 -0
  194. package/lib/stores/webdaql/WebdaQLParserVisitor.d.ts +174 -0
  195. package/lib/stores/webdaql/WebdaQLParserVisitor.js +4 -0
  196. package/lib/stores/webdaql/WebdaQLParserVisitor.js.map +1 -0
  197. package/lib/stores/webdaql/query.d.ts +300 -0
  198. package/lib/stores/webdaql/query.js +471 -0
  199. package/lib/stores/webdaql/query.js.map +1 -0
  200. package/lib/stores/webdaql/query.spec.d.ts +1 -0
  201. package/lib/stores/webdaql/query.spec.js +136 -0
  202. package/lib/stores/webdaql/query.spec.js.map +1 -0
  203. package/lib/test.d.ts +54 -9
  204. package/lib/test.js +139 -25
  205. package/lib/test.js.map +1 -1
  206. package/lib/unpackedapplication.d.ts +66 -0
  207. package/lib/unpackedapplication.js +219 -0
  208. package/lib/unpackedapplication.js.map +1 -0
  209. package/lib/utils/abstractdeployer.spec.js +1 -1
  210. package/lib/utils/abstractdeployer.spec.js.map +1 -1
  211. package/lib/utils/context.d.ts +17 -58
  212. package/lib/utils/context.js +33 -124
  213. package/lib/utils/context.js.map +1 -1
  214. package/lib/utils/context.spec.js +52 -28
  215. package/lib/utils/context.spec.js.map +1 -1
  216. package/lib/utils/cookie.d.ts +6 -3
  217. package/lib/utils/cookie.js +9 -5
  218. package/lib/utils/cookie.js.map +1 -1
  219. package/lib/utils/cookie.spec.js +5 -5
  220. package/lib/utils/cookie.spec.js.map +1 -1
  221. package/lib/utils/httpcontext.d.ts +182 -0
  222. package/lib/utils/httpcontext.js +325 -0
  223. package/lib/utils/httpcontext.js.map +1 -0
  224. package/lib/utils/httpcontext.spec.d.ts +5 -0
  225. package/lib/utils/httpcontext.spec.js +90 -0
  226. package/lib/utils/httpcontext.spec.js.map +1 -0
  227. package/lib/utils/logger.d.ts +18 -5
  228. package/lib/utils/logger.js +17 -4
  229. package/lib/utils/logger.js.map +1 -1
  230. package/lib/utils/logger.spec.js.map +1 -1
  231. package/lib/utils/serializers.js +5 -1
  232. package/lib/utils/serializers.js.map +1 -1
  233. package/lib/utils/serializers.spec.js +3 -3
  234. package/lib/utils/serializers.spec.js.map +1 -1
  235. package/lib/utils/waiter.d.ts +1 -1
  236. package/lib/utils/waiter.js.map +1 -1
  237. package/lib/utils/waiter.spec.js +2 -2
  238. package/lib/utils/waiter.spec.js.map +1 -1
  239. package/package.json +25 -18
  240. package/test/config-file-no-reload.json +2 -1
  241. package/test/config-file-reload.json +2 -1
  242. package/test/config-kube-reload.json +2 -1
  243. package/test/config-reload.json +1 -1
  244. package/test/config.json +8 -11
  245. package/test/config.old.json +1 -1
  246. package/test/moddas/annotatedservice.js +1 -3
  247. package/test/moddas/debugmailer.js +2 -7
  248. package/test/moddas/fakeservice.js +1 -1
  249. package/test/moddas/voidstore.js +2 -4
  250. package/test/models/ident.js +1 -1
  251. package/test/models/task.js +1 -6
  252. package/webda.module.json +1124 -0
  253. package/test/config.old-default.json +0 -151
package/lib/core.spec.js CHANGED
@@ -23,6 +23,7 @@ const index_1 = require("./index");
23
23
  const store_1 = require("./stores/store");
24
24
  const test_1 = require("./test");
25
25
  const context_1 = require("./utils/context");
26
+ const httpcontext_1 = require("./utils/httpcontext");
26
27
  const sinon = require("sinon");
27
28
  class BadService {
28
29
  constructor() {
@@ -75,7 +76,7 @@ let CSRFTest = class CSRFTest extends test_1.WebdaTest {
75
76
  checkRequest(ctx) {
76
77
  return __awaiter(this, void 0, void 0, function* () {
77
78
  // @ts-ignore
78
- return this.webda.checkRequest(ctx);
79
+ return this.webda.checkCORSRequest(ctx);
79
80
  });
80
81
  }
81
82
  before() {
@@ -90,18 +91,35 @@ let CSRFTest = class CSRFTest extends test_1.WebdaTest {
90
91
  csrfRegExp() {
91
92
  return __awaiter(this, void 0, void 0, function* () {
92
93
  this.webda.getConfiguration().parameters.website = "http://localhost:18181";
93
- this.ctx.setHttpContext(new context_1.HttpContext("accounts.google.fr", "GET", "/", "https", 443, {}));
94
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("accounts.google.fr", "GET", "/", "https", 443));
94
95
  assert.strictEqual(yield this.checkRequest(this.ctx), true);
95
- this.ctx.setHttpContext(new context_1.HttpContext("accounts.google.com", "GET", "/", "https", 443, {}));
96
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("accounts.google.com", "GET", "/", "https", 443));
96
97
  assert.strictEqual(yield this.checkRequest(this.ctx), true);
97
- this.ctx.setHttpContext(new context_1.HttpContext("accounts.google.fr.loopingz.com", "GET", "/", "https", 443, {}));
98
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("accounts.google.fr.loopingz.com", "GET", "/", "https", 443));
98
99
  assert.strictEqual(yield this.checkRequest(this.ctx), false);
99
- this.ctx.setHttpContext(new context_1.HttpContext("www.facebook.com", "GET", "/", "https", 443, {}));
100
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("www.facebook.com", "GET", "/", "https", 443));
100
101
  assert.strictEqual(yield this.checkRequest(this.ctx), true);
101
- this.ctx.setHttpContext(new context_1.HttpContext("www.facebook.com.eu", "GET", "/", "https", 443, {}));
102
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("www.facebook.com.eu", "GET", "/", "https", 443));
102
103
  assert.strictEqual(yield this.checkRequest(this.ctx), false);
103
104
  });
104
105
  }
106
+ checkWebdaRequest() {
107
+ return __awaiter(this, void 0, void 0, function* () {
108
+ let calls = 0;
109
+ this.webda.registerRequestFilter({
110
+ checkRequest: () => __awaiter(this, void 0, void 0, function* () {
111
+ calls++;
112
+ return true;
113
+ })
114
+ });
115
+ // @ts-ignore
116
+ yield this.webda.checkRequest(this.ctx);
117
+ this.ctx.getHttpContext().method = "OPTIONS";
118
+ // @ts-ignore
119
+ yield this.webda.checkRequest(this.ctx);
120
+ assert.strictEqual(calls, 1);
121
+ });
122
+ }
105
123
  getApiUrl() {
106
124
  assert.strictEqual(this.webda.getApiUrl("/plop"), "http://localhost:18080/plop");
107
125
  assert.strictEqual(this.webda.getApiUrl("plop"), "http://localhost:18080/plop");
@@ -110,44 +128,44 @@ let CSRFTest = class CSRFTest extends test_1.WebdaTest {
110
128
  return __awaiter(this, void 0, void 0, function* () {
111
129
  this.filter = new core_1.WebsiteOriginFilter("http://localhost:18181");
112
130
  // Exact match
113
- this.ctx.setHttpContext(new context_1.HttpContext("localhost:18181", "GET", "/", "http", 80, {}));
131
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("localhost:18181", "GET", "/", "http", 80));
114
132
  assert.strictEqual(yield this.filter.checkRequest(this.ctx), true);
115
133
  // Bad protocol
116
- this.ctx.setHttpContext(new context_1.HttpContext("localhost:18181", "GET", "/", "https", 443, {}));
134
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("localhost:18181", "GET", "/", "https", 443));
117
135
  assert.strictEqual(yield this.filter.checkRequest(this.ctx), false);
118
136
  // Bad port
119
- this.ctx.setHttpContext(new context_1.HttpContext("localhost:18181", "GET", "/", "http", 18182, {}));
137
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("localhost:18181", "GET", "/", "http", 18182));
120
138
  assert.strictEqual(yield this.filter.checkRequest(this.ctx), false);
121
139
  // Bad host
122
- this.ctx.setHttpContext(new context_1.HttpContext("localhost2:18181", "GET", "/", "http", 18181, {}));
140
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("localhost2:18181", "GET", "/", "http", 18181));
123
141
  assert.strictEqual(yield this.filter.checkRequest(this.ctx), false);
124
142
  });
125
143
  }
126
144
  websiteArray() {
127
145
  return __awaiter(this, void 0, void 0, function* () {
128
146
  this.filter = new core_1.WebsiteOriginFilter(["http://localhost:18181", "http://localhost2:18181"]);
129
- this.ctx.setHttpContext(new context_1.HttpContext("localhost", "GET", "/", "http", 18181, {}));
147
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("localhost", "GET", "/", "http", 18181));
130
148
  assert.strictEqual(yield this.filter.checkRequest(this.ctx), true);
131
149
  // Just host headers
132
150
  this.webda.getConfiguration().parameters.website = ["http://localhost:18181", "http://localhost2:18181"];
133
151
  // First host
134
- this.ctx.setHttpContext(new context_1.HttpContext("localhost", "GET", "/", "http", 18181, {}));
152
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("localhost", "GET", "/", "http", 18181));
135
153
  assert.strictEqual(yield this.filter.checkRequest(this.ctx), true);
136
154
  // Second host
137
- this.ctx.setHttpContext(new context_1.HttpContext("localhost2", "GET", "/", "http", 18181, {}));
155
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("localhost2", "GET", "/", "http", 18181));
138
156
  assert.strictEqual(yield this.filter.checkRequest(this.ctx), true);
139
157
  // Bad port
140
- this.ctx.setHttpContext(new context_1.HttpContext("localhost", "GET", "/", "http", 18182, {}));
158
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("localhost", "GET", "/", "http", 18182));
141
159
  assert.strictEqual(yield this.filter.checkRequest(this.ctx), false);
142
160
  // Bad host
143
- this.ctx.setHttpContext(new context_1.HttpContext("localhost3", "GET", "/", "http", 18181, {}));
161
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("localhost3", "GET", "/", "http", 18181));
144
162
  assert.strictEqual(yield this.filter.checkRequest(this.ctx), false);
145
163
  });
146
164
  }
147
165
  originFilter() {
148
166
  return __awaiter(this, void 0, void 0, function* () {
149
167
  let filter = new core_1.OriginFilter(["https://localhost3"]);
150
- this.ctx.setHttpContext(new context_1.HttpContext("localhost3", "GET", "/", "https", 443, {}));
168
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("localhost3", "GET", "/", "https", 443));
151
169
  assert.strictEqual(yield filter.checkRequest(this.ctx), true);
152
170
  });
153
171
  }
@@ -158,13 +176,13 @@ let CSRFTest = class CSRFTest extends test_1.WebdaTest {
158
176
  url: "localhost:18181"
159
177
  });
160
178
  // Good host
161
- this.ctx.setHttpContext(new context_1.HttpContext("localhost", "GET", "/", "http", 18181, {}));
179
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("localhost", "GET", "/", "http", 18181));
162
180
  assert.strictEqual(yield this.filter.checkRequest(this.ctx), true);
163
181
  // Bad host
164
- this.ctx.setHttpContext(new context_1.HttpContext("localhost2", "GET", "/", "http", 18181, {}));
182
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("localhost2", "GET", "/", "http", 18181));
165
183
  assert.strictEqual(yield this.filter.checkRequest(this.ctx), false);
166
184
  // Bad port
167
- this.ctx.setHttpContext(new context_1.HttpContext("localhost", "GET", "/", "http", 18182, {}));
185
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("localhost", "GET", "/", "http", 18182));
168
186
  assert.strictEqual(yield this.filter.checkRequest(this.ctx), false);
169
187
  });
170
188
  }
@@ -175,11 +193,11 @@ let CSRFTest = class CSRFTest extends test_1.WebdaTest {
175
193
  url: "localhost:18181"
176
194
  }
177
195
  */
178
- this.ctx.setHttpContext(new context_1.HttpContext("csrf.com", "GET", "/bouzouf/route", "https", 443, {}));
196
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("csrf.com", "GET", "/bouzouf/route", "https", 443));
179
197
  assert.strictEqual(yield this.checkRequest(this.ctx), true);
180
- this.ctx.setHttpContext(new context_1.HttpContext("csrf.com", "GET", "/bouzouf2/route", "https", 443, {}));
198
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("csrf.com", "GET", "/bouzouf2/route", "https", 443));
181
199
  assert.strictEqual(yield this.checkRequest(this.ctx), false);
182
- this.ctx.setHttpContext(new context_1.HttpContext("csrfs.com", "GET", "/bouzouf/route", "https", 443, {}));
200
+ this.ctx.setHttpContext(new httpcontext_1.HttpContext("csrfs.com", "GET", "/bouzouf/route", "https", 443));
183
201
  assert.strictEqual(yield this.checkRequest(this.ctx), false);
184
202
  });
185
203
  }
@@ -187,6 +205,9 @@ let CSRFTest = class CSRFTest extends test_1.WebdaTest {
187
205
  __decorate([
188
206
  mocha_1.test
189
207
  ], CSRFTest.prototype, "csrfRegExp", null);
208
+ __decorate([
209
+ mocha_1.test
210
+ ], CSRFTest.prototype, "checkWebdaRequest", null);
190
211
  __decorate([
191
212
  mocha_1.test
192
213
  ], CSRFTest.prototype, "getApiUrl", null);
@@ -220,9 +241,11 @@ let CoreTest = class CoreTest extends test_1.WebdaTest {
220
241
  }
221
242
  exportOpenAPI() {
222
243
  return __awaiter(this, void 0, void 0, function* () {
223
- let app = new index_1.Application(path.join(__dirname, "..", "..", "..", "sample-app"));
224
- app.loadModules();
244
+ let app = new test_1.TestApplication(path.join(__dirname, "..", "..", "..", "sample-app"));
245
+ yield app.load();
225
246
  let webda = new core_1.Core(app);
247
+ // @ts-ignore
248
+ webda.services["ConsoleLogger"] = new index_1.ConsoleLoggerService(webda, "ConsoleLogger", {});
226
249
  yield webda.init();
227
250
  webda.reinitResolvedRoutes();
228
251
  let openapi = webda.exportOpenAPI();
@@ -233,24 +256,36 @@ let CoreTest = class CoreTest extends test_1.WebdaTest {
233
256
  tags: [{ name: "Zzzz" }, { name: "Aaaaa" }]
234
257
  };
235
258
  app.getPackageDescription = () => ({
236
- license: "GPL"
259
+ license: "GPL",
260
+ author: {
261
+ name: "Test"
262
+ }
237
263
  });
238
- app.getSchemaResolver().fromPrototype = type => {
264
+ app.getSchema = type => {
239
265
  let res = {
240
266
  definitions: {},
241
267
  properties: {},
242
- title: type.name
268
+ title: type
243
269
  };
244
- res.definitions[`other$${type.name}`] = {
245
- description: `Fake ${type.name}`
270
+ res.definitions[`other$${type}`] = {
271
+ description: `Fake ${type}`
246
272
  };
247
273
  return res;
248
274
  };
249
275
  openapi = webda.exportOpenAPI();
276
+ assert.strictEqual(openapi.info.contact.name, "Test");
250
277
  assert.strictEqual(openapi.info.license.name, "GPL");
251
278
  assert.deepStrictEqual(openapi.tags, [{ name: "Aaaaa" }, { name: "contacts" }, { name: "Zzzz" }]);
252
279
  // @ts-ignore
253
280
  assert.ok(Object.keys(openapi.definitions).length > 10);
281
+ app.getPackageDescription = () => ({
282
+ license: {
283
+ name: "GPL"
284
+ },
285
+ author: "Test"
286
+ });
287
+ openapi = webda.exportOpenAPI();
288
+ assert.strictEqual(openapi.info.contact.name, "Test");
254
289
  });
255
290
  }
256
291
  getStringRoute() {
@@ -273,19 +308,16 @@ let CoreTest = class CoreTest extends test_1.WebdaTest {
273
308
  assert.notStrictEqual(null, this.webda.getService("Authentication"));
274
309
  }
275
310
  getServicesImplementations() {
276
- let moddas = this.webda.getServicesImplementations();
311
+ let moddas = this.webda.getServicesOfType();
277
312
  assert.strictEqual(Object.keys(moddas).length, 26);
278
313
  }
279
- consumeAllModdas() {
280
- super.consumeAllModdas();
281
- }
282
314
  getStores() {
283
315
  let moddas = this.webda.getStores();
284
- assert.strictEqual(Object.keys(moddas).length, 6);
316
+ assert.strictEqual(Object.keys(moddas).length, 7);
285
317
  }
286
318
  getServicesImplementationsWithType() {
287
- let stores = this.webda.getServicesImplementations(store_1.Store);
288
- assert.strictEqual(Object.keys(stores).length, 6);
319
+ let stores = this.webda.getServicesOfType(store_1.Store);
320
+ assert.strictEqual(Object.keys(stores).length, 7);
289
321
  }
290
322
  getVersion() {
291
323
  assert.strictEqual(this.webda.getVersion(), require("../package.json").version);
@@ -338,6 +370,9 @@ let CoreTest = class CoreTest extends test_1.WebdaTest {
338
370
  assert.notStrictEqual(executor, undefined);
339
371
  assert.strictEqual(this.ctx.getParameters().provider, undefined);
340
372
  }
373
+ covValidateSchema() {
374
+ assert.strictEqual(this.webda.validateSchema("test", {}), null);
375
+ }
341
376
  covGetModules() {
342
377
  this.webda.getModules();
343
378
  }
@@ -405,9 +440,31 @@ let CoreTest = class CoreTest extends test_1.WebdaTest {
405
440
  assert.strictEqual(err.getCode(), "CODE");
406
441
  });
407
442
  }
443
+ autoConnectFailure() {
444
+ return __awaiter(this, void 0, void 0, function* () {
445
+ let app = new test_1.TestApplication(__dirname + "/../test/config.broken.json");
446
+ yield app.load();
447
+ let core = new core_1.Core(app);
448
+ yield core.init();
449
+ core.getServices()["implicitbean"].resolve = () => {
450
+ throw new Error();
451
+ };
452
+ // @ts-ignore
453
+ core.autoConnectServices();
454
+ core.getServices()["implicitbean"].resolve = undefined;
455
+ // @ts-ignore
456
+ core.autoConnectServices();
457
+ });
458
+ }
408
459
  cov() {
409
- assert.deepStrictEqual(this.webda.getDeployers(), {});
410
- this.webda.registerModel("mine", {});
460
+ //assert.deepStrictEqual(this.webda.getDeployers(), {});
461
+ this.webda.getUuid();
462
+ this.webda.getInstanceId();
463
+ this.webda.getHmac(this.webda.getInstanceId());
464
+ // a8b7f4a4-62aa-4b2a-b6a8-0ffdc0d82c96
465
+ assert.ok(/[0-9a-f]{8}(-[0-9a-f]{4}){3}-[0-9a-f]{12}/.exec(this.webda.getUuid()) !== null);
466
+ assert.ok(/[0-9a-f]{32}/.exec(this.webda.getUuid("hex")) !== null);
467
+ assert.ok(/[0-9a-zA-Z\-_]{22}/.exec(this.webda.getUuid("base64")) !== null);
411
468
  assert.strictEqual(this.webda.getSalt(), this.webda.getConfiguration().parameters.salt);
412
469
  }
413
470
  listenersTest() {
@@ -416,6 +473,7 @@ let CoreTest = class CoreTest extends test_1.WebdaTest {
416
473
  let stub2 = sinon.stub().callsFake(() => __awaiter(this, void 0, void 0, function* () { }));
417
474
  this.webda.on("Test", stub);
418
475
  this.webda.on("Test", stub2);
476
+ // @ts-ignore
419
477
  yield this.webda.emitSync("Test");
420
478
  assert.strictEqual(stub.callCount, 1);
421
479
  assert.strictEqual(stub2.callCount, 1);
@@ -427,7 +485,7 @@ let CoreTest = class CoreTest extends test_1.WebdaTest {
427
485
  let method = this.webda.createServices.bind(this.webda);
428
486
  method(["definedmailer"]);
429
487
  // @ts-ignore
430
- this.webda.getApplication().getService = type => {
488
+ this.webda.getApplication().getModda = type => {
431
489
  if (type === "Test/VoidStore") {
432
490
  throw new Error();
433
491
  }
@@ -490,9 +548,6 @@ __decorate([
490
548
  __decorate([
491
549
  mocha_1.test
492
550
  ], CoreTest.prototype, "getServicesImplementations", null);
493
- __decorate([
494
- mocha_1.test
495
- ], CoreTest.prototype, "consumeAllModdas", null);
496
551
  __decorate([
497
552
  mocha_1.test
498
553
  ], CoreTest.prototype, "getStores", null);
@@ -526,6 +581,9 @@ __decorate([
526
581
  __decorate([
527
582
  mocha_1.test
528
583
  ], CoreTest.prototype, "me", null);
584
+ __decorate([
585
+ mocha_1.test
586
+ ], CoreTest.prototype, "covValidateSchema", null);
529
587
  __decorate([
530
588
  mocha_1.test
531
589
  ], CoreTest.prototype, "covGetModules", null);
@@ -541,6 +599,9 @@ __decorate([
541
599
  __decorate([
542
600
  mocha_1.test
543
601
  ], CoreTest.prototype, "errorChecks", null);
602
+ __decorate([
603
+ mocha_1.test
604
+ ], CoreTest.prototype, "autoConnectFailure", null);
544
605
  __decorate([
545
606
  mocha_1.test
546
607
  ], CoreTest.prototype, "cov", null);
@@ -1 +1 @@
1
- {"version":3,"file":"core.spec.js","sourceRoot":"","sources":["../src/core.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.spec.js","sourceRoot":"","sources":["../src/core.spec.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -3,6 +3,7 @@ import { MethodCacheService } from "ts-method-cache";
3
3
  declare const CacheService: MethodCacheService;
4
4
  export { CacheService };
5
5
  export * from "./application";
6
+ export * from "./unpackedapplication";
6
7
  export * from "./core";
7
8
  export * from "./models/aclmodel";
8
9
  export * from "./models/coremodel";
@@ -18,6 +19,7 @@ export * from "./queues/queueservice";
18
19
  export * from "./services/asyncevents";
19
20
  export * from "./services/authentication";
20
21
  export * from "./services/binary";
22
+ export * from "./services/cloudbinary";
21
23
  export * from "./services/configuration";
22
24
  export * from "./services/cron";
23
25
  export * from "./services/debugmailer";
@@ -40,6 +42,8 @@ export * from "./stores/store";
40
42
  export * from "./utils/abstractdeployer";
41
43
  export * from "./utils/context";
42
44
  export * from "./utils/cookie";
45
+ export * from "./utils/httpcontext";
43
46
  export * from "./utils/logger";
44
47
  export * from "./utils/serializers";
45
48
  export * from "./utils/waiter";
49
+ export * from "./stores/webdaql/query";
package/lib/index.js CHANGED
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -18,6 +22,7 @@ const ts_method_cache_2 = require("ts-method-cache");
18
22
  const CacheService = new ts_method_cache_2.MethodCacheService();
19
23
  exports.CacheService = CacheService;
20
24
  __exportStar(require("./application"), exports);
25
+ __exportStar(require("./unpackedapplication"), exports);
21
26
  __exportStar(require("./core"), exports);
22
27
  // Models
23
28
  __exportStar(require("./models/aclmodel"), exports);
@@ -36,6 +41,7 @@ __exportStar(require("./queues/queueservice"), exports);
36
41
  __exportStar(require("./services/asyncevents"), exports);
37
42
  __exportStar(require("./services/authentication"), exports);
38
43
  __exportStar(require("./services/binary"), exports);
44
+ __exportStar(require("./services/cloudbinary"), exports);
39
45
  __exportStar(require("./services/configuration"), exports);
40
46
  __exportStar(require("./services/cron"), exports);
41
47
  __exportStar(require("./services/debugmailer"), exports);
@@ -60,7 +66,9 @@ __exportStar(require("./stores/store"), exports);
60
66
  __exportStar(require("./utils/abstractdeployer"), exports);
61
67
  __exportStar(require("./utils/context"), exports);
62
68
  __exportStar(require("./utils/cookie"), exports);
69
+ __exportStar(require("./utils/httpcontext"), exports);
63
70
  __exportStar(require("./utils/logger"), exports);
64
71
  __exportStar(require("./utils/serializers"), exports);
65
72
  __exportStar(require("./utils/waiter"), exports);
73
+ __exportStar(require("./stores/webdaql/query"), exports);
66
74
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,sFAAsF;AACtF,mDAAuD;AAA9C,wGAAA,WAAW,OAAS;AAC7B,qDAAqD;AACrD,MAAM,YAAY,GAAG,IAAI,oCAAkB,EAAE,CAAC;AACrC,oCAAY;AAErB,gDAA8B;AAC9B,yCAAuB;AAEvB,SAAS;AACT,oDAAkC;AAClC,qDAAmC;AACnC,sDAAoC;AACpC,iDAA+B;AAC/B,sDAAoC;AACpC,qDAAmC;AACnC,gDAA8B;AAE9B,SAAS;AACT,qDAAmC;AACnC,uDAAqC;AACrC,yDAAuC;AACvC,wDAAsC;AAEtC,WAAW;AACX,yDAAuC;AACvC,4DAA0C;AAC1C,oDAAkC;AAClC,2DAAyC;AACzC,kDAAgC;AAChC,yDAAuC;AACvC,kDAAgC;AAChC,wDAAsC;AACtC,+DAA6C;AAC7C,+DAA6C;AAC7C,qEAAmD;AACnD,oDAAkC;AAClC,iEAA+C;AAC/C,mDAAiC;AACjC,sDAAoC;AACpC,qDAAmC;AACnC,qDAAmC;AAEnC,SAAS;AACT,sDAAoC;AACpC,gDAA8B;AAC9B,kDAAgC;AAChC,kDAAgC;AAChC,iDAA+B;AAE/B,QAAQ;AACR,2DAAyC;AACzC,kDAAgC;AAChC,iDAA+B;AAC/B,iDAA+B;AAC/B,sDAAoC;AACpC,iDAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,sFAAsF;AACtF,mDAAuD;AAA9C,wGAAA,WAAW,OAAS;AAC7B,qDAAqD;AACrD,MAAM,YAAY,GAAG,IAAI,oCAAkB,EAAE,CAAC;AACrC,oCAAY;AAErB,gDAA8B;AAC9B,wDAAsC;AACtC,yCAAuB;AAEvB,SAAS;AACT,oDAAkC;AAClC,qDAAmC;AACnC,sDAAoC;AACpC,iDAA+B;AAC/B,sDAAoC;AACpC,qDAAmC;AACnC,gDAA8B;AAE9B,SAAS;AACT,qDAAmC;AACnC,uDAAqC;AACrC,yDAAuC;AACvC,wDAAsC;AAEtC,WAAW;AACX,yDAAuC;AACvC,4DAA0C;AAC1C,oDAAkC;AAClC,yDAAuC;AACvC,2DAAyC;AACzC,kDAAgC;AAChC,yDAAuC;AACvC,kDAAgC;AAChC,wDAAsC;AACtC,+DAA6C;AAC7C,+DAA6C;AAC7C,qEAAmD;AACnD,oDAAkC;AAClC,iEAA+C;AAC/C,mDAAiC;AACjC,sDAAoC;AACpC,qDAAmC;AACnC,qDAAmC;AAEnC,SAAS;AACT,sDAAoC;AACpC,gDAA8B;AAC9B,kDAAgC;AAChC,kDAAgC;AAChC,iDAA+B;AAE/B,QAAQ;AACR,2DAAyC;AACzC,kDAAgC;AAChC,iDAA+B;AAC/B,sDAAoC;AACpC,iDAA+B;AAC/B,sDAAoC;AACpC,iDAA+B;AAE/B,yDAAuC"}
@@ -5,6 +5,8 @@ export declare type Acl = {
5
5
  };
6
6
  /**
7
7
  * Object that contains ACL to define its own permissions
8
+ *
9
+ * @WebdaModel
8
10
  */
9
11
  export default class AclModel extends CoreModel {
10
12
  /**
@@ -59,7 +61,7 @@ export default class AclModel extends CoreModel {
59
61
  *
60
62
  */
61
63
  _httpPutAcls(ctx: Context): Promise<void>;
62
- getGroups(ctx: Context, user: User): string[];
64
+ getGroups(_ctx: Context, user: User): string[];
63
65
  /**
64
66
  * Get Permissions for one object
65
67
  * @param ctx
@@ -13,6 +13,8 @@ exports.AclModel = void 0;
13
13
  const coremodel_1 = require("./coremodel");
14
14
  /**
15
15
  * Object that contains ACL to define its own permissions
16
+ *
17
+ * @WebdaModel
16
18
  */
17
19
  class AclModel extends coremodel_1.CoreModel {
18
20
  constructor() {
@@ -106,16 +108,17 @@ class AclModel extends coremodel_1.CoreModel {
106
108
  */
107
109
  _httpPutAcls(ctx) {
108
110
  return __awaiter(this, void 0, void 0, function* () {
111
+ let acl = yield ctx.getRequestBody();
109
112
  // This looks like a bad request
110
- if (ctx.getRequestBody().raw) {
113
+ if (acl.raw) {
111
114
  throw 400;
112
115
  }
113
- this.__acl = ctx.getRequestBody();
116
+ this.__acl = acl;
114
117
  yield this.save();
115
118
  });
116
119
  }
117
120
  // Should cache the user role in the session
118
- getGroups(ctx, user) {
121
+ getGroups(_ctx, user) {
119
122
  if (!user) {
120
123
  return [];
121
124
  }
@@ -1 +1 @@
1
- {"version":3,"file":"aclmodel.js","sourceRoot":"","sources":["../../src/models/aclmodel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aclmodel.js","sourceRoot":"","sources":["../../src/models/aclmodel.ts"],"names":[],"mappings":"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"}
@@ -15,13 +15,16 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
15
15
  });
16
16
  };
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- const assert = require("assert");
19
18
  const mocha_1 = require("@testdeck/mocha");
19
+ const assert = require("assert");
20
20
  const index_1 = require("../index");
21
+ const test_1 = require("../test");
21
22
  let AclPolicyTest = class AclPolicyTest {
22
23
  before() {
23
24
  return __awaiter(this, void 0, void 0, function* () {
24
- this._webda = new index_1.Core(new index_1.Application(__dirname + "/../../test/config.json"));
25
+ let app = new test_1.TestApplication(__dirname + "/../../test/config.json");
26
+ yield app.load();
27
+ this._webda = new index_1.Core(app);
25
28
  this._ctx = yield this._webda.newContext(new index_1.HttpContext("test.webda.io", "GET", "/"));
26
29
  this._session = this._ctx.getSession();
27
30
  this._session.login("user-uid", "none");
@@ -123,13 +126,15 @@ let AclPolicyTest = class AclPolicyTest {
123
126
  };
124
127
  let actions = index_1.AclModel.getActions();
125
128
  assert.notStrictEqual(actions.acl, undefined);
126
- this._ctx.setHttpContext(new index_1.HttpContext("test.webda.io", "PUT", "/", undefined, undefined, { acl: "mine" }));
129
+ this._ctx.setHttpContext(new index_1.HttpContext("test.webda.io", "PUT", "/"));
130
+ this._ctx.getHttpContext().setBody({ acl: "mine" });
127
131
  yield this.model._acl(this._ctx);
128
132
  // @ts-ignore
129
133
  assert.strictEqual(this.model.getAcl().acl, "mine");
130
- this._ctx.setHttpContext(new index_1.HttpContext("test.webda.io", "PUT", "/", undefined, undefined, { raw: { acl: "mine" } }));
134
+ this._ctx.reinit();
135
+ this._ctx.getHttpContext().setBody({ raw: { acl: "mine" } });
131
136
  yield assert.rejects(() => this.model._acl(this._ctx));
132
- this._ctx.setHttpContext(new index_1.HttpContext("test.webda.io", "GET", "/", undefined, undefined, { acl: "mine" }));
137
+ this._ctx.setHttpContext(new index_1.HttpContext("test.webda.io", "GET", "/"));
133
138
  yield this.model._acl(this._ctx);
134
139
  assert.deepStrictEqual(JSON.parse(this._ctx.getResponseBody()), {
135
140
  raw: {
@@ -1 +1 @@
1
- {"version":3,"file":"aclmodel.spec.js","sourceRoot":"","sources":["../../src/models/aclmodel.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aclmodel.spec.js","sourceRoot":"","sources":["../../src/models/aclmodel.spec.ts"],"names":[],"mappings":"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"}