@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.
- package/lib/application.d.ts +5 -5
- package/lib/application.js +71 -84
- package/lib/application.js.map +1 -1
- package/lib/application.spec.js +121 -140
- package/lib/application.spec.js.map +1 -1
- package/lib/core.d.ts +20 -24
- package/lib/core.js +222 -315
- package/lib/core.js.map +1 -1
- package/lib/core.spec.js +332 -406
- package/lib/core.spec.js.map +1 -1
- package/lib/index.d.ts +49 -48
- package/lib/index.js +53 -70
- package/lib/index.js.map +1 -1
- package/lib/models/aclmodel.d.ts +2 -2
- package/lib/models/aclmodel.js +63 -90
- package/lib/models/aclmodel.js.map +1 -1
- package/lib/models/aclmodel.spec.js +127 -152
- package/lib/models/aclmodel.spec.js.map +1 -1
- package/lib/models/coremodel.d.ts +7 -6
- package/lib/models/coremodel.js +65 -113
- package/lib/models/coremodel.js.map +1 -1
- package/lib/models/coremodel.spec.js +88 -107
- package/lib/models/coremodel.spec.js.map +1 -1
- package/lib/models/deployment.js +1 -2
- package/lib/models/ident.d.ts +3 -3
- package/lib/models/ident.js +4 -9
- package/lib/models/ident.js.map +1 -1
- package/lib/models/ident.spec.js +9 -11
- package/lib/models/ident.spec.js.map +1 -1
- package/lib/models/ownermodel.d.ts +2 -2
- package/lib/models/ownermodel.js +39 -62
- package/lib/models/ownermodel.js.map +1 -1
- package/lib/models/ownermodel.spec.js +126 -168
- package/lib/models/ownermodel.spec.js.map +1 -1
- package/lib/models/rolemodel.d.ts +1 -1
- package/lib/models/rolemodel.js +24 -40
- package/lib/models/rolemodel.js.map +1 -1
- package/lib/models/rolemodel.spec.js +44 -63
- package/lib/models/rolemodel.spec.js.map +1 -1
- package/lib/models/user.d.ts +3 -3
- package/lib/models/user.js +3 -8
- package/lib/models/user.js.map +1 -1
- package/lib/models/user.spec.js +14 -16
- package/lib/models/user.spec.js.map +1 -1
- package/lib/queues/filequeue.d.ts +2 -2
- package/lib/queues/filequeue.js +72 -93
- package/lib/queues/filequeue.js.map +1 -1
- package/lib/queues/filequeue.spec.js +53 -70
- package/lib/queues/filequeue.spec.js.map +1 -1
- package/lib/queues/memoryqueue.d.ts +2 -2
- package/lib/queues/memoryqueue.js +37 -61
- package/lib/queues/memoryqueue.js.map +1 -1
- package/lib/queues/memoryqueue.spec.js +142 -165
- package/lib/queues/memoryqueue.spec.js.map +1 -1
- package/lib/queues/pubsubservice.d.ts +2 -2
- package/lib/queues/pubsubservice.js +3 -7
- package/lib/queues/pubsubservice.js.map +1 -1
- package/lib/queues/queue.spec.d.ts +1 -1
- package/lib/queues/queue.spec.js +42 -56
- package/lib/queues/queue.spec.js.map +1 -1
- package/lib/queues/queueservice.d.ts +3 -3
- package/lib/queues/queueservice.js +51 -67
- package/lib/queues/queueservice.js.map +1 -1
- package/lib/router.d.ts +3 -3
- package/lib/router.js +46 -47
- package/lib/router.js.map +1 -1
- package/lib/router.spec.js +64 -61
- package/lib/router.spec.js.map +1 -1
- package/lib/services/asyncevents.d.ts +2 -2
- package/lib/services/asyncevents.js +44 -64
- package/lib/services/asyncevents.js.map +1 -1
- package/lib/services/asyncevents.spec.js +81 -98
- package/lib/services/asyncevents.spec.js.map +1 -1
- package/lib/services/authentication.d.ts +23 -13
- package/lib/services/authentication.js +537 -563
- package/lib/services/authentication.js.map +1 -1
- package/lib/services/authentication.spec.js +411 -447
- package/lib/services/authentication.spec.js.map +1 -1
- package/lib/services/binary.d.ts +7 -5
- package/lib/services/binary.js +211 -244
- package/lib/services/binary.js.map +1 -1
- package/lib/services/binary.spec.d.ts +3 -3
- package/lib/services/binary.spec.js +390 -443
- package/lib/services/binary.spec.js.map +1 -1
- package/lib/services/cloudbinary.d.ts +3 -3
- package/lib/services/cloudbinary.js +45 -70
- package/lib/services/cloudbinary.js.map +1 -1
- package/lib/services/cloudbinary.spec.d.ts +3 -3
- package/lib/services/cloudbinary.spec.js +133 -162
- package/lib/services/cloudbinary.spec.js.map +1 -1
- package/lib/services/configuration.d.ts +1 -1
- package/lib/services/configuration.js +78 -105
- package/lib/services/configuration.js.map +1 -1
- package/lib/services/configuration.spec.js +63 -83
- package/lib/services/configuration.spec.js.map +1 -1
- package/lib/services/cron.d.ts +3 -2
- package/lib/services/cron.js +9 -13
- package/lib/services/cron.js.map +1 -1
- package/lib/services/cron.spec.js +18 -21
- package/lib/services/cron.spec.js.map +1 -1
- package/lib/services/cryptoservice.d.ts +9 -4
- package/lib/services/cryptoservice.js +187 -221
- package/lib/services/cryptoservice.js.map +1 -1
- package/lib/services/cryptoservice.spec.js +88 -115
- package/lib/services/cryptoservice.spec.js.map +1 -1
- package/lib/services/debugmailer.d.ts +1 -1
- package/lib/services/debugmailer.js +13 -34
- package/lib/services/debugmailer.js.map +1 -1
- package/lib/services/debugmailer.spec.js +16 -29
- package/lib/services/debugmailer.spec.js.map +1 -1
- package/lib/services/echo.d.ts +2 -2
- package/lib/services/echo.js +15 -31
- package/lib/services/echo.js.map +1 -1
- package/lib/services/echo.spec.js +27 -40
- package/lib/services/echo.spec.js.map +1 -1
- package/lib/services/filebinary.d.ts +5 -5
- package/lib/services/filebinary.js +165 -210
- package/lib/services/filebinary.js.map +1 -1
- package/lib/services/filebinary.spec.d.ts +2 -1
- package/lib/services/filebinary.spec.js +106 -116
- package/lib/services/filebinary.spec.js.map +1 -1
- package/lib/services/fileconfiguration.d.ts +1 -1
- package/lib/services/fileconfiguration.js +25 -44
- package/lib/services/fileconfiguration.js.map +1 -1
- package/lib/services/fileconfiguration.spec.js +79 -109
- package/lib/services/fileconfiguration.spec.js.map +1 -1
- package/lib/services/invitationservice.d.ts +7 -7
- package/lib/services/invitationservice.js +274 -314
- package/lib/services/invitationservice.js.map +1 -1
- package/lib/services/invitationservice.spec.js +442 -448
- package/lib/services/invitationservice.spec.js.map +1 -1
- package/lib/services/kubernetesconfiguration.d.ts +1 -1
- package/lib/services/kubernetesconfiguration.js +41 -60
- package/lib/services/kubernetesconfiguration.js.map +1 -1
- package/lib/services/kubernetesconfiguration.spec.js +80 -98
- package/lib/services/kubernetesconfiguration.spec.js.map +1 -1
- package/lib/services/mailer.d.ts +4 -4
- package/lib/services/mailer.js +62 -86
- package/lib/services/mailer.js.map +1 -1
- package/lib/services/mailer.spec.js +86 -127
- package/lib/services/mailer.spec.js.map +1 -1
- package/lib/services/notificationservice.d.ts +3 -3
- package/lib/services/notificationservice.js +21 -42
- package/lib/services/notificationservice.js.map +1 -1
- package/lib/services/notificationservice.spec.js +47 -73
- package/lib/services/notificationservice.spec.js.map +1 -1
- package/lib/services/oauth.d.ts +4 -4
- package/lib/services/oauth.js +68 -83
- package/lib/services/oauth.js.map +1 -1
- package/lib/services/oauth.spec.js +130 -156
- package/lib/services/oauth.spec.js.map +1 -1
- package/lib/services/proxy.d.ts +2 -6
- package/lib/services/proxy.js +45 -58
- package/lib/services/proxy.js.map +1 -1
- package/lib/services/proxy.spec.js +34 -53
- package/lib/services/proxy.spec.js.map +1 -1
- package/lib/services/resource.d.ts +2 -2
- package/lib/services/resource.js +12 -18
- package/lib/services/resource.js.map +1 -1
- package/lib/services/resource.spec.js +67 -99
- package/lib/services/resource.spec.js.map +1 -1
- package/lib/services/service.d.ts +26 -3
- package/lib/services/service.js +68 -40
- package/lib/services/service.js.map +1 -1
- package/lib/services/service.spec.js +62 -67
- package/lib/services/service.spec.js.map +1 -1
- package/lib/services/version.d.ts +1 -1
- package/lib/services/version.js +3 -8
- package/lib/services/version.js.map +1 -1
- package/lib/services/version.spec.js +11 -24
- package/lib/services/version.spec.js.map +1 -1
- package/lib/stores/aggregator.d.ts +2 -2
- package/lib/stores/aggregator.js +37 -58
- package/lib/stores/aggregator.js.map +1 -1
- package/lib/stores/file.d.ts +3 -3
- package/lib/stores/file.js +93 -131
- package/lib/stores/file.js.map +1 -1
- package/lib/stores/file.spec.d.ts +2 -2
- package/lib/stores/file.spec.js +261 -289
- package/lib/stores/file.spec.js.map +1 -1
- package/lib/stores/mapper.d.ts +3 -3
- package/lib/stores/mapper.js +110 -137
- package/lib/stores/mapper.js.map +1 -1
- package/lib/stores/mapper.spec.js +131 -150
- package/lib/stores/mapper.spec.js.map +1 -1
- package/lib/stores/memory.d.ts +3 -3
- package/lib/stores/memory.js +98 -144
- package/lib/stores/memory.js.map +1 -1
- package/lib/stores/memory.spec.d.ts +2 -2
- package/lib/stores/memory.spec.js +124 -145
- package/lib/stores/memory.spec.js.map +1 -1
- package/lib/stores/store.d.ts +17 -13
- package/lib/stores/store.js +819 -847
- package/lib/stores/store.js.map +1 -1
- package/lib/stores/store.spec.d.ts +5 -4
- package/lib/stores/store.spec.js +624 -669
- package/lib/stores/store.spec.js.map +1 -1
- package/lib/stores/webdaql/WebdaQLLexer.d.ts +4 -4
- package/lib/stores/webdaql/WebdaQLLexer.js +9 -13
- package/lib/stores/webdaql/WebdaQLLexer.js.map +1 -1
- package/lib/stores/webdaql/WebdaQLParserLexer.d.ts +4 -4
- package/lib/stores/webdaql/WebdaQLParserLexer.js +9 -13
- package/lib/stores/webdaql/WebdaQLParserLexer.js.map +1 -1
- package/lib/stores/webdaql/WebdaQLParserListener.d.ts +2 -2
- package/lib/stores/webdaql/WebdaQLParserListener.js +1 -2
- package/lib/stores/webdaql/WebdaQLParserListener.js.map +1 -1
- package/lib/stores/webdaql/WebdaQLParserParser.d.ts +10 -10
- package/lib/stores/webdaql/WebdaQLParserParser.js +62 -91
- package/lib/stores/webdaql/WebdaQLParserParser.js.map +1 -1
- package/lib/stores/webdaql/WebdaQLParserVisitor.d.ts +2 -2
- package/lib/stores/webdaql/WebdaQLParserVisitor.js +1 -2
- package/lib/stores/webdaql/WebdaQLParserVisitor.js.map +1 -1
- package/lib/stores/webdaql/query.d.ts +4 -5
- package/lib/stores/webdaql/query.js +16 -19
- package/lib/stores/webdaql/query.js.map +1 -1
- package/lib/stores/webdaql/query.spec.js +30 -32
- package/lib/stores/webdaql/query.spec.js.map +1 -1
- package/lib/test.d.ts +3 -3
- package/lib/test.js +73 -100
- package/lib/test.js.map +1 -1
- package/lib/unpackedapplication.d.ts +1 -1
- package/lib/unpackedapplication.js +25 -31
- package/lib/unpackedapplication.js.map +1 -1
- package/lib/utils/abstractdeployer.js +1 -5
- package/lib/utils/abstractdeployer.js.map +1 -1
- package/lib/utils/abstractdeployer.spec.js +6 -8
- package/lib/utils/abstractdeployer.spec.js.map +1 -1
- package/lib/utils/context.d.ts +7 -5
- package/lib/utils/context.js +95 -103
- package/lib/utils/context.js.map +1 -1
- package/lib/utils/context.spec.js +139 -163
- package/lib/utils/context.spec.js.map +1 -1
- package/lib/utils/cookie.d.ts +3 -3
- package/lib/utils/cookie.js +42 -61
- package/lib/utils/cookie.js.map +1 -1
- package/lib/utils/cookie.spec.js +42 -64
- package/lib/utils/cookie.spec.js.map +1 -1
- package/lib/utils/esm.d.ts +4 -0
- package/lib/utils/esm.js +10 -0
- package/lib/utils/esm.js.map +1 -0
- package/lib/utils/httpcontext.d.ts +3 -0
- package/lib/utils/httpcontext.js +48 -65
- package/lib/utils/httpcontext.js.map +1 -1
- package/lib/utils/httpcontext.spec.js +37 -56
- package/lib/utils/httpcontext.spec.js.map +1 -1
- package/lib/utils/logger.d.ts +2 -2
- package/lib/utils/logger.js +15 -28
- package/lib/utils/logger.js.map +1 -1
- package/lib/utils/logger.spec.js +9 -11
- package/lib/utils/logger.spec.js.map +1 -1
- package/lib/utils/serializers.js +17 -20
- package/lib/utils/serializers.js.map +1 -1
- package/lib/utils/serializers.spec.js +43 -44
- package/lib/utils/serializers.spec.js.map +1 -1
- package/lib/utils/session.d.ts +6 -6
- package/lib/utils/session.js +37 -59
- package/lib/utils/session.js.map +1 -1
- package/lib/utils/session.spec.js +38 -51
- package/lib/utils/session.spec.js.map +1 -1
- package/lib/utils/waiter.d.ts +1 -1
- package/lib/utils/waiter.js +32 -52
- package/lib/utils/waiter.js.map +1 -1
- package/lib/utils/waiter.spec.js +75 -92
- package/lib/utils/waiter.spec.js.map +1 -1
- package/package.json +17 -12
- package/test/config-invitation.json +1 -3
- package/test/config.json +1 -2
- package/test/config.old.json +1 -2
- package/test/moddas/annotatedservice.js +5 -5
- package/test/moddas/debugmailer.js +2 -3
- package/test/moddas/fakeservice.js +2 -3
- package/test/moddas/voidstore.js +6 -4
- package/test/models/ident.js +2 -6
- package/test/models/task.js +3 -7
- package/test/package.json +2 -1
- package/webda.module.json +956 -189
package/lib/models/coremodel.js
CHANGED
|
@@ -1,33 +1,20 @@
|
|
|
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
|
-
|
|
9
|
-
|
|
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
|
-
exports.CoreModel = exports.NotEnumerable = exports.CoreModelUnattachedError = void 0;
|
|
19
|
-
const uuid_1 = require("uuid");
|
|
20
|
-
const context_1 = require("../utils/context");
|
|
7
|
+
import { v4 as uuidv4 } from "uuid";
|
|
8
|
+
import { Context } from "../utils/context.js";
|
|
21
9
|
/**
|
|
22
10
|
* Sent if action required attached CoreModel is trigger
|
|
23
11
|
*/
|
|
24
|
-
class CoreModelUnattachedError extends Error {
|
|
12
|
+
export class CoreModelUnattachedError extends Error {
|
|
25
13
|
constructor() {
|
|
26
14
|
super("No store linked to this object");
|
|
27
15
|
}
|
|
28
16
|
}
|
|
29
|
-
|
|
30
|
-
function NotEnumerable(target, propertyKey) {
|
|
17
|
+
export function NotEnumerable(target, propertyKey) {
|
|
31
18
|
Object.defineProperty(target, propertyKey, {
|
|
32
19
|
set(value) {
|
|
33
20
|
Object.defineProperty(this, propertyKey, {
|
|
@@ -39,7 +26,6 @@ function NotEnumerable(target, propertyKey) {
|
|
|
39
26
|
configurable: true
|
|
40
27
|
});
|
|
41
28
|
}
|
|
42
|
-
exports.NotEnumerable = NotEnumerable;
|
|
43
29
|
/**
|
|
44
30
|
* Basic Object in Webda
|
|
45
31
|
*
|
|
@@ -92,10 +78,8 @@ class CoreModel {
|
|
|
92
78
|
* By default nothing is permitted on a CoreModel
|
|
93
79
|
* @returns
|
|
94
80
|
*/
|
|
95
|
-
canAct(_ctx, _action) {
|
|
96
|
-
|
|
97
|
-
throw 403;
|
|
98
|
-
});
|
|
81
|
+
async canAct(_ctx, _action) {
|
|
82
|
+
throw 403;
|
|
99
83
|
}
|
|
100
84
|
/**
|
|
101
85
|
* Get the UUID property
|
|
@@ -154,15 +138,13 @@ class CoreModel {
|
|
|
154
138
|
* @param partials
|
|
155
139
|
* @returns
|
|
156
140
|
*/
|
|
157
|
-
static fromFullUuid(core, fullUuid, partials) {
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
return service.get(uuid);
|
|
165
|
-
});
|
|
141
|
+
static async fromFullUuid(core, fullUuid, partials) {
|
|
142
|
+
const [store, uuid] = fullUuid.split("$");
|
|
143
|
+
let service = core.getService(store);
|
|
144
|
+
if (partials) {
|
|
145
|
+
return service.initModel(partials).setUuid(uuid);
|
|
146
|
+
}
|
|
147
|
+
return service.get(uuid);
|
|
166
148
|
}
|
|
167
149
|
/**
|
|
168
150
|
* Load an object from RAW
|
|
@@ -197,7 +179,7 @@ class CoreModel {
|
|
|
197
179
|
* Global object does not belong to a request
|
|
198
180
|
*/
|
|
199
181
|
getContext() {
|
|
200
|
-
return this.__ctx ||
|
|
182
|
+
return this.__ctx || Context.getGlobalContext();
|
|
201
183
|
}
|
|
202
184
|
/**
|
|
203
185
|
* Return the object registered store
|
|
@@ -210,73 +192,59 @@ class CoreModel {
|
|
|
210
192
|
*
|
|
211
193
|
* @throws Error if the object is not coming from a store
|
|
212
194
|
*/
|
|
213
|
-
refresh() {
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
195
|
+
async refresh() {
|
|
196
|
+
if (!this.__store) {
|
|
197
|
+
throw new CoreModelUnattachedError();
|
|
198
|
+
}
|
|
199
|
+
let obj = await this.__store.get(this.getUuid());
|
|
200
|
+
if (obj) {
|
|
201
|
+
for (let i in obj) {
|
|
202
|
+
this[i] = obj[i];
|
|
217
203
|
}
|
|
218
|
-
let
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
this[i] =
|
|
222
|
-
}
|
|
223
|
-
for (let i in this) {
|
|
224
|
-
// @ts-ignore
|
|
225
|
-
if (obj[i] !== this[i]) {
|
|
226
|
-
this[i] = undefined;
|
|
227
|
-
}
|
|
204
|
+
for (let i in this) {
|
|
205
|
+
// @ts-ignore
|
|
206
|
+
if (obj[i] !== this[i]) {
|
|
207
|
+
this[i] = undefined;
|
|
228
208
|
}
|
|
229
209
|
}
|
|
230
|
-
|
|
231
|
-
|
|
210
|
+
}
|
|
211
|
+
return this;
|
|
232
212
|
}
|
|
233
213
|
/**
|
|
234
214
|
* Delete this object
|
|
235
215
|
*
|
|
236
216
|
* @throws Error if the object is not coming from a store
|
|
237
217
|
*/
|
|
238
|
-
delete() {
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
return this.__store.delete(this.getUuid());
|
|
244
|
-
});
|
|
218
|
+
async delete() {
|
|
219
|
+
if (!this.__store) {
|
|
220
|
+
throw new CoreModelUnattachedError();
|
|
221
|
+
}
|
|
222
|
+
return this.__store.delete(this.getUuid());
|
|
245
223
|
}
|
|
246
224
|
/**
|
|
247
225
|
* Save this object
|
|
248
226
|
*
|
|
249
227
|
* @throws Error if the object is not coming from a store
|
|
250
228
|
*/
|
|
251
|
-
save() {
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
for (var i in obj) {
|
|
258
|
-
this[i] = obj[i];
|
|
259
|
-
}
|
|
260
|
-
return this;
|
|
261
|
-
});
|
|
229
|
+
async save() {
|
|
230
|
+
if (!this.__store) {
|
|
231
|
+
throw new CoreModelUnattachedError();
|
|
232
|
+
}
|
|
233
|
+
Object.assign(this, await this.__store.save(this));
|
|
234
|
+
return this;
|
|
262
235
|
}
|
|
263
236
|
/**
|
|
264
237
|
* Update this object
|
|
265
238
|
*
|
|
266
239
|
* @throws Error if the object is not coming from a store
|
|
267
240
|
*/
|
|
268
|
-
update(changes) {
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
for (var i in obj) {
|
|
276
|
-
this[i] = obj[i];
|
|
277
|
-
}
|
|
278
|
-
return this;
|
|
279
|
-
});
|
|
241
|
+
async update(changes) {
|
|
242
|
+
if (!this.__store) {
|
|
243
|
+
throw new CoreModelUnattachedError();
|
|
244
|
+
}
|
|
245
|
+
changes[this.__class.getUuidField()] = this[this.__class.getUuidField()];
|
|
246
|
+
Object.assign(this, await this.__store.patch(changes));
|
|
247
|
+
return this;
|
|
280
248
|
}
|
|
281
249
|
/**
|
|
282
250
|
* Validate objet modification
|
|
@@ -284,11 +252,9 @@ class CoreModel {
|
|
|
284
252
|
* @param ctx
|
|
285
253
|
* @param updates
|
|
286
254
|
*/
|
|
287
|
-
validate(ctx, updates = undefined) {
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
return true;
|
|
291
|
-
});
|
|
255
|
+
async validate(ctx, updates = undefined) {
|
|
256
|
+
ctx.getWebda().validateSchema(this, updates);
|
|
257
|
+
return true;
|
|
292
258
|
}
|
|
293
259
|
/**
|
|
294
260
|
* Generate uuid for the object
|
|
@@ -297,7 +263,7 @@ class CoreModel {
|
|
|
297
263
|
* @returns
|
|
298
264
|
*/
|
|
299
265
|
generateUid(_object = undefined) {
|
|
300
|
-
return (
|
|
266
|
+
return uuidv4().toString();
|
|
301
267
|
}
|
|
302
268
|
/**
|
|
303
269
|
* Remove all the attribute starting with __
|
|
@@ -369,60 +335,46 @@ class CoreModel {
|
|
|
369
335
|
/**
|
|
370
336
|
* Called when object is about to be deleted
|
|
371
337
|
*/
|
|
372
|
-
_onDelete() {
|
|
373
|
-
|
|
374
|
-
// Empty to be overriden
|
|
375
|
-
});
|
|
338
|
+
async _onDelete() {
|
|
339
|
+
// Empty to be overriden
|
|
376
340
|
}
|
|
377
341
|
/**
|
|
378
342
|
* Called when object has been deleted
|
|
379
343
|
*/
|
|
380
|
-
_onDeleted() {
|
|
381
|
-
|
|
382
|
-
// Empty to be overriden
|
|
383
|
-
});
|
|
344
|
+
async _onDeleted() {
|
|
345
|
+
// Empty to be overriden
|
|
384
346
|
}
|
|
385
347
|
/**
|
|
386
348
|
* Called when object is retrieved
|
|
387
349
|
*/
|
|
388
|
-
_onGet() {
|
|
389
|
-
|
|
390
|
-
// Empty to be overriden
|
|
391
|
-
});
|
|
350
|
+
async _onGet() {
|
|
351
|
+
// Empty to be overriden
|
|
392
352
|
}
|
|
393
353
|
/**
|
|
394
354
|
* Called when object is about to be saved
|
|
395
355
|
*/
|
|
396
|
-
_onSave() {
|
|
397
|
-
|
|
398
|
-
// Empty to be overriden
|
|
399
|
-
});
|
|
356
|
+
async _onSave() {
|
|
357
|
+
// Empty to be overriden
|
|
400
358
|
}
|
|
401
359
|
/**
|
|
402
360
|
* Called when object is saved
|
|
403
361
|
*/
|
|
404
|
-
_onSaved() {
|
|
405
|
-
|
|
406
|
-
// Empty to be overriden
|
|
407
|
-
});
|
|
362
|
+
async _onSaved() {
|
|
363
|
+
// Empty to be overriden
|
|
408
364
|
}
|
|
409
365
|
/**
|
|
410
366
|
* Called when object is about to be updates
|
|
411
367
|
*
|
|
412
368
|
* @param updates to be send
|
|
413
369
|
*/
|
|
414
|
-
_onUpdate(_updates) {
|
|
415
|
-
|
|
416
|
-
// Empty to be overriden
|
|
417
|
-
});
|
|
370
|
+
async _onUpdate(_updates) {
|
|
371
|
+
// Empty to be overriden
|
|
418
372
|
}
|
|
419
373
|
/**
|
|
420
374
|
* Called when object is updated
|
|
421
375
|
*/
|
|
422
|
-
_onUpdated() {
|
|
423
|
-
|
|
424
|
-
// Empty to be overriden
|
|
425
|
-
});
|
|
376
|
+
async _onUpdated() {
|
|
377
|
+
// Empty to be overriden
|
|
426
378
|
}
|
|
427
379
|
}
|
|
428
380
|
__decorate([
|
|
@@ -434,5 +386,5 @@ __decorate([
|
|
|
434
386
|
__decorate([
|
|
435
387
|
NotEnumerable
|
|
436
388
|
], CoreModel.prototype, "__store", void 0);
|
|
437
|
-
|
|
389
|
+
export { CoreModel };
|
|
438
390
|
//# sourceMappingURL=coremodel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coremodel.js","sourceRoot":"","sources":["../../src/models/coremodel.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"coremodel.js","sourceRoot":"","sources":["../../src/models/coremodel.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,29 +1,18 @@
|
|
|
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
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
});
|
|
16
|
-
};
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
const mocha_1 = require("@testdeck/mocha");
|
|
19
|
-
const assert = require("assert");
|
|
20
|
-
const sinon = require("sinon");
|
|
21
|
-
const __1 = require("..");
|
|
22
|
-
const test_1 = require("../test");
|
|
23
|
-
const Task = require("../../test/models/task");
|
|
24
|
-
let CoreModelTest = class CoreModelTest extends test_1.WebdaTest {
|
|
7
|
+
import { suite, test } from "@testdeck/mocha";
|
|
8
|
+
import * as assert from "assert";
|
|
9
|
+
import * as sinon from "sinon";
|
|
10
|
+
import { CoreModel } from "...js";
|
|
11
|
+
import { WebdaTest } from "../test.js";
|
|
12
|
+
import { Task } from "../../test/models/task.js";
|
|
13
|
+
let CoreModelTest = class CoreModelTest extends WebdaTest {
|
|
25
14
|
unsecureLoad() {
|
|
26
|
-
let object = new
|
|
15
|
+
let object = new CoreModel();
|
|
27
16
|
object.load({
|
|
28
17
|
_test: "plop",
|
|
29
18
|
test: "plop"
|
|
@@ -32,7 +21,7 @@ let CoreModelTest = class CoreModelTest extends test_1.WebdaTest {
|
|
|
32
21
|
assert.strictEqual(object.test, "plop");
|
|
33
22
|
}
|
|
34
23
|
secureConstructor() {
|
|
35
|
-
let object = new
|
|
24
|
+
let object = new CoreModel();
|
|
36
25
|
object.load({
|
|
37
26
|
_test: "plop",
|
|
38
27
|
test: "plop",
|
|
@@ -65,116 +54,108 @@ let CoreModelTest = class CoreModelTest extends test_1.WebdaTest {
|
|
|
65
54
|
assert.strictEqual(exported.test, "plop");
|
|
66
55
|
assert.strictEqual(exported._gotContext, undefined);
|
|
67
56
|
}
|
|
68
|
-
withContext() {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
assert.strictEqual(result._gotContext, true);
|
|
76
|
-
});
|
|
57
|
+
async withContext() {
|
|
58
|
+
let ctx = await this.newContext();
|
|
59
|
+
let task = new Task();
|
|
60
|
+
task.setContext(ctx);
|
|
61
|
+
ctx.write(task);
|
|
62
|
+
let result = JSON.parse(ctx.getResponseBody());
|
|
63
|
+
assert.strictEqual(result._gotContext, true);
|
|
77
64
|
}
|
|
78
|
-
cov() {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
assert.strictEqual(this.getService("ResourceService"), task.getService("ResourceService"));
|
|
117
|
-
});
|
|
65
|
+
async cov() {
|
|
66
|
+
let task = new Task();
|
|
67
|
+
await assert.rejects(() => new CoreModel().canAct(undefined, "test"), /403/);
|
|
68
|
+
assert.ok(!task.isAttached());
|
|
69
|
+
const unattachedMsg = /No store linked to this object/;
|
|
70
|
+
await assert.rejects(() => task.refresh(), unattachedMsg);
|
|
71
|
+
await assert.rejects(() => task.save(), unattachedMsg);
|
|
72
|
+
await assert.rejects(() => task.delete(), unattachedMsg);
|
|
73
|
+
await assert.rejects(() => task.update({ change: false }), unattachedMsg);
|
|
74
|
+
assert.throws(() => task.getService("ResourceService"), unattachedMsg);
|
|
75
|
+
let store = {
|
|
76
|
+
getService: this.webda.getService.bind(this.webda),
|
|
77
|
+
delete: () => { },
|
|
78
|
+
patch: () => { }
|
|
79
|
+
};
|
|
80
|
+
// @ts-ignore
|
|
81
|
+
task.attach(store);
|
|
82
|
+
assert.ok(task.isAttached());
|
|
83
|
+
assert.strictEqual(task.getStore(), store);
|
|
84
|
+
assert.notStrictEqual(task.generateUid(), undefined);
|
|
85
|
+
let stub = sinon.stub(Task, "getUuidField").callsFake(() => "bouzouf");
|
|
86
|
+
let deleteSpy = sinon.spy(store, "delete");
|
|
87
|
+
let updateSpy = sinon.stub(store, "patch").callsFake(() => ({ plop: "bouzouf" }));
|
|
88
|
+
try {
|
|
89
|
+
task.setUuid("test");
|
|
90
|
+
assert.strictEqual(task.getUuid(), "test");
|
|
91
|
+
assert.strictEqual(task.bouzouf, "test");
|
|
92
|
+
await task.delete();
|
|
93
|
+
assert.strictEqual(deleteSpy.callCount, 1);
|
|
94
|
+
await task.update({ plop: "bouzouf" });
|
|
95
|
+
assert.strictEqual(updateSpy.callCount, 1);
|
|
96
|
+
assert.strictEqual(task.plop, "bouzouf");
|
|
97
|
+
}
|
|
98
|
+
finally {
|
|
99
|
+
stub.restore();
|
|
100
|
+
deleteSpy.restore();
|
|
101
|
+
}
|
|
102
|
+
assert.strictEqual(this.getService("ResourceService"), task.getService("ResourceService"));
|
|
118
103
|
}
|
|
119
|
-
fullUuid() {
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
assert.strictEqual(taskB.test, true);
|
|
133
|
-
});
|
|
104
|
+
async fullUuid() {
|
|
105
|
+
let task = new Task();
|
|
106
|
+
task.setUuid("task#1");
|
|
107
|
+
assert.throws(() => task.getFullUuid(), /Cannot return full uuid of unattached object/);
|
|
108
|
+
let memoryStore = this.getService("MemoryUsers");
|
|
109
|
+
task = await memoryStore.save({ ...task, test: false });
|
|
110
|
+
assert.strictEqual(task.getFullUuid(), "MemoryUsers$task#1");
|
|
111
|
+
let taskB = await this.webda.getModelObject("MemoryUsers$task#1");
|
|
112
|
+
// @ts-ignore
|
|
113
|
+
assert.strictEqual(taskB.test, false);
|
|
114
|
+
taskB = await this.webda.getModelObject(task.getFullUuid(), { test: true });
|
|
115
|
+
// @ts-ignore
|
|
116
|
+
assert.strictEqual(taskB.test, true);
|
|
134
117
|
}
|
|
135
|
-
refresh() {
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
assert.strictEqual(task.plop, "bouzouf");
|
|
147
|
-
});
|
|
118
|
+
async refresh() {
|
|
119
|
+
let task = new Task();
|
|
120
|
+
task.__store = {
|
|
121
|
+
get: () => undefined
|
|
122
|
+
};
|
|
123
|
+
await task.refresh();
|
|
124
|
+
task.__store = {
|
|
125
|
+
get: () => ({ plop: "bouzouf" })
|
|
126
|
+
};
|
|
127
|
+
await task.refresh();
|
|
128
|
+
assert.strictEqual(task.plop, "bouzouf");
|
|
148
129
|
}
|
|
149
130
|
};
|
|
150
131
|
__decorate([
|
|
151
|
-
|
|
132
|
+
test("Verify unsecure loaded")
|
|
152
133
|
], CoreModelTest.prototype, "unsecureLoad", null);
|
|
153
134
|
__decorate([
|
|
154
|
-
|
|
135
|
+
test("Verify secure constructor")
|
|
155
136
|
], CoreModelTest.prototype, "secureConstructor", null);
|
|
156
137
|
__decorate([
|
|
157
|
-
|
|
138
|
+
test("Verify JSON export")
|
|
158
139
|
], CoreModelTest.prototype, "jsonExport", null);
|
|
159
140
|
__decorate([
|
|
160
|
-
|
|
141
|
+
test("Verify JSON stored export")
|
|
161
142
|
], CoreModelTest.prototype, "jsonStoredExport", null);
|
|
162
143
|
__decorate([
|
|
163
|
-
|
|
144
|
+
test("Verify JSON stored export - stringify")
|
|
164
145
|
], CoreModelTest.prototype, "jsonStoredExportStringify", null);
|
|
165
146
|
__decorate([
|
|
166
|
-
|
|
147
|
+
test("Verify Context access within output to server")
|
|
167
148
|
], CoreModelTest.prototype, "withContext", null);
|
|
168
149
|
__decorate([
|
|
169
|
-
|
|
150
|
+
test
|
|
170
151
|
], CoreModelTest.prototype, "cov", null);
|
|
171
152
|
__decorate([
|
|
172
|
-
|
|
153
|
+
test
|
|
173
154
|
], CoreModelTest.prototype, "fullUuid", null);
|
|
174
155
|
__decorate([
|
|
175
|
-
|
|
156
|
+
test
|
|
176
157
|
], CoreModelTest.prototype, "refresh", null);
|
|
177
158
|
CoreModelTest = __decorate([
|
|
178
|
-
|
|
159
|
+
suite
|
|
179
160
|
], CoreModelTest);
|
|
180
161
|
//# sourceMappingURL=coremodel.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coremodel.spec.js","sourceRoot":"","sources":["../../src/models/coremodel.spec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"coremodel.spec.js","sourceRoot":"","sources":["../../src/models/coremodel.spec.ts"],"names":[],"mappings":"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"}
|
package/lib/models/deployment.js
CHANGED
package/lib/models/ident.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ModelLink } from "./coremodel";
|
|
2
|
-
import { OwnerModel } from "./ownermodel";
|
|
3
|
-
import { User } from "./user";
|
|
1
|
+
import { ModelLink } from "./coremodel.js";
|
|
2
|
+
import { OwnerModel } from "./ownermodel.js";
|
|
3
|
+
import { User } from "./user.js";
|
|
4
4
|
export declare class IdentTokens {
|
|
5
5
|
refresh: string;
|
|
6
6
|
access: string;
|