@webda/core 2.0.0-beta.0 → 2.0.0-beta.3

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 (229) hide show
  1. package/lib/application.d.ts +40 -18
  2. package/lib/application.js +20 -6
  3. package/lib/application.js.map +1 -1
  4. package/lib/application.spec.js +12 -0
  5. package/lib/application.spec.js.map +1 -1
  6. package/lib/core.d.ts +69 -19
  7. package/lib/core.js +90 -38
  8. package/lib/core.js.map +1 -1
  9. package/lib/core.spec.js +42 -35
  10. package/lib/core.spec.js.map +1 -1
  11. package/lib/index.d.ts +4 -0
  12. package/lib/index.js +5 -0
  13. package/lib/index.js.map +1 -1
  14. package/lib/models/aclmodel.js +3 -2
  15. package/lib/models/aclmodel.js.map +1 -1
  16. package/lib/models/aclmodel.spec.js +7 -4
  17. package/lib/models/aclmodel.spec.js.map +1 -1
  18. package/lib/models/coremodel.d.ts +82 -9
  19. package/lib/models/coremodel.js +49 -0
  20. package/lib/models/coremodel.js.map +1 -1
  21. package/lib/models/coremodel.spec.js +21 -2
  22. package/lib/models/coremodel.spec.js.map +1 -1
  23. package/lib/models/ident.d.ts +4 -2
  24. package/lib/models/ident.js.map +1 -1
  25. package/lib/models/ident.spec.js +1 -1
  26. package/lib/models/ident.spec.js.map +1 -1
  27. package/lib/models/ownermodel.d.ts +11 -1
  28. package/lib/models/ownermodel.js +16 -1
  29. package/lib/models/ownermodel.js.map +1 -1
  30. package/lib/models/ownermodel.spec.js +32 -13
  31. package/lib/models/ownermodel.spec.js.map +1 -1
  32. package/lib/models/rolemodel.d.ts +1 -1
  33. package/lib/models/rolemodel.spec.js +3 -1
  34. package/lib/models/rolemodel.spec.js.map +1 -1
  35. package/lib/models/user.d.ts +3 -3
  36. package/lib/models/user.js.map +1 -1
  37. package/lib/models/user.spec.js +1 -1
  38. package/lib/models/user.spec.js.map +1 -1
  39. package/lib/queues/filequeue.js +2 -2
  40. package/lib/queues/filequeue.js.map +1 -1
  41. package/lib/queues/filequeue.spec.js +2 -2
  42. package/lib/queues/filequeue.spec.js.map +1 -1
  43. package/lib/queues/memoryqueue.spec.js +1 -1
  44. package/lib/queues/memoryqueue.spec.js.map +1 -1
  45. package/lib/queues/queue.spec.js +1 -1
  46. package/lib/queues/queue.spec.js.map +1 -1
  47. package/lib/queues/queueservice.d.ts +2 -2
  48. package/lib/queues/queueservice.js +1 -0
  49. package/lib/queues/queueservice.js.map +1 -1
  50. package/lib/router.d.ts +6 -1
  51. package/lib/router.js +3 -12
  52. package/lib/router.js.map +1 -1
  53. package/lib/router.spec.js +5 -5
  54. package/lib/router.spec.js.map +1 -1
  55. package/lib/services/asyncevents.spec.js +2 -2
  56. package/lib/services/asyncevents.spec.js.map +1 -1
  57. package/lib/services/authentication.d.ts +33 -14
  58. package/lib/services/authentication.js +24 -36
  59. package/lib/services/authentication.js.map +1 -1
  60. package/lib/services/authentication.spec.js +16 -16
  61. package/lib/services/authentication.spec.js.map +1 -1
  62. package/lib/services/binary.d.ts +3 -3
  63. package/lib/services/binary.js +24 -17
  64. package/lib/services/binary.js.map +1 -1
  65. package/lib/services/binary.spec.d.ts +1 -1
  66. package/lib/services/binary.spec.js +5 -5
  67. package/lib/services/binary.spec.js.map +1 -1
  68. package/lib/services/cloudbinary.d.ts +2 -2
  69. package/lib/services/cloudbinary.js +3 -3
  70. package/lib/services/cloudbinary.js.map +1 -1
  71. package/lib/services/cloudbinary.spec.js +8 -1
  72. package/lib/services/cloudbinary.spec.js.map +1 -1
  73. package/lib/services/configuration.d.ts +5 -2
  74. package/lib/services/configuration.js +4 -2
  75. package/lib/services/configuration.js.map +1 -1
  76. package/lib/services/configuration.spec.js +2 -2
  77. package/lib/services/configuration.spec.js.map +1 -1
  78. package/lib/services/cron.d.ts +1 -1
  79. package/lib/services/cron.js +1 -1
  80. package/lib/services/cron.js.map +1 -1
  81. package/lib/services/cron.spec.js +3 -3
  82. package/lib/services/cron.spec.js.map +1 -1
  83. package/lib/services/cryptoservice.d.ts +253 -0
  84. package/lib/services/cryptoservice.js +346 -0
  85. package/lib/services/cryptoservice.js.map +1 -0
  86. package/lib/services/cryptoservice.spec.d.ts +1 -0
  87. package/lib/services/cryptoservice.spec.js +164 -0
  88. package/lib/services/cryptoservice.spec.js.map +1 -0
  89. package/lib/services/debugmailer.spec.js +1 -1
  90. package/lib/services/debugmailer.spec.js.map +1 -1
  91. package/lib/services/echo.d.ts +1 -1
  92. package/lib/services/echo.spec.js +3 -3
  93. package/lib/services/echo.spec.js.map +1 -1
  94. package/lib/services/filebinary.d.ts +16 -6
  95. package/lib/services/filebinary.js +45 -22
  96. package/lib/services/filebinary.js.map +1 -1
  97. package/lib/services/filebinary.spec.js +7 -11
  98. package/lib/services/filebinary.spec.js.map +1 -1
  99. package/lib/services/fileconfiguration.d.ts +1 -1
  100. package/lib/services/fileconfiguration.js +3 -2
  101. package/lib/services/fileconfiguration.js.map +1 -1
  102. package/lib/services/fileconfiguration.spec.js +2 -2
  103. package/lib/services/fileconfiguration.spec.js.map +1 -1
  104. package/lib/services/invitationservice.d.ts +28 -6
  105. package/lib/services/invitationservice.js +8 -5
  106. package/lib/services/invitationservice.js.map +1 -1
  107. package/lib/services/invitationservice.spec.js +4 -4
  108. package/lib/services/invitationservice.spec.js.map +1 -1
  109. package/lib/services/kubernetesconfiguration.d.ts +1 -1
  110. package/lib/services/kubernetesconfiguration.js +3 -2
  111. package/lib/services/kubernetesconfiguration.js.map +1 -1
  112. package/lib/services/kubernetesconfiguration.spec.js +4 -4
  113. package/lib/services/kubernetesconfiguration.spec.js.map +1 -1
  114. package/lib/services/mailer.js.map +1 -1
  115. package/lib/services/mailer.spec.js +3 -3
  116. package/lib/services/mailer.spec.js.map +1 -1
  117. package/lib/services/notificationservice.d.ts +1 -1
  118. package/lib/services/notificationservice.js +2 -0
  119. package/lib/services/notificationservice.js.map +1 -1
  120. package/lib/services/notificationservice.spec.js +2 -2
  121. package/lib/services/notificationservice.spec.js.map +1 -1
  122. package/lib/services/oauth.d.ts +30 -4
  123. package/lib/services/oauth.js +19 -10
  124. package/lib/services/oauth.js.map +1 -1
  125. package/lib/services/oauth.spec.js +30 -23
  126. package/lib/services/oauth.spec.js.map +1 -1
  127. package/lib/services/proxy.d.ts +78 -0
  128. package/lib/services/proxy.js +139 -0
  129. package/lib/services/proxy.js.map +1 -0
  130. package/lib/services/proxy.spec.d.ts +1 -0
  131. package/lib/services/proxy.spec.js +78 -0
  132. package/lib/services/proxy.spec.js.map +1 -0
  133. package/lib/services/resource.d.ts +17 -0
  134. package/lib/services/resource.js +20 -6
  135. package/lib/services/resource.js.map +1 -1
  136. package/lib/services/resource.spec.js +4 -3
  137. package/lib/services/resource.spec.js.map +1 -1
  138. package/lib/services/service.d.ts +10 -7
  139. package/lib/services/service.js +7 -3
  140. package/lib/services/service.js.map +1 -1
  141. package/lib/services/service.spec.js +2 -2
  142. package/lib/services/service.spec.js.map +1 -1
  143. package/lib/services/version.d.ts +1 -1
  144. package/lib/services/version.spec.js +1 -1
  145. package/lib/services/version.spec.js.map +1 -1
  146. package/lib/stores/aggregator.d.ts +1 -1
  147. package/lib/stores/aggregator.js +1 -0
  148. package/lib/stores/aggregator.js.map +1 -1
  149. package/lib/stores/file.d.ts +9 -1
  150. package/lib/stores/file.js +7 -4
  151. package/lib/stores/file.js.map +1 -1
  152. package/lib/stores/file.spec.d.ts +3 -1
  153. package/lib/stores/file.spec.js +30 -7
  154. package/lib/stores/file.spec.js.map +1 -1
  155. package/lib/stores/mapper.d.ts +1 -1
  156. package/lib/stores/mapper.js +2 -0
  157. package/lib/stores/mapper.js.map +1 -1
  158. package/lib/stores/mapper.spec.js +1 -1
  159. package/lib/stores/mapper.spec.js.map +1 -1
  160. package/lib/stores/memory.d.ts +65 -4
  161. package/lib/stores/memory.js +85 -1
  162. package/lib/stores/memory.js.map +1 -1
  163. package/lib/stores/memory.spec.d.ts +2 -1
  164. package/lib/stores/memory.spec.js +47 -4
  165. package/lib/stores/memory.spec.js.map +1 -1
  166. package/lib/stores/store.d.ts +27 -5
  167. package/lib/stores/store.js +107 -22
  168. package/lib/stores/store.js.map +1 -1
  169. package/lib/stores/store.spec.d.ts +4 -3
  170. package/lib/stores/store.spec.js +37 -14
  171. package/lib/stores/store.spec.js.map +1 -1
  172. package/lib/stores/webdaql/WebdaQLLexer.js +2 -2
  173. package/lib/stores/webdaql/WebdaQLLexer.js.map +1 -1
  174. package/lib/stores/webdaql/WebdaQLParserLexer.js +2 -2
  175. package/lib/stores/webdaql/WebdaQLParserLexer.js.map +1 -1
  176. package/lib/stores/webdaql/WebdaQLParserListener.d.ts +1 -25
  177. package/lib/stores/webdaql/WebdaQLParserParser.d.ts +1 -1
  178. package/lib/stores/webdaql/WebdaQLParserParser.js +2 -2
  179. package/lib/stores/webdaql/WebdaQLParserParser.js.map +1 -1
  180. package/lib/stores/webdaql/WebdaQLParserVisitor.d.ts +1 -25
  181. package/lib/stores/webdaql/query.d.ts +3 -3
  182. package/lib/stores/webdaql/query.js +4 -4
  183. package/lib/stores/webdaql/query.js.map +1 -1
  184. package/lib/stores/webdaql/query.spec.js +1 -1
  185. package/lib/stores/webdaql/query.spec.js.map +1 -1
  186. package/lib/test.d.ts +6 -8
  187. package/lib/test.js +12 -18
  188. package/lib/test.js.map +1 -1
  189. package/lib/unpackedapplication.js +24 -7
  190. package/lib/unpackedapplication.js.map +1 -1
  191. package/lib/utils/abstractdeployer.spec.js +1 -1
  192. package/lib/utils/abstractdeployer.spec.js.map +1 -1
  193. package/lib/utils/context.d.ts +61 -73
  194. package/lib/utils/context.js +81 -159
  195. package/lib/utils/context.js.map +1 -1
  196. package/lib/utils/context.spec.js +79 -40
  197. package/lib/utils/context.spec.js.map +1 -1
  198. package/lib/utils/cookie.d.ts +65 -44
  199. package/lib/utils/cookie.js +75 -145
  200. package/lib/utils/cookie.js.map +1 -1
  201. package/lib/utils/cookie.spec.js +203 -199
  202. package/lib/utils/cookie.spec.js.map +1 -1
  203. package/lib/utils/httpcontext.d.ts +182 -0
  204. package/lib/utils/httpcontext.js +325 -0
  205. package/lib/utils/httpcontext.js.map +1 -0
  206. package/lib/utils/httpcontext.spec.d.ts +5 -0
  207. package/lib/utils/httpcontext.spec.js +90 -0
  208. package/lib/utils/httpcontext.spec.js.map +1 -0
  209. package/lib/utils/logger.d.ts +2 -2
  210. package/lib/utils/logger.js +1 -1
  211. package/lib/utils/logger.js.map +1 -1
  212. package/lib/utils/logger.spec.js.map +1 -1
  213. package/lib/utils/serializers.js +1 -1
  214. package/lib/utils/serializers.js.map +1 -1
  215. package/lib/utils/serializers.spec.js +3 -3
  216. package/lib/utils/serializers.spec.js.map +1 -1
  217. package/lib/utils/session.d.ts +120 -0
  218. package/lib/utils/session.js +177 -0
  219. package/lib/utils/session.js.map +1 -0
  220. package/lib/utils/session.spec.d.ts +1 -0
  221. package/lib/utils/session.spec.js +79 -0
  222. package/lib/utils/session.spec.js.map +1 -0
  223. package/lib/utils/waiter.js.map +1 -1
  224. package/lib/utils/waiter.spec.js +2 -2
  225. package/lib/utils/waiter.spec.js.map +1 -1
  226. package/package.json +10 -7
  227. package/test/config.json +4 -2
  228. package/test/models/task.js +0 -1
  229. package/webda.module.json +3 -2
@@ -1,21 +1,82 @@
1
1
  import { CoreModel } from "../models/coremodel";
2
- import { WebdaQL } from "./webdaql/query";
3
2
  import { Store, StoreFindResult, StoreParameters } from "./store";
3
+ import { WebdaQL } from "./webdaql/query";
4
4
  interface StorageMap {
5
5
  [key: string]: any;
6
6
  }
7
+ /**
8
+ * Memory store
9
+ */
10
+ declare class MemoryStoreParameters extends StoreParameters {
11
+ /**
12
+ * Persist the data in a file
13
+ */
14
+ persistence?: {
15
+ /**
16
+ * File path to save to
17
+ */
18
+ path: string;
19
+ /**
20
+ * Encryption key for AES encryption
21
+ */
22
+ key?: string;
23
+ /**
24
+ * By default only save once every 1s if modified
25
+ *
26
+ * @default 1000
27
+ */
28
+ delay?: number;
29
+ /**
30
+ * cipher to use
31
+ */
32
+ cipher?: string;
33
+ };
34
+ constructor(params: any, service: MemoryStore);
35
+ }
7
36
  /**
8
37
  * Store in Memory
9
38
  *
10
39
  * @category CoreServices
11
40
  * @WebdaModda
12
41
  */
13
- declare class MemoryStore<T extends CoreModel, K extends StoreParameters = StoreParameters> extends Store<T, K> {
42
+ declare class MemoryStore<T extends CoreModel = CoreModel, K extends MemoryStoreParameters = MemoryStoreParameters> extends Store<T, K> {
43
+ /**
44
+ * Inmemory storage
45
+ */
14
46
  storage: StorageMap;
47
+ /**
48
+ * Persistence timeout id
49
+ */
50
+ private persistenceTimeout;
51
+ /**
52
+ * AES encryption key
53
+ */
54
+ private key;
55
+ /**
56
+ * Persist inmemory storage to file
57
+ *
58
+ * Called every this.parameters.persistence.delay ms
59
+ */
60
+ persist(): void;
61
+ /**
62
+ * Encrypt data with provided key
63
+ * @returns
64
+ */
65
+ encrypt(): string;
66
+ /**
67
+ * Decrypt data with provided key
68
+ * @param data
69
+ * @returns
70
+ */
71
+ decrypt(data: string): string;
72
+ /**
73
+ * @override
74
+ */
75
+ loadParameters(params: any): MemoryStoreParameters;
15
76
  /**
16
77
  * @override
17
78
  */
18
- init(): Promise<void>;
79
+ init(): Promise<this>;
19
80
  /**
20
81
  * @override
21
82
  */
@@ -43,7 +104,7 @@ declare class MemoryStore<T extends CoreModel, K extends StoreParameters = Store
43
104
  /**
44
105
  * @override
45
106
  */
46
- getAll(uids: any): Promise<any>;
107
+ getAll(uids?: string[]): Promise<any>;
47
108
  /**
48
109
  * Retrieve the object as model
49
110
  *
@@ -10,7 +10,23 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.Plop = exports.MemoryStore = void 0;
13
+ const crypto = require("crypto");
14
+ const fs_1 = require("fs");
13
15
  const store_1 = require("./store");
16
+ /**
17
+ * Memory store
18
+ */
19
+ class MemoryStoreParameters extends store_1.StoreParameters {
20
+ constructor(params, service) {
21
+ var _a, _b;
22
+ var _c, _d;
23
+ super(params, service);
24
+ if (this.persistence) {
25
+ (_a = (_c = this.persistence).delay) !== null && _a !== void 0 ? _a : (_c.delay = 1000);
26
+ (_b = (_d = this.persistence).cipher) !== null && _b !== void 0 ? _b : (_d.cipher = "aes-256-ctr");
27
+ }
28
+ }
29
+ }
14
30
  /**
15
31
  * Store in Memory
16
32
  *
@@ -20,8 +36,54 @@ const store_1 = require("./store");
20
36
  class MemoryStore extends store_1.Store {
21
37
  constructor() {
22
38
  super(...arguments);
39
+ /**
40
+ * Inmemory storage
41
+ */
23
42
  this.storage = {};
24
43
  }
44
+ /**
45
+ * Persist inmemory storage to file
46
+ *
47
+ * Called every this.parameters.persistence.delay ms
48
+ */
49
+ persist() {
50
+ (0, fs_1.writeFileSync)(this.parameters.persistence.path, this.encrypt());
51
+ this.persistenceTimeout = null;
52
+ }
53
+ /**
54
+ * Encrypt data with provided key
55
+ * @returns
56
+ */
57
+ encrypt() {
58
+ let data = JSON.stringify(this.storage, undefined, 2);
59
+ if (!this.key) {
60
+ return data;
61
+ }
62
+ // Initialization Vector
63
+ let iv = crypto.randomBytes(16);
64
+ let cipher = crypto.createCipheriv(this.parameters.persistence.cipher, this.key, iv);
65
+ return Buffer.concat([iv, cipher.update(Buffer.from(data)), cipher.final()]).toString("base64");
66
+ }
67
+ /**
68
+ * Decrypt data with provided key
69
+ * @param data
70
+ * @returns
71
+ */
72
+ decrypt(data) {
73
+ if (!this.key) {
74
+ return data;
75
+ }
76
+ let input = Buffer.from(data, "base64");
77
+ let iv = input.slice(0, 16);
78
+ let decipher = crypto.createDecipheriv(this.parameters.persistence.cipher, this.key, iv);
79
+ return decipher.update(input.slice(16)).toString() + decipher.final().toString();
80
+ }
81
+ /**
82
+ * @override
83
+ */
84
+ loadParameters(params) {
85
+ return new MemoryStoreParameters(params, this);
86
+ }
25
87
  /**
26
88
  * @override
27
89
  */
@@ -30,6 +92,28 @@ class MemoryStore extends store_1.Store {
30
92
  init: { get: () => super.init }
31
93
  });
32
94
  return __awaiter(this, void 0, void 0, function* () {
95
+ if (this.parameters.persistence) {
96
+ if (this.parameters.persistence.key) {
97
+ this.key = crypto.createHash("sha256").update(this.parameters.persistence.key).digest();
98
+ }
99
+ try {
100
+ if ((0, fs_1.existsSync)(this.parameters.persistence.path)) {
101
+ this.storage = JSON.parse(this.decrypt((0, fs_1.readFileSync)(this.parameters.persistence.path).toString()));
102
+ }
103
+ }
104
+ catch (err) {
105
+ this.log("INFO", "Cannot loaded persisted memory data", err);
106
+ this.storage = {};
107
+ }
108
+ this.storage = new Proxy(this.storage, {
109
+ set: (target, p, value) => {
110
+ var _a;
111
+ target[p] = value;
112
+ (_a = this.persistenceTimeout) !== null && _a !== void 0 ? _a : (this.persistenceTimeout = setTimeout(() => this.persist(), this.parameters.persistence.delay));
113
+ return true;
114
+ }
115
+ });
116
+ }
33
117
  return _super.init.call(this);
34
118
  });
35
119
  }
@@ -186,7 +270,7 @@ class MemoryStore extends store_1.Store {
186
270
  */
187
271
  _deleteItemFromCollection(uid, prop, index, itemWriteCondition, itemWriteConditionField, updateDate) {
188
272
  return __awaiter(this, void 0, void 0, function* () {
189
- var res = yield this._get(uid, true);
273
+ let res = yield this._get(uid, true);
190
274
  if (itemWriteCondition && res[prop][index][itemWriteConditionField] != itemWriteCondition) {
191
275
  throw new store_1.UpdateConditionFailError(uid, itemWriteConditionField, itemWriteCondition);
192
276
  }
@@ -1 +1 @@
1
- {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/stores/memory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/stores/memory.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { StoreTest } from "./store.spec";
2
1
  import { CoreModel, Store } from "../index";
2
+ import { StoreTest } from "./store.spec";
3
3
  declare class MemoryStoreTest extends StoreTest {
4
4
  getIdentStore(): Store<any>;
5
5
  getUserStore(): Store<any>;
@@ -10,5 +10,6 @@ declare class MemoryStoreTest extends StoreTest {
10
10
  initRoutes(): void;
11
11
  getSync(): void;
12
12
  badActions(): Promise<void>;
13
+ persistence(): Promise<void>;
13
14
  }
14
15
  export { MemoryStoreTest };
@@ -16,11 +16,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
16
16
  };
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.MemoryStoreTest = void 0;
19
- const store_spec_1 = require("./store.spec");
20
- const assert = require("assert");
21
19
  const mocha_1 = require("@testdeck/mocha");
22
- const context_1 = require("../utils/context");
20
+ const assert = require("assert");
21
+ const fs_1 = require("fs");
22
+ const httpcontext_1 = require("../utils/httpcontext");
23
+ const serializers_1 = require("../utils/serializers");
23
24
  const store_1 = require("./store");
25
+ const store_spec_1 = require("./store.spec");
24
26
  const query_1 = require("./webdaql/query");
25
27
  let MemoryStoreTest = class MemoryStoreTest extends store_spec_1.StoreTest {
26
28
  getIdentStore() {
@@ -51,7 +53,7 @@ let MemoryStoreTest = class MemoryStoreTest extends store_spec_1.StoreTest {
51
53
  deleteAsyncHttp() {
52
54
  return __awaiter(this, void 0, void 0, function* () {
53
55
  let executor, ctx;
54
- ctx = yield this.webda.newContext(new context_1.HttpContext("test.webda.io", "GET", "/memory/idents/ToDelete"));
56
+ ctx = yield this.webda.newContext(new httpcontext_1.HttpContext("test.webda.io", "GET", "/memory/idents/ToDelete"));
55
57
  let identStore = this.getIdentStore();
56
58
  yield identStore.save({
57
59
  uuid: "toDelete",
@@ -129,6 +131,44 @@ let MemoryStoreTest = class MemoryStoreTest extends store_spec_1.StoreTest {
129
131
  yield assert.throws(() => identStore.initRoutes(), /Action method _test does not exist/);
130
132
  });
131
133
  }
134
+ persistence() {
135
+ return __awaiter(this, void 0, void 0, function* () {
136
+ // Remove the path if exists
137
+ if ((0, fs_1.existsSync)(".test.json")) {
138
+ (0, fs_1.unlinkSync)(".test.json");
139
+ }
140
+ let identStore = this.getIdentStore();
141
+ identStore.getParameters().persistence = {
142
+ path: ".test.json",
143
+ delay: 10
144
+ };
145
+ yield identStore.init();
146
+ yield identStore.put("test", {});
147
+ yield this.sleep(10);
148
+ // Check basic persistence
149
+ assert.ok((0, fs_1.existsSync)(".test.json"));
150
+ assert.notStrictEqual(serializers_1.JSONUtils.loadFile(".test.json").test, undefined);
151
+ identStore.storage = {};
152
+ // Check basic load of persistence
153
+ yield identStore.init();
154
+ assert.notStrictEqual(identStore.storage.test, undefined);
155
+ // Check encryption
156
+ identStore.getParameters().persistence = {
157
+ path: ".test.json",
158
+ delay: 10,
159
+ key: "test",
160
+ cipher: "aes-256-ctr"
161
+ };
162
+ // Should silently ignore not encrypted file
163
+ yield identStore.init();
164
+ yield identStore.put("test", {});
165
+ yield this.sleep(10);
166
+ identStore.storage = {};
167
+ // Check basic load of persistence
168
+ yield identStore.init();
169
+ assert.notStrictEqual(identStore.storage.test, undefined);
170
+ });
171
+ }
132
172
  };
133
173
  __decorate([
134
174
  mocha_1.test
@@ -145,6 +185,9 @@ __decorate([
145
185
  __decorate([
146
186
  mocha_1.test
147
187
  ], MemoryStoreTest.prototype, "badActions", null);
188
+ __decorate([
189
+ mocha_1.test
190
+ ], MemoryStoreTest.prototype, "persistence", null);
148
191
  MemoryStoreTest = __decorate([
149
192
  mocha_1.suite
150
193
  ], MemoryStoreTest);
@@ -1 +1 @@
1
- {"version":3,"file":"memory.spec.js","sourceRoot":"","sources":["../../src/stores/memory.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory.spec.js","sourceRoot":"","sources":["../../src/stores/memory.spec.ts"],"names":[],"mappings":"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"}
@@ -305,8 +305,10 @@ export declare type ExposeParameters = {
305
305
  /**
306
306
  * For confidentiality sometimes you might prefer to expose query through PUT
307
307
  * To avoid GET logging
308
+ *
309
+ * @default "GET"
308
310
  */
309
- queryMethod: "PUT" | "GET";
311
+ queryMethod?: "PUT" | "GET";
310
312
  };
311
313
  /**
312
314
  * Represent a query result on the Store
@@ -479,7 +481,7 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
479
481
  * @throws Error if model is not found
480
482
  */
481
483
  computeParameters(): void;
482
- logSlowQuery(query: string, reason: string, time: number): void;
484
+ logSlowQuery(_query: string, _reason: string, _time: number): void;
483
485
  /**
484
486
  * Return Store current model
485
487
  * @returns
@@ -512,6 +514,10 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
512
514
  * Get the url where the store is exposed
513
515
  */
514
516
  getUrl(): string;
517
+ /**
518
+ * We should ignore exception from the store
519
+ */
520
+ cacheStorePatchException(): void;
515
521
  /**
516
522
  * Init a model from the current stored data
517
523
  *
@@ -554,7 +560,7 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
554
560
  *
555
561
  * Might want to rename to create
556
562
  */
557
- save(object: any, ctx?: Context): Promise<any>;
563
+ save(object: any, ctx?: Context): Promise<T>;
558
564
  /**
559
565
  * Patch an object
560
566
  *
@@ -562,7 +568,7 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
562
568
  * @param reverseMap
563
569
  * @returns
564
570
  */
565
- patch(object: any, reverseMap?: boolean): Promise<any>;
571
+ patch(object: any, reverseMap?: boolean): Promise<T | undefined>;
566
572
  /**
567
573
  * Check if an UpdateCondition is met
568
574
  * @param model
@@ -579,6 +585,14 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
579
585
  * @param uid
580
586
  */
581
587
  checkCollectionUpdateCondition(model: T, collection: string, conditionField?: string, condition?: any, index?: number): void;
588
+ /**
589
+ * Update conditionally
590
+ * @param uuid
591
+ * @param updates
592
+ * @param conditionField
593
+ * @param condition
594
+ */
595
+ conditionalPatch(uuid: string, updates: any, conditionField: any, condition: any): Promise<boolean>;
582
596
  /**
583
597
  *
584
598
  * @param model
@@ -593,11 +607,13 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
593
607
  /**
594
608
  * Update an object
595
609
  *
610
+ * If no attribute can be updated then return undefined
611
+ *
596
612
  * @param {Object} Object to save
597
613
  * @param {Boolean} reverseMap internal use only, for disable map resolution
598
614
  * @return {Promise} with saved object
599
615
  */
600
- update(object: any, reverseMap?: boolean, partial?: boolean): Promise<any>;
616
+ update(object: any, reverseMap?: boolean, partial?: boolean): Promise<T | undefined>;
601
617
  /**
602
618
  * Remove an attribute from an object
603
619
  *
@@ -643,6 +659,12 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
643
659
  getConfiguration(id: string): Promise<{
644
660
  [key: string]: any;
645
661
  }>;
662
+ /**
663
+ * Alias for save
664
+ * @param uuid
665
+ * @param data
666
+ */
667
+ put(uuid: string, data: any): Promise<T>;
646
668
  /**
647
669
  * Get an object
648
670
  *