@webda/core 2.0.0-beta.3 → 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 (276) hide show
  1. package/lib/application.d.ts +5 -5
  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 +20 -24
  7. package/lib/core.js +222 -315
  8. package/lib/core.js.map +1 -1
  9. package/lib/core.spec.js +332 -406
  10. package/lib/core.spec.js.map +1 -1
  11. package/lib/index.d.ts +49 -48
  12. package/lib/index.js +53 -70
  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 -152
  18. package/lib/models/aclmodel.spec.js.map +1 -1
  19. package/lib/models/coremodel.d.ts +7 -6
  20. package/lib/models/coremodel.js +65 -113
  21. package/lib/models/coremodel.js.map +1 -1
  22. package/lib/models/coremodel.spec.js +88 -107
  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 +3 -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 +2 -2
  31. package/lib/models/ownermodel.js +39 -62
  32. package/lib/models/ownermodel.js.map +1 -1
  33. package/lib/models/ownermodel.spec.js +126 -168
  34. package/lib/models/ownermodel.spec.js.map +1 -1
  35. package/lib/models/rolemodel.d.ts +1 -1
  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 -63
  39. package/lib/models/rolemodel.spec.js.map +1 -1
  40. package/lib/models/user.d.ts +3 -3
  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 +3 -3
  62. package/lib/queues/queueservice.js +51 -67
  63. package/lib/queues/queueservice.js.map +1 -1
  64. package/lib/router.d.ts +3 -3
  65. package/lib/router.js +46 -47
  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 +23 -13
  75. package/lib/services/authentication.js +537 -563
  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 +7 -5
  80. package/lib/services/binary.js +211 -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 +45 -70
  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 +1 -1
  92. package/lib/services/configuration.js +78 -105
  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 +9 -4
  102. package/lib/services/cryptoservice.js +187 -221
  103. package/lib/services/cryptoservice.js.map +1 -1
  104. package/lib/services/cryptoservice.spec.js +88 -115
  105. package/lib/services/cryptoservice.spec.js.map +1 -1
  106. package/lib/services/debugmailer.d.ts +1 -1
  107. package/lib/services/debugmailer.js +13 -34
  108. package/lib/services/debugmailer.js.map +1 -1
  109. package/lib/services/debugmailer.spec.js +16 -29
  110. package/lib/services/debugmailer.spec.js.map +1 -1
  111. package/lib/services/echo.d.ts +2 -2
  112. package/lib/services/echo.js +15 -31
  113. package/lib/services/echo.js.map +1 -1
  114. package/lib/services/echo.spec.js +27 -40
  115. package/lib/services/echo.spec.js.map +1 -1
  116. package/lib/services/filebinary.d.ts +5 -5
  117. package/lib/services/filebinary.js +165 -210
  118. package/lib/services/filebinary.js.map +1 -1
  119. package/lib/services/filebinary.spec.d.ts +2 -1
  120. package/lib/services/filebinary.spec.js +106 -116
  121. package/lib/services/filebinary.spec.js.map +1 -1
  122. package/lib/services/fileconfiguration.d.ts +1 -1
  123. package/lib/services/fileconfiguration.js +25 -44
  124. package/lib/services/fileconfiguration.js.map +1 -1
  125. package/lib/services/fileconfiguration.spec.js +79 -109
  126. package/lib/services/fileconfiguration.spec.js.map +1 -1
  127. package/lib/services/invitationservice.d.ts +7 -7
  128. package/lib/services/invitationservice.js +274 -314
  129. package/lib/services/invitationservice.js.map +1 -1
  130. package/lib/services/invitationservice.spec.js +442 -448
  131. package/lib/services/invitationservice.spec.js.map +1 -1
  132. package/lib/services/kubernetesconfiguration.d.ts +1 -1
  133. package/lib/services/kubernetesconfiguration.js +41 -60
  134. package/lib/services/kubernetesconfiguration.js.map +1 -1
  135. package/lib/services/kubernetesconfiguration.spec.js +80 -98
  136. package/lib/services/kubernetesconfiguration.spec.js.map +1 -1
  137. package/lib/services/mailer.d.ts +4 -4
  138. package/lib/services/mailer.js +62 -86
  139. package/lib/services/mailer.js.map +1 -1
  140. package/lib/services/mailer.spec.js +86 -127
  141. package/lib/services/mailer.spec.js.map +1 -1
  142. package/lib/services/notificationservice.d.ts +3 -3
  143. package/lib/services/notificationservice.js +21 -42
  144. package/lib/services/notificationservice.js.map +1 -1
  145. package/lib/services/notificationservice.spec.js +47 -73
  146. package/lib/services/notificationservice.spec.js.map +1 -1
  147. package/lib/services/oauth.d.ts +4 -4
  148. package/lib/services/oauth.js +68 -83
  149. package/lib/services/oauth.js.map +1 -1
  150. package/lib/services/oauth.spec.js +130 -156
  151. package/lib/services/oauth.spec.js.map +1 -1
  152. package/lib/services/proxy.d.ts +2 -6
  153. package/lib/services/proxy.js +45 -58
  154. package/lib/services/proxy.js.map +1 -1
  155. package/lib/services/proxy.spec.js +34 -53
  156. package/lib/services/proxy.spec.js.map +1 -1
  157. package/lib/services/resource.d.ts +2 -2
  158. package/lib/services/resource.js +12 -18
  159. package/lib/services/resource.js.map +1 -1
  160. package/lib/services/resource.spec.js +67 -99
  161. package/lib/services/resource.spec.js.map +1 -1
  162. package/lib/services/service.d.ts +26 -3
  163. package/lib/services/service.js +68 -40
  164. package/lib/services/service.js.map +1 -1
  165. package/lib/services/service.spec.js +62 -67
  166. package/lib/services/service.spec.js.map +1 -1
  167. package/lib/services/version.d.ts +1 -1
  168. package/lib/services/version.js +3 -8
  169. package/lib/services/version.js.map +1 -1
  170. package/lib/services/version.spec.js +11 -24
  171. package/lib/services/version.spec.js.map +1 -1
  172. package/lib/stores/aggregator.d.ts +2 -2
  173. package/lib/stores/aggregator.js +37 -58
  174. package/lib/stores/aggregator.js.map +1 -1
  175. package/lib/stores/file.d.ts +3 -3
  176. package/lib/stores/file.js +93 -131
  177. package/lib/stores/file.js.map +1 -1
  178. package/lib/stores/file.spec.d.ts +2 -2
  179. package/lib/stores/file.spec.js +261 -289
  180. package/lib/stores/file.spec.js.map +1 -1
  181. package/lib/stores/mapper.d.ts +3 -3
  182. package/lib/stores/mapper.js +110 -137
  183. package/lib/stores/mapper.js.map +1 -1
  184. package/lib/stores/mapper.spec.js +131 -150
  185. package/lib/stores/mapper.spec.js.map +1 -1
  186. package/lib/stores/memory.d.ts +3 -3
  187. package/lib/stores/memory.js +98 -144
  188. package/lib/stores/memory.js.map +1 -1
  189. package/lib/stores/memory.spec.d.ts +2 -2
  190. package/lib/stores/memory.spec.js +124 -145
  191. package/lib/stores/memory.spec.js.map +1 -1
  192. package/lib/stores/store.d.ts +17 -13
  193. package/lib/stores/store.js +819 -847
  194. package/lib/stores/store.js.map +1 -1
  195. package/lib/stores/store.spec.d.ts +5 -4
  196. package/lib/stores/store.spec.js +624 -669
  197. package/lib/stores/store.spec.js.map +1 -1
  198. package/lib/stores/webdaql/WebdaQLLexer.d.ts +4 -4
  199. package/lib/stores/webdaql/WebdaQLLexer.js +9 -13
  200. package/lib/stores/webdaql/WebdaQLLexer.js.map +1 -1
  201. package/lib/stores/webdaql/WebdaQLParserLexer.d.ts +4 -4
  202. package/lib/stores/webdaql/WebdaQLParserLexer.js +9 -13
  203. package/lib/stores/webdaql/WebdaQLParserLexer.js.map +1 -1
  204. package/lib/stores/webdaql/WebdaQLParserListener.d.ts +2 -2
  205. package/lib/stores/webdaql/WebdaQLParserListener.js +1 -2
  206. package/lib/stores/webdaql/WebdaQLParserListener.js.map +1 -1
  207. package/lib/stores/webdaql/WebdaQLParserParser.d.ts +10 -10
  208. package/lib/stores/webdaql/WebdaQLParserParser.js +62 -91
  209. package/lib/stores/webdaql/WebdaQLParserParser.js.map +1 -1
  210. package/lib/stores/webdaql/WebdaQLParserVisitor.d.ts +2 -2
  211. package/lib/stores/webdaql/WebdaQLParserVisitor.js +1 -2
  212. package/lib/stores/webdaql/WebdaQLParserVisitor.js.map +1 -1
  213. package/lib/stores/webdaql/query.d.ts +4 -5
  214. package/lib/stores/webdaql/query.js +16 -19
  215. package/lib/stores/webdaql/query.js.map +1 -1
  216. package/lib/stores/webdaql/query.spec.js +30 -32
  217. package/lib/stores/webdaql/query.spec.js.map +1 -1
  218. package/lib/test.d.ts +3 -3
  219. package/lib/test.js +73 -100
  220. package/lib/test.js.map +1 -1
  221. package/lib/unpackedapplication.d.ts +1 -1
  222. package/lib/unpackedapplication.js +25 -31
  223. package/lib/unpackedapplication.js.map +1 -1
  224. package/lib/utils/abstractdeployer.js +1 -5
  225. package/lib/utils/abstractdeployer.js.map +1 -1
  226. package/lib/utils/abstractdeployer.spec.js +6 -8
  227. package/lib/utils/abstractdeployer.spec.js.map +1 -1
  228. package/lib/utils/context.d.ts +7 -5
  229. package/lib/utils/context.js +95 -103
  230. package/lib/utils/context.js.map +1 -1
  231. package/lib/utils/context.spec.js +139 -163
  232. package/lib/utils/context.spec.js.map +1 -1
  233. package/lib/utils/cookie.d.ts +3 -3
  234. package/lib/utils/cookie.js +42 -61
  235. package/lib/utils/cookie.js.map +1 -1
  236. package/lib/utils/cookie.spec.js +42 -64
  237. package/lib/utils/cookie.spec.js.map +1 -1
  238. package/lib/utils/esm.d.ts +4 -0
  239. package/lib/utils/esm.js +10 -0
  240. package/lib/utils/esm.js.map +1 -0
  241. package/lib/utils/httpcontext.d.ts +3 -0
  242. package/lib/utils/httpcontext.js +48 -65
  243. package/lib/utils/httpcontext.js.map +1 -1
  244. package/lib/utils/httpcontext.spec.js +37 -56
  245. package/lib/utils/httpcontext.spec.js.map +1 -1
  246. package/lib/utils/logger.d.ts +2 -2
  247. package/lib/utils/logger.js +15 -28
  248. package/lib/utils/logger.js.map +1 -1
  249. package/lib/utils/logger.spec.js +9 -11
  250. package/lib/utils/logger.spec.js.map +1 -1
  251. package/lib/utils/serializers.js +17 -20
  252. package/lib/utils/serializers.js.map +1 -1
  253. package/lib/utils/serializers.spec.js +43 -44
  254. package/lib/utils/serializers.spec.js.map +1 -1
  255. package/lib/utils/session.d.ts +6 -6
  256. package/lib/utils/session.js +37 -59
  257. package/lib/utils/session.js.map +1 -1
  258. package/lib/utils/session.spec.js +38 -51
  259. package/lib/utils/session.spec.js.map +1 -1
  260. package/lib/utils/waiter.d.ts +1 -1
  261. package/lib/utils/waiter.js +32 -52
  262. package/lib/utils/waiter.js.map +1 -1
  263. package/lib/utils/waiter.spec.js +75 -92
  264. package/lib/utils/waiter.spec.js.map +1 -1
  265. package/package.json +17 -12
  266. package/test/config-invitation.json +1 -3
  267. package/test/config.json +1 -2
  268. package/test/config.old.json +1 -2
  269. package/test/moddas/annotatedservice.js +5 -5
  270. package/test/moddas/debugmailer.js +2 -3
  271. package/test/moddas/fakeservice.js +2 -3
  272. package/test/moddas/voidstore.js +6 -4
  273. package/test/models/ident.js +2 -6
  274. package/test/models/task.js +3 -7
  275. package/test/package.json +2 -1
  276. package/webda.module.json +956 -189
@@ -1,35 +1,21 @@
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 assert = require("assert");
19
- const mocha_1 = require("@testdeck/mocha");
20
- const path = require("path");
21
- const index_1 = require("./index");
22
- const test_1 = require("./test");
23
- let ApplicationTest = class ApplicationTest extends test_1.WebdaTest {
24
- before() {
25
- const _super = Object.create(null, {
26
- before: { get: () => super.before }
27
- });
28
- return __awaiter(this, void 0, void 0, function* () {
29
- yield _super.before.call(this);
30
- this.sampleApp = new test_1.TestApplication(path.join(__dirname, "..", "..", "..", "sample-app"));
31
- yield this.sampleApp.load();
32
- });
7
+ import { suite, test } from "@testdeck/mocha";
8
+ import * as assert from "assert";
9
+ import * as path from "path";
10
+ import { Application, UnpackedApplication } from "./index.js";
11
+ import { TestApplication, WebdaTest } from "./test.js";
12
+ import { getCommonJS } from "./utils/esm.js";
13
+ const { __dirname } = getCommonJS(import.meta.url);
14
+ let ApplicationTest = class ApplicationTest extends WebdaTest {
15
+ async before() {
16
+ await super.before();
17
+ this.sampleApp = new TestApplication(path.join(__dirname, "..", "..", "..", "sample-app"));
18
+ await this.sampleApp.load();
33
19
  }
34
20
  testObjectParameter() {
35
21
  assert.deepStrictEqual(this.sampleApp.replaceVariables({
@@ -67,145 +53,140 @@ let ApplicationTest = class ApplicationTest extends test_1.WebdaTest {
67
53
  getConfiguration() {
68
54
  let config = this.sampleApp.getConfiguration();
69
55
  }
70
- cacheSchema() {
71
- return __awaiter(this, void 0, void 0, function* () {
72
- let app = new index_1.Application(__dirname + "/../test/config.json");
73
- yield app.load();
74
- // Should load from cache
75
- assert.notStrictEqual(app.getSchema("WebdaTest/Mailer"), undefined);
76
- assert.strictEqual(app.getSchema("Webda/Container"), undefined);
77
- // Check if cached just use cache
78
- // @ts-ignore
79
- app.baseConfiguration.cachedModules = {
80
- schemas: {
81
- // @ts-ignore
82
- fake: 666
83
- }
84
- };
85
- assert.strictEqual(app.getSchema("fake"), 666);
86
- });
56
+ async cacheSchema() {
57
+ let app = new Application(__dirname + "/../test/config.json");
58
+ await app.load();
59
+ // Should load from cache
60
+ assert.notStrictEqual(app.getSchema("WebdaTest/Mailer"), undefined);
61
+ assert.strictEqual(app.getSchema("Webda/Container"), undefined);
62
+ // Check if cached just use cache
63
+ // @ts-ignore
64
+ app.baseConfiguration.cachedModules = {
65
+ schemas: {
66
+ // @ts-ignore
67
+ fake: 666
68
+ }
69
+ };
70
+ assert.strictEqual(app.getSchema("fake"), 666);
87
71
  }
88
- cov() {
89
- return __awaiter(this, void 0, void 0, function* () {
90
- assert.throws(() => new index_1.Application("/notexisting"), /Not a webda application folder or webda.config.jsonc or webda.config.json file: unexisting.*/);
91
- yield assert.rejects(() => new index_1.Application(__dirname + "/../test/moddas").load(), /Not a webda application folder or webda.config.jsonc or webda.config.json file: .*/);
92
- yield assert.rejects(() => new index_1.Application(__dirname + "/../test/badapp").load(), /Cannot parse JSON of: .*/);
93
- // If allow module is enable the Application should let run anywhere
94
- new index_1.Application(__dirname + "/../test/moddas", undefined);
95
- let unpackedApp = new index_1.UnpackedApplication(__dirname + "/../test/badapp", undefined);
96
- unpackedApp.loadProjectInformation();
97
- // Read cached modules
98
- let app = new index_1.Application(__dirname + "/../test/cachedapp", undefined);
99
- yield app.load();
100
- app.getGitInformation();
101
- // No package.json should not fail although more than abnormal
102
- app = new test_1.TestApplication(__dirname + "/../test/config.json");
103
- yield app.load();
104
- assert.ok(!app.extends(null, String));
105
- app.getPackageWebda();
106
- assert.throws(() => app.getModda("Unknown"), /Undefined modda Unknown/);
107
- app.getDeployers();
108
- app.getModules();
109
- app.getBeans();
110
- // Alternative of files
111
- // @ts-ignore
112
- app.getPackageDescription.files = undefined;
113
- // Nothing can be really checked here
114
- app.addModel("WebdaTest/NotExisting", null);
115
- app.addDeployer("WebdaTest/NotExisting", null);
116
- delete app.getModels()["webdatest/notexisting"];
117
- assert.deepStrictEqual(app.getGitInformation(), {
118
- branch: "",
119
- commit: "",
120
- short: "",
121
- tag: "",
122
- tags: [],
123
- version: ""
124
- });
125
- assert.strictEqual(app.isCached(), true);
126
- assert.strictEqual(app.getCurrentDeployment(), "");
127
- assert.strictEqual(app.replaceVariables("hello", {}), "hello");
128
- assert.strictEqual(app.replaceVariables("hello ${test} ${test2}", {}), "hello undefined undefined");
129
- assert.throws(() => app.replaceVariables("hello ${now && process.exit(666)}", {}), /Variable cannot use every javascript features/);
130
- assert.throws(() => app.replaceVariables("hello ${test} ${{ test}", {}), /Variable cannot use every javascript features/);
131
- assert.throws(() => app.replaceVariables("hello " + "${test}".repeat(12), {}), /Too many variables/);
132
- unpackedApp = new index_1.UnpackedApplication(__dirname + "/../test/moddas", undefined);
133
- yield unpackedApp.load();
72
+ async cov() {
73
+ assert.throws(() => new Application("/notexisting"), /Not a webda application folder or webda.config.jsonc or webda.config.json file: unexisting.*/);
74
+ await assert.rejects(() => new Application(__dirname + "/../test/moddas").load(), /Not a webda application folder or webda.config.jsonc or webda.config.json file: .*/);
75
+ await assert.rejects(() => new Application(__dirname + "/../test/badapp").load(), /Cannot parse JSON of: .*/);
76
+ // If allow module is enable the Application should let run anywhere
77
+ new Application(__dirname + "/../test/moddas", undefined);
78
+ let unpackedApp = new UnpackedApplication(__dirname + "/../test/badapp", undefined);
79
+ unpackedApp.loadProjectInformation();
80
+ // Read cached modules
81
+ let app = new Application(__dirname + "/../test/cachedapp", undefined);
82
+ await app.load();
83
+ app.getGitInformation();
84
+ // No package.json should not fail although more than abnormal
85
+ app = new TestApplication(__dirname + "/../test/config.json");
86
+ await app.load();
87
+ assert.ok(!app.extends(null, String));
88
+ app.getPackageWebda();
89
+ assert.throws(() => app.getModda("Unknown"), /Undefined modda Unknown/);
90
+ app.getDeployers();
91
+ app.getModules();
92
+ app.getBeans();
93
+ // Alternative of files
94
+ // @ts-ignore
95
+ app.getPackageDescription.files = undefined;
96
+ // Nothing can be really checked here
97
+ app.addModel("WebdaTest/NotExisting", null);
98
+ app.addDeployer("WebdaTest/NotExisting", null);
99
+ delete app.getModels()["webdatest/notexisting"];
100
+ assert.deepStrictEqual(app.getGitInformation(), {
101
+ branch: "",
102
+ commit: "",
103
+ short: "",
104
+ tag: "",
105
+ tags: [],
106
+ version: ""
134
107
  });
108
+ assert.strictEqual(app.isCached(), true);
109
+ assert.strictEqual(app.getCurrentDeployment(), "");
110
+ assert.strictEqual(app.replaceVariables("hello", {}), "hello");
111
+ assert.strictEqual(app.replaceVariables("hello ${test} ${test2}", {}), "hello undefined undefined");
112
+ assert.throws(() => app.replaceVariables("hello ${now && process.exit(666)}", {}), /Variable cannot use every javascript features/);
113
+ assert.throws(() => app.replaceVariables("hello ${test} ${{ test}", {}), /Variable cannot use every javascript features/);
114
+ assert.throws(() => app.replaceVariables("hello " + "${test}".repeat(12), {}), /Too many variables/);
115
+ unpackedApp = new UnpackedApplication(__dirname + "/../test/moddas", undefined);
116
+ await unpackedApp.load();
117
+ // @ts-ignore
118
+ unpackedApp.baseConfiguration.cachedModules.project.webda = undefined;
119
+ assert.deepStrictEqual(unpackedApp.getPackageWebda(), { namespace: "Webda" });
135
120
  }
136
- getFullNameFromPrototype() {
137
- return __awaiter(this, void 0, void 0, function* () {
138
- let app = new test_1.TestApplication(__dirname + "/../test/config.json");
139
- yield app.load();
140
- let services = app.getModdas();
141
- let name = Object.keys(services).pop();
142
- let service = services[name].prototype;
143
- assert.strictEqual(app.getFullNameFromPrototype(service), name);
144
- // Cheat for deployer
145
- services = app.getModels();
146
- name = Object.keys(services).pop();
147
- service = services[name].prototype;
148
- app.addDeployer("Plop/Test", services[name]);
149
- assert.strictEqual(app.getFullNameFromPrototype(service), "plop/test");
150
- });
121
+ async getFullNameFromPrototype() {
122
+ let app = new TestApplication(__dirname + "/../test/config.json");
123
+ await app.load();
124
+ let services = app.getModdas();
125
+ let name = Object.keys(services).pop();
126
+ let service = services[name].prototype;
127
+ assert.strictEqual(app.getFullNameFromPrototype(service), name);
128
+ // Cheat for deployer
129
+ services = app.getModels();
130
+ name = Object.keys(services).pop();
131
+ service = services[name].prototype;
132
+ app.addDeployer("Plop/Test", services[name]);
133
+ assert.strictEqual(app.getFullNameFromPrototype(service), "plop/test");
151
134
  }
152
- loadModule() {
153
- return __awaiter(this, void 0, void 0, function* () {
154
- let app = new index_1.Application(__dirname + "/../test/config.json");
155
- yield app.loadModule({
156
- moddas: {
157
- Test: "moddas/fakeservice.js",
158
- ReTest: "./notFound.js"
159
- },
160
- models: {
161
- ReTest: "notFound.js"
162
- },
163
- deployers: {
164
- ReTest: "notFound.js"
165
- }
166
- }, "");
167
- yield app.loadModule({});
168
- yield app.importFile("./../test/moddas/fakeservice.js");
169
- let cwd = process.cwd();
170
- try {
171
- // Check loading of aws module
172
- process.chdir(path.join(__dirname, "..", "..", "aws"));
173
- yield app.loadLocalModule();
135
+ async loadModule() {
136
+ let app = new Application(__dirname + "/../test/config.json");
137
+ await app.loadModule({
138
+ moddas: {
139
+ Test: "moddas/fakeservice.js",
140
+ ReTest: "./notFound.js"
141
+ },
142
+ models: {
143
+ ReTest: "notFound.js"
144
+ },
145
+ deployers: {
146
+ ReTest: "notFound.js"
174
147
  }
175
- finally {
176
- process.chdir(cwd);
177
- }
178
- });
148
+ }, "");
149
+ await app.loadModule({});
150
+ await app.importFile("./../test/moddas/fakeservice.js");
151
+ let cwd = process.cwd();
152
+ try {
153
+ // Check loading of aws module
154
+ process.chdir(path.join(__dirname, "..", "..", "aws"));
155
+ await app.loadLocalModule();
156
+ }
157
+ finally {
158
+ process.chdir(cwd);
159
+ }
179
160
  }
180
161
  };
181
162
  __decorate([
182
- mocha_1.test
163
+ test
183
164
  ], ApplicationTest.prototype, "testObjectParameter", null);
184
165
  __decorate([
185
- mocha_1.test
166
+ test
186
167
  ], ApplicationTest.prototype, "configurationImports", null);
187
168
  __decorate([
188
- mocha_1.test
169
+ test
189
170
  ], ApplicationTest.prototype, "testStringParameter", null);
190
171
  __decorate([
191
- mocha_1.test
172
+ test
192
173
  ], ApplicationTest.prototype, "getAppPath", null);
193
174
  __decorate([
194
- mocha_1.test
175
+ test
195
176
  ], ApplicationTest.prototype, "getConfiguration", null);
196
177
  __decorate([
197
- mocha_1.test
178
+ test
198
179
  ], ApplicationTest.prototype, "cacheSchema", null);
199
180
  __decorate([
200
- mocha_1.test
181
+ test
201
182
  ], ApplicationTest.prototype, "cov", null);
202
183
  __decorate([
203
- mocha_1.test
184
+ test
204
185
  ], ApplicationTest.prototype, "getFullNameFromPrototype", null);
205
186
  __decorate([
206
- mocha_1.test
187
+ test
207
188
  ], ApplicationTest.prototype, "loadModule", null);
208
189
  ApplicationTest = __decorate([
209
- mocha_1.suite
190
+ suite
210
191
  ], ApplicationTest);
211
192
  //# sourceMappingURL=application.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"application.spec.js","sourceRoot":"","sources":["../src/application.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application.spec.js","sourceRoot":"","sources":["../src/application.spec.ts"],"names":[],"mappings":"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"}
package/lib/core.d.ts CHANGED
@@ -1,14 +1,25 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
2
3
  import { WorkerLogLevel, WorkerOutput } from "@webda/workout";
3
- import Ajv from "ajv";
4
+ import Ajv, { ErrorObject } from "ajv";
4
5
  import * as events from "events";
5
6
  import { OpenAPIV3 } from "openapi-types";
6
- import * as vm from "vm";
7
- import { Application, Configuration } from "./application";
8
- import { Context, HttpContext, Logger, Service, Store } from "./index";
9
- import { CoreModel, CoreModelDefinition } from "./models/coremodel";
10
- import { OpenAPIWebdaDefinition, RouteInfo, Router } from "./router";
11
- import CryptoService from "./services/cryptoservice";
7
+ import { Writable } from "stream";
8
+ import { Application, Configuration } from "./application.js";
9
+ import { Context, HttpContext, Logger, Service, Store } from "./index.js";
10
+ import { Constructor, CoreModel, CoreModelDefinition } from "./models/coremodel.js";
11
+ import { RouteInfo, Router } from "./router.js";
12
+ import CryptoService from "./services/cryptoservice.js";
13
+ /**
14
+ * Copy from https://github.com/ajv-validator/ajv/blob/master/lib/runtime/validation_error.ts
15
+ * It is not exported by ajv
16
+ */
17
+ export declare class ValidationError extends Error {
18
+ readonly errors: Partial<ErrorObject>[];
19
+ readonly ajv: true;
20
+ readonly validation: true;
21
+ constructor(errors: Partial<ErrorObject>[]);
22
+ }
12
23
  /**
13
24
  *
14
25
  */
@@ -74,7 +85,6 @@ export declare class WebsiteOriginFilter implements RequestFilter<Context> {
74
85
  checkRequest(context: Context): Promise<boolean>;
75
86
  }
76
87
  export declare function Bean(constructor: Function): void;
77
- export declare function Route(route: string, methods?: string | string[], allowPath?: boolean, openapi?: OpenAPIWebdaDefinition): (target: any, executor: string) => void;
78
88
  export declare type CoreEvents = {
79
89
  /**
80
90
  * Emitted when new result is sent
@@ -239,10 +249,6 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
239
249
  * @returns
240
250
  */
241
251
  getAppPath(subpath?: string): string;
242
- /**
243
- * Reinit the @Route
244
- */
245
- reinitResolvedRoutes(): void;
246
252
  /**
247
253
  * Retrieve all detected modules definition
248
254
  */
@@ -286,12 +292,6 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
286
292
  * @param filter
287
293
  */
288
294
  registerCORSFilter(filter: RequestFilter<Context>): void;
289
- /**
290
- *
291
- * @param {Object} executor The executor to expose as executor
292
- * @param {String} code to execute
293
- */
294
- sandbox(code: any, context?: vm.Context): any;
295
295
  /**
296
296
  * Validate the object with schema
297
297
  *
@@ -375,7 +375,7 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
375
375
  *
376
376
  * @param {String} name The model name to retrieve
377
377
  */
378
- getModel(name: any): any;
378
+ getModel<T = any>(name: any): Constructor<T> | CoreModelDefinition;
379
379
  /**
380
380
  * Add to context information and executor based on the http context
381
381
  */
@@ -452,10 +452,6 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
452
452
  * Init services and Beans along with Routes
453
453
  */
454
454
  initStatics(): void;
455
- /**
456
- * Init Routes declare by @Route annotation
457
- */
458
- initBeanRoutes(serviceBean: Service): void;
459
455
  /**
460
456
  * Create a new context for a request
461
457
  *
@@ -464,7 +460,7 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
464
460
  * @param stream - The request output stream if any
465
461
  * @return A new context object to pass along
466
462
  */
467
- newContext<T extends Context>(httpContext: HttpContext, stream?: any, noInit?: boolean): Promise<T>;
463
+ newContext<T extends Context>(httpContext: HttpContext, stream?: Writable, noInit?: boolean): Promise<T>;
468
464
  /**
469
465
  * Convert an object to JSON using the Webda json filter
470
466
  *