@webda/core 1.6.0-beta.1 → 1.6.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.
- package/lib/application.js +21 -16
- package/lib/application.js.map +1 -1
- package/lib/core.js +1 -2
- package/lib/core.js.map +1 -1
- package/lib/core.spec.js +2 -2
- package/lib/core.spec.js.map +1 -1
- package/lib/index.d.ts +11 -9
- package/lib/index.js +11 -9
- package/lib/index.js.map +1 -1
- package/lib/models/aclmodel.d.ts +26 -7
- package/lib/models/aclmodel.js +65 -17
- package/lib/models/aclmodel.js.map +1 -1
- package/lib/models/aclmodel.spec.js +52 -18
- package/lib/models/aclmodel.spec.js.map +1 -1
- package/lib/models/ident.d.ts +5 -0
- package/lib/models/ident.js +6 -0
- package/lib/models/ident.js.map +1 -1
- package/lib/models/ident.spec.js +3 -0
- package/lib/models/ident.spec.js.map +1 -1
- package/lib/models/ownermodel.js +1 -2
- package/lib/models/ownermodel.js.map +1 -1
- package/lib/models/user.d.ts +29 -1
- package/lib/models/user.js +30 -0
- package/lib/models/user.js.map +1 -1
- package/lib/models/user.spec.js +11 -0
- package/lib/models/user.spec.js.map +1 -1
- package/lib/queues/memoryqueue.spec.js +0 -1
- package/lib/queues/memoryqueue.spec.js.map +1 -1
- package/lib/router.js +1 -1
- package/lib/router.js.map +1 -1
- package/lib/router.spec.js +1 -1
- package/lib/router.spec.js.map +1 -1
- package/lib/services/authentication.d.ts +35 -1
- package/lib/services/authentication.js +52 -4
- package/lib/services/authentication.js.map +1 -1
- package/lib/services/authentication.spec.js +9 -0
- package/lib/services/authentication.spec.js.map +1 -1
- package/lib/services/binary.js +4 -4
- package/lib/services/binary.js.map +1 -1
- package/lib/services/cron.spec.js +2 -2
- package/lib/services/cron.spec.js.map +1 -1
- package/lib/services/debugmailer.d.ts +10 -3
- package/lib/services/debugmailer.js +18 -4
- package/lib/services/debugmailer.js.map +1 -1
- package/lib/services/debugmailer.spec.js +1 -0
- package/lib/services/debugmailer.spec.js.map +1 -1
- package/lib/services/filebinary.spec.js +0 -1
- package/lib/services/filebinary.spec.js.map +1 -1
- package/lib/services/invitationservice.d.ts +196 -0
- package/lib/services/invitationservice.js +441 -0
- package/lib/services/invitationservice.js.map +1 -0
- package/lib/services/invitationservice.spec.d.ts +1 -0
- package/lib/services/invitationservice.spec.js +516 -0
- package/lib/services/invitationservice.spec.js.map +1 -0
- package/lib/services/mailer.d.ts +43 -2
- package/lib/services/mailer.js +33 -4
- package/lib/services/mailer.js.map +1 -1
- package/lib/services/mailer.spec.js +29 -0
- package/lib/services/mailer.spec.js.map +1 -1
- package/lib/services/notificationservice.d.ts +74 -0
- package/lib/services/notificationservice.js +89 -0
- package/lib/services/notificationservice.js.map +1 -0
- package/lib/services/notificationservice.spec.d.ts +1 -0
- package/lib/services/notificationservice.spec.js +104 -0
- package/lib/services/notificationservice.spec.js.map +1 -0
- package/lib/services/oauth.spec.js +7 -10
- package/lib/services/oauth.spec.js.map +1 -1
- package/lib/services/service.d.ts +10 -4
- package/lib/services/service.js.map +1 -1
- package/lib/services/service.spec.js +3 -0
- package/lib/services/service.spec.js.map +1 -1
- package/lib/stores/file.spec.js +5 -4
- package/lib/stores/file.spec.js.map +1 -1
- package/lib/stores/mapper.js +52 -26
- package/lib/stores/mapper.js.map +1 -1
- package/lib/stores/mapper.spec.js +119 -0
- package/lib/stores/mapper.spec.js.map +1 -1
- package/lib/stores/store.js +12 -10
- package/lib/stores/store.js.map +1 -1
- package/lib/test.d.ts +2 -1
- package/lib/test.js +21 -3
- package/lib/test.js.map +1 -1
- package/lib/utils/context.d.ts +2 -1
- package/lib/utils/context.js +7 -3
- package/lib/utils/context.js.map +1 -1
- package/lib/utils/context.spec.js +1 -1
- package/lib/utils/context.spec.js.map +1 -1
- package/lib/utils/cookie.js +17 -19
- package/lib/utils/cookie.js.map +1 -1
- package/lib/utils/cookie.spec.js +0 -1
- package/lib/utils/cookie.spec.js.map +1 -1
- package/package.json +3 -3
- package/test/config-invitation.json +63 -0
package/lib/models/aclmodel.js
CHANGED
|
@@ -10,24 +10,24 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.AclModel = void 0;
|
|
13
|
-
const
|
|
13
|
+
const coremodel_1 = require("./coremodel");
|
|
14
14
|
/**
|
|
15
15
|
* Object that contains ACL to define its own permissions
|
|
16
16
|
*/
|
|
17
|
-
class AclModel extends
|
|
17
|
+
class AclModel extends coremodel_1.CoreModel {
|
|
18
18
|
constructor() {
|
|
19
19
|
super(...arguments);
|
|
20
20
|
/**
|
|
21
21
|
* Permissions on the object
|
|
22
22
|
*/
|
|
23
|
-
this.
|
|
23
|
+
this.__acl = {};
|
|
24
24
|
}
|
|
25
25
|
/**
|
|
26
26
|
* Add acls actions
|
|
27
27
|
* @returns
|
|
28
28
|
*/
|
|
29
29
|
static getActions() {
|
|
30
|
-
return Object.assign(Object.assign({}, super.getActions()), {
|
|
30
|
+
return Object.assign(Object.assign({}, super.getActions()), { acl: {
|
|
31
31
|
methods: ["PUT", "GET"]
|
|
32
32
|
} });
|
|
33
33
|
}
|
|
@@ -41,8 +41,18 @@ class AclModel extends index_1.CoreModel {
|
|
|
41
41
|
return __awaiter(this, void 0, void 0, function* () {
|
|
42
42
|
yield _super._onSave.call(this);
|
|
43
43
|
this._creator = this.getContext().getCurrentUserId();
|
|
44
|
-
if (this.
|
|
45
|
-
this.
|
|
44
|
+
if (Object.keys(this.__acl).length === 0) {
|
|
45
|
+
this.__acl[this._creator] = "all";
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Add the permissions for current user
|
|
51
|
+
*/
|
|
52
|
+
_onGet() {
|
|
53
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
54
|
+
if (this.getContext()) {
|
|
55
|
+
this._permissions = yield this.getPermissions(this.getContext());
|
|
46
56
|
}
|
|
47
57
|
});
|
|
48
58
|
}
|
|
@@ -50,22 +60,22 @@ class AclModel extends index_1.CoreModel {
|
|
|
50
60
|
* Return object ACLs
|
|
51
61
|
* @returns
|
|
52
62
|
*/
|
|
53
|
-
|
|
54
|
-
return this.
|
|
63
|
+
getAcl() {
|
|
64
|
+
return this.__acl;
|
|
55
65
|
}
|
|
56
66
|
/**
|
|
57
67
|
* Set object ACLs
|
|
58
|
-
* @param
|
|
68
|
+
* @param acl
|
|
59
69
|
*/
|
|
60
|
-
|
|
61
|
-
this.
|
|
70
|
+
setAcl(acl) {
|
|
71
|
+
this.__acl = acl;
|
|
62
72
|
}
|
|
63
73
|
/**
|
|
64
74
|
* Manage the ACL REST api actions
|
|
65
75
|
* @param ctx
|
|
66
76
|
* @returns
|
|
67
77
|
*/
|
|
68
|
-
|
|
78
|
+
_acl(ctx) {
|
|
69
79
|
if (ctx.getHttpContext().getMethod() === "PUT") {
|
|
70
80
|
return this._httpPutAcls(ctx);
|
|
71
81
|
}
|
|
@@ -79,7 +89,16 @@ class AclModel extends index_1.CoreModel {
|
|
|
79
89
|
*/
|
|
80
90
|
_httpGetAcls(ctx) {
|
|
81
91
|
return __awaiter(this, void 0, void 0, function* () {
|
|
82
|
-
ctx.write(
|
|
92
|
+
ctx.write({
|
|
93
|
+
raw: this.__acl,
|
|
94
|
+
resolved: yield Promise.all(Object.keys(this.__acl).map((ace) => __awaiter(this, void 0, void 0, function* () {
|
|
95
|
+
let user = yield this.getService("Users").get(ace);
|
|
96
|
+
return {
|
|
97
|
+
permission: this.__acl[ace],
|
|
98
|
+
actor: user === null || user === void 0 ? void 0 : user.toPublicEntry()
|
|
99
|
+
};
|
|
100
|
+
})))
|
|
101
|
+
});
|
|
83
102
|
});
|
|
84
103
|
}
|
|
85
104
|
/**
|
|
@@ -87,12 +106,19 @@ class AclModel extends index_1.CoreModel {
|
|
|
87
106
|
*/
|
|
88
107
|
_httpPutAcls(ctx) {
|
|
89
108
|
return __awaiter(this, void 0, void 0, function* () {
|
|
90
|
-
|
|
109
|
+
// This looks like a bad request
|
|
110
|
+
if (ctx.getRequestBody().raw) {
|
|
111
|
+
throw 400;
|
|
112
|
+
}
|
|
113
|
+
this.__acl = ctx.getRequestBody();
|
|
91
114
|
yield this.save();
|
|
92
115
|
});
|
|
93
116
|
}
|
|
94
117
|
// Should cache the user role in the session
|
|
95
118
|
getGroups(ctx, user) {
|
|
119
|
+
if (!user) {
|
|
120
|
+
return [];
|
|
121
|
+
}
|
|
96
122
|
let groups = user.getGroups();
|
|
97
123
|
if (!groups) {
|
|
98
124
|
groups = [];
|
|
@@ -101,12 +127,33 @@ class AclModel extends index_1.CoreModel {
|
|
|
101
127
|
groups.push(user.uuid);
|
|
102
128
|
return groups;
|
|
103
129
|
}
|
|
130
|
+
/**
|
|
131
|
+
* Get Permissions for one object
|
|
132
|
+
* @param ctx
|
|
133
|
+
* @param user
|
|
134
|
+
* @returns
|
|
135
|
+
*/
|
|
136
|
+
getPermissions(ctx, user) {
|
|
137
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
138
|
+
if (!user) {
|
|
139
|
+
user = yield ctx.getCurrentUser();
|
|
140
|
+
}
|
|
141
|
+
let permissions = new Set();
|
|
142
|
+
let groups = this.getGroups(ctx, user);
|
|
143
|
+
for (let i in this.__acl) {
|
|
144
|
+
if (groups.indexOf(i) >= 0) {
|
|
145
|
+
this.__acl[i].split(",").forEach(p => permissions.add(p));
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
return [...permissions.values()];
|
|
149
|
+
});
|
|
150
|
+
}
|
|
104
151
|
hasPermission(ctx, user, action) {
|
|
105
152
|
return __awaiter(this, void 0, void 0, function* () {
|
|
106
153
|
let groups = this.getGroups(ctx, user);
|
|
107
|
-
for (let i in this.
|
|
154
|
+
for (let i in this.__acl) {
|
|
108
155
|
if (groups.indexOf(i) >= 0) {
|
|
109
|
-
if (this.
|
|
156
|
+
if (this.__acl[i] === "all" || this.__acl[i].split(",").indexOf(action) >= 0) {
|
|
110
157
|
return true;
|
|
111
158
|
}
|
|
112
159
|
}
|
|
@@ -116,7 +163,7 @@ class AclModel extends index_1.CoreModel {
|
|
|
116
163
|
}
|
|
117
164
|
canAct(ctx, action) {
|
|
118
165
|
return __awaiter(this, void 0, void 0, function* () {
|
|
119
|
-
if (!this.
|
|
166
|
+
if (!this.getAcl() || !ctx.getCurrentUserId()) {
|
|
120
167
|
throw 403;
|
|
121
168
|
}
|
|
122
169
|
let user = yield ctx.getCurrentUser();
|
|
@@ -127,5 +174,6 @@ class AclModel extends index_1.CoreModel {
|
|
|
127
174
|
});
|
|
128
175
|
}
|
|
129
176
|
}
|
|
177
|
+
exports.default = AclModel;
|
|
130
178
|
exports.AclModel = AclModel;
|
|
131
179
|
//# sourceMappingURL=aclmodel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aclmodel.js","sourceRoot":"","sources":["../../src/models/aclmodel.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"aclmodel.js","sourceRoot":"","sources":["../../src/models/aclmodel.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,24 +38,32 @@ let AclPolicyTest = class AclPolicyTest {
|
|
|
38
38
|
get() {
|
|
39
39
|
return __awaiter(this, void 0, void 0, function* () {
|
|
40
40
|
yield assert.rejects(this.model.canAct.bind(this.model, this._ctx, "get"));
|
|
41
|
-
this.model.
|
|
41
|
+
this.model.__acl["gip-123"] = "get";
|
|
42
42
|
assert.strictEqual(yield this.model.canAct(this._ctx, "get"), this.model);
|
|
43
43
|
});
|
|
44
44
|
}
|
|
45
45
|
multipermissions() {
|
|
46
46
|
return __awaiter(this, void 0, void 0, function* () {
|
|
47
47
|
yield assert.rejects(this.model.canAct.bind(this.model, this._ctx, "action"));
|
|
48
|
-
this.model.
|
|
48
|
+
this.model.__acl["gip-123"] = "get,action";
|
|
49
49
|
assert.strictEqual(yield this.model.canAct(this._ctx, "get"), this.model);
|
|
50
50
|
assert.strictEqual(yield this.model.canAct(this._ctx, "action"), this.model);
|
|
51
|
+
assert.deepStrictEqual(yield this.model.getPermissions(this._ctx), ["get", "action"]);
|
|
52
|
+
yield this.model._onGet();
|
|
53
|
+
// @ts-ignore
|
|
54
|
+
assert.deepStrictEqual(this.model._permissions, []);
|
|
55
|
+
this.model.setContext(this._ctx);
|
|
56
|
+
yield this.model._onGet();
|
|
57
|
+
// @ts-ignore
|
|
58
|
+
assert.deepStrictEqual(this.model._permissions, ["get", "action"]);
|
|
51
59
|
});
|
|
52
60
|
}
|
|
53
61
|
multigroups() {
|
|
54
62
|
return __awaiter(this, void 0, void 0, function* () {
|
|
55
63
|
yield assert.rejects(this.model.canAct.bind(this.model, this._ctx, "action"));
|
|
56
|
-
this.model.
|
|
57
|
-
this.model.
|
|
58
|
-
this.model.
|
|
64
|
+
this.model.__acl["gip-124"] = "get,action";
|
|
65
|
+
this.model.__acl["gip-123"] = "get";
|
|
66
|
+
this.model.__acl["gip-122"] = "get,action";
|
|
59
67
|
assert.strictEqual(yield this.model.canAct(this._ctx, "get"), this.model);
|
|
60
68
|
yield assert.rejects(this.model.canAct.bind(this.model, this._ctx, "action"));
|
|
61
69
|
// @ts-ignore
|
|
@@ -66,8 +74,8 @@ let AclPolicyTest = class AclPolicyTest {
|
|
|
66
74
|
userid() {
|
|
67
75
|
return __awaiter(this, void 0, void 0, function* () {
|
|
68
76
|
yield assert.rejects(this.model.canAct.bind(this.model, this._ctx, "action"));
|
|
69
|
-
this.model.
|
|
70
|
-
this.model.
|
|
77
|
+
this.model.__acl["user-uid"] = "get";
|
|
78
|
+
this.model.__acl["gip-122"] = "get,action";
|
|
71
79
|
assert.strictEqual(yield this.model.canAct(this._ctx, "get"), this.model);
|
|
72
80
|
yield assert.rejects(this.model.canAct.bind(this.model, this._ctx, "action"));
|
|
73
81
|
this._ctx.getCurrentUserId = () => {
|
|
@@ -77,16 +85,16 @@ let AclPolicyTest = class AclPolicyTest {
|
|
|
77
85
|
this._ctx.getCurrentUserId = () => {
|
|
78
86
|
return "123";
|
|
79
87
|
};
|
|
80
|
-
this.model.
|
|
88
|
+
this.model.setAcl(undefined);
|
|
81
89
|
yield assert.rejects(this.model.canAct.bind(this.model, this._ctx, "get"), /403/);
|
|
82
90
|
});
|
|
83
91
|
}
|
|
84
92
|
all() {
|
|
85
93
|
return __awaiter(this, void 0, void 0, function* () {
|
|
86
94
|
yield assert.rejects(this.model.canAct.bind(this.model, this._ctx, "action"));
|
|
87
|
-
this.model.
|
|
88
|
-
this.model.
|
|
89
|
-
this.model.
|
|
95
|
+
this.model.__acl["gip-124"] = "get,action";
|
|
96
|
+
this.model.__acl["user-uid"] = "all";
|
|
97
|
+
this.model.__acl["gip-122"] = "get,action";
|
|
90
98
|
assert.strictEqual(yield this.model.canAct(this._ctx, "get"), this.model);
|
|
91
99
|
assert.strictEqual(yield this.model.canAct(this._ctx, "action"), this.model);
|
|
92
100
|
assert.strictEqual(yield this.model.canAct(this._ctx, "delete"), this.model);
|
|
@@ -97,18 +105,44 @@ let AclPolicyTest = class AclPolicyTest {
|
|
|
97
105
|
return __awaiter(this, void 0, void 0, function* () {
|
|
98
106
|
// @ts-ignore
|
|
99
107
|
this.model.__store = {
|
|
100
|
-
save: () => __awaiter(this, void 0, void 0, function* () { return this.model; })
|
|
108
|
+
save: () => __awaiter(this, void 0, void 0, function* () { return this.model; }),
|
|
109
|
+
// @ts-ignore
|
|
110
|
+
getService: () => {
|
|
111
|
+
return {
|
|
112
|
+
get: () => __awaiter(this, void 0, void 0, function* () {
|
|
113
|
+
return {
|
|
114
|
+
toPublicEntry: () => {
|
|
115
|
+
return {
|
|
116
|
+
displayName: "Plopi"
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
})
|
|
121
|
+
};
|
|
122
|
+
}
|
|
101
123
|
};
|
|
102
124
|
let actions = index_1.AclModel.getActions();
|
|
103
|
-
assert.notStrictEqual(actions.
|
|
125
|
+
assert.notStrictEqual(actions.acl, undefined);
|
|
104
126
|
this._ctx.setHttpContext(new index_1.HttpContext("test.webda.io", "PUT", "/", undefined, undefined, { acl: "mine" }));
|
|
105
|
-
yield this.model.
|
|
127
|
+
yield this.model._acl(this._ctx);
|
|
106
128
|
// @ts-ignore
|
|
107
|
-
assert.strictEqual(this.model.
|
|
129
|
+
assert.strictEqual(this.model.getAcl().acl, "mine");
|
|
130
|
+
this._ctx.setHttpContext(new index_1.HttpContext("test.webda.io", "PUT", "/", undefined, undefined, { raw: { acl: "mine" } }));
|
|
131
|
+
yield assert.rejects(() => this.model._acl(this._ctx));
|
|
108
132
|
this._ctx.setHttpContext(new index_1.HttpContext("test.webda.io", "GET", "/", undefined, undefined, { acl: "mine" }));
|
|
109
|
-
yield this.model.
|
|
133
|
+
yield this.model._acl(this._ctx);
|
|
110
134
|
assert.deepStrictEqual(JSON.parse(this._ctx.getResponseBody()), {
|
|
111
|
-
|
|
135
|
+
raw: {
|
|
136
|
+
acl: "mine"
|
|
137
|
+
},
|
|
138
|
+
resolved: [
|
|
139
|
+
{
|
|
140
|
+
actor: {
|
|
141
|
+
displayName: "Plopi"
|
|
142
|
+
},
|
|
143
|
+
permission: "mine"
|
|
144
|
+
}
|
|
145
|
+
]
|
|
112
146
|
});
|
|
113
147
|
});
|
|
114
148
|
}
|
|
@@ -116,7 +150,7 @@ let AclPolicyTest = class AclPolicyTest {
|
|
|
116
150
|
return __awaiter(this, void 0, void 0, function* () {
|
|
117
151
|
this.model.setContext(this._ctx);
|
|
118
152
|
yield this.model._onSave();
|
|
119
|
-
assert.deepStrictEqual(this.model.
|
|
153
|
+
assert.deepStrictEqual(this.model.__acl, { "user-uid": "all" });
|
|
120
154
|
assert.strictEqual(this.model._creator, "user-uid");
|
|
121
155
|
});
|
|
122
156
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aclmodel.spec.js","sourceRoot":"","sources":["../../src/models/aclmodel.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iCAAiC;AACjC,2CAA8C;AAC9C,oCAA4G;AAG5G,IAAM,aAAa,GAAnB,MAAM,aAAa;IAOX,MAAM;;YACV,IAAI,CAAC,MAAM,GAAG,IAAI,YAAI,CAAC,IAAI,mBAAW,CAAC,SAAS,GAAG,yBAAyB,CAAC,CAAC,CAAC;YAC/E,IAAI,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,mBAAW,CAAC,eAAe,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;YACvF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACvC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACxC,IAAI,CAAC,KAAK,GAAG,IAAI,gBAAQ,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,YAAI,EAAE,CAAC;YACxB,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC/B,aAAa;YACb,IAAI,CAAC,IAAI,CAAC,cAAc,GAAG,GAAS,EAAE;gBACpC,OAAO,IAAI,CAAC,KAAK,CAAC;YACpB,CAAC,CAAA,CAAC;QACJ,CAAC;KAAA;IAEW,GAAG;;YACb,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YAC3E,IAAI,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"aclmodel.spec.js","sourceRoot":"","sources":["../../src/models/aclmodel.spec.ts"],"names":[],"mappings":"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"}
|
package/lib/models/ident.d.ts
CHANGED
|
@@ -24,8 +24,13 @@ declare class Ident extends OwnerModel {
|
|
|
24
24
|
* When the ident was validated
|
|
25
25
|
*/
|
|
26
26
|
_validation?: Date;
|
|
27
|
+
/**
|
|
28
|
+
* Email for this ident if it exist
|
|
29
|
+
*/
|
|
30
|
+
email?: string;
|
|
27
31
|
static init(type: string, uid: string, accessToken?: string, refreshToken?: string, profile?: object): Ident;
|
|
28
32
|
getUser(): string;
|
|
33
|
+
getEmail(): string;
|
|
29
34
|
setUser(user: any): void;
|
|
30
35
|
getType(): string;
|
|
31
36
|
setType(type: any): void;
|
package/lib/models/ident.js
CHANGED
|
@@ -14,6 +14,9 @@ class Ident extends ownermodel_1.OwnerModel {
|
|
|
14
14
|
var obj = new Ident();
|
|
15
15
|
obj._type = type.toLowerCase();
|
|
16
16
|
obj.uid = uid.toLowerCase();
|
|
17
|
+
if (obj._type === "email") {
|
|
18
|
+
obj.email = obj.uid;
|
|
19
|
+
}
|
|
17
20
|
obj.uuid = obj.uid + "_" + obj._type;
|
|
18
21
|
obj.__profile = profile;
|
|
19
22
|
obj.__tokens = new IdentTokens();
|
|
@@ -24,6 +27,9 @@ class Ident extends ownermodel_1.OwnerModel {
|
|
|
24
27
|
getUser() {
|
|
25
28
|
return this._user;
|
|
26
29
|
}
|
|
30
|
+
getEmail() {
|
|
31
|
+
return this.email;
|
|
32
|
+
}
|
|
27
33
|
setUser(user) {
|
|
28
34
|
this._user = user;
|
|
29
35
|
}
|
package/lib/models/ident.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ident.js","sourceRoot":"","sources":["../../src/models/ident.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AACb,6CAA0C;AAE1C,MAAM,WAAW;CAGhB;
|
|
1
|
+
{"version":3,"file":"ident.js","sourceRoot":"","sources":["../../src/models/ident.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AACb,6CAA0C;AAE1C,MAAM,WAAW;CAGhB;AAqEe,kCAAW;AApE3B;;;GAGG;AACH,MAAM,KAAM,SAAQ,uBAAU;IAsB5B,MAAM,CAAC,IAAI,CACT,IAAY,EACZ,GAAW,EACX,cAAsB,EAAE,EACxB,eAAuB,EAAE,EACzB,UAAkB,EAAE;QAEpB,IAAI,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;QACtB,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC/B,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAC5B,IAAI,GAAG,CAAC,KAAK,KAAK,OAAO,EAAE;YACzB,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC;SACrB;QACD,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC;QACrC,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC;QACxB,GAAG,CAAC,QAAQ,GAAG,IAAI,WAAW,EAAE,CAAC;QACjC,GAAG,CAAC,QAAQ,CAAC,OAAO,GAAG,YAAY,CAAC;QACpC,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAC;QAClC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,OAAO,CAAC,IAAI;QACV,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,OAAO,CAAC,IAAI;QACV,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;CACF;AAEQ,sBAAK"}
|
package/lib/models/ident.spec.js
CHANGED
|
@@ -28,6 +28,9 @@ let IdentTest = class IdentTest {
|
|
|
28
28
|
assert.deepStrictEqual(ident.__profile, {});
|
|
29
29
|
assert.strictEqual(ident.__tokens.access, "");
|
|
30
30
|
assert.strictEqual(ident.__tokens.refresh, "");
|
|
31
|
+
assert.strictEqual(ident.getEmail(), undefined);
|
|
32
|
+
ident.email = "test@test.com";
|
|
33
|
+
assert.strictEqual(ident.getEmail(), "test@test.com");
|
|
31
34
|
}
|
|
32
35
|
};
|
|
33
36
|
__decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ident.spec.js","sourceRoot":"","sources":["../../src/models/ident.spec.ts"],"names":[],"mappings":";;;;;;;;AAAA,iCAAiC;AACjC,2CAA8C;AAC9C,mCAAgC;AAGhC,IAAM,SAAS,GAAf,MAAM,SAAS;IACP,OAAO;QACX,eAAe;QACf,IAAI,IAAI,GAAU,IAAI,aAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;IAC7C,CAAC;IAEK,IAAI;QACR,IAAI,KAAK,GAAG,aAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACjE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACxC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC1C,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/C,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAChD,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACjD,KAAK,GAAG,aAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACjC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC5C,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9C,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ident.spec.js","sourceRoot":"","sources":["../../src/models/ident.spec.ts"],"names":[],"mappings":";;;;;;;;AAAA,iCAAiC;AACjC,2CAA8C;AAC9C,mCAAgC;AAGhC,IAAM,SAAS,GAAf,MAAM,SAAS;IACP,OAAO;QACX,eAAe;QACf,IAAI,IAAI,GAAU,IAAI,aAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;IAC7C,CAAC;IAEK,IAAI;QACR,IAAI,KAAK,GAAG,aAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACjE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACxC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC1C,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/C,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAChD,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACjD,KAAK,GAAG,aAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACjC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC5C,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9C,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC/C,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,CAAC,CAAC;QAChD,KAAK,CAAC,KAAK,GAAG,eAAe,CAAC;QAC9B,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,eAAe,CAAC,CAAC;IACxD,CAAC;CACF,CAAA;AAvBO;IAAL,YAAI;wCAKJ;AAEK;IAAL,YAAI;qCAeJ;AAvBG,SAAS;IADd,aAAK;GACA,SAAS,CAwBd"}
|
package/lib/models/ownermodel.js
CHANGED
|
@@ -64,8 +64,7 @@ class OwnerModel extends __1.CoreModel {
|
|
|
64
64
|
canUpdate(ctx) {
|
|
65
65
|
return __awaiter(this, void 0, void 0, function* () {
|
|
66
66
|
// Allow to modify itself by default
|
|
67
|
-
if ((!this.getOwner() || ctx.
|
|
68
|
-
ctx.getSession().getUserId() !== this.uuid) {
|
|
67
|
+
if ((!this.getOwner() || ctx.getCurrentUserId() !== this.getOwner()) && ctx.getCurrentUserId() !== this.uuid) {
|
|
69
68
|
throw 403;
|
|
70
69
|
}
|
|
71
70
|
return this;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ownermodel.js","sourceRoot":"","sources":["../../src/models/ownermodel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2BAAyC;AAEzC,MAAqB,UAAW,SAAQ,aAAS;IAe/C;;OAEG;IACG,SAAS,CAAC,GAAY;;YAC1B,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,GAAG,CAAC;aACX;YACD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAEtB,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAED;;;OAGG;IACH,QAAQ,CAAC,IAAY;QACnB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED;;;;;OAKG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAEK,MAAM,CACV,GAAY,EACZ,MAA0G;;YAE1G,IAAI,MAAM,KAAK,QAAQ,EAAE;gBACvB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;aAC5B;iBAAM,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,eAAe,IAAI,MAAM,KAAK,eAAe,EAAE;gBAC1F,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;aAC5B;iBAAM,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,YAAY,EAAE;gBACtD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aACzB;iBAAM,IAAI,MAAM,KAAK,QAAQ,EAAE;gBAC9B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;aAC5B;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;KAAA;IAED;;OAEG;IACG,SAAS,CAAC,GAAY;;YAC1B,oCAAoC;YACpC,
|
|
1
|
+
{"version":3,"file":"ownermodel.js","sourceRoot":"","sources":["../../src/models/ownermodel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2BAAyC;AAEzC,MAAqB,UAAW,SAAQ,aAAS;IAe/C;;OAEG;IACG,SAAS,CAAC,GAAY;;YAC1B,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,GAAG,CAAC;aACX;YACD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAEtB,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAED;;;OAGG;IACH,QAAQ,CAAC,IAAY;QACnB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED;;;;;OAKG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAEK,MAAM,CACV,GAAY,EACZ,MAA0G;;YAE1G,IAAI,MAAM,KAAK,QAAQ,EAAE;gBACvB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;aAC5B;iBAAM,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,eAAe,IAAI,MAAM,KAAK,eAAe,EAAE;gBAC1F,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;aAC5B;iBAAM,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,YAAY,EAAE;gBACtD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aACzB;iBAAM,IAAI,MAAM,KAAK,QAAQ,EAAE;gBAC9B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;aAC5B;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;KAAA;IAED;;OAEG;IACG,SAAS,CAAC,GAAY;;YAC1B,oCAAoC;YACpC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,GAAG,CAAC,gBAAgB,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,GAAG,CAAC,gBAAgB,EAAE,KAAK,IAAI,CAAC,IAAI,EAAE;gBAC5G,MAAM,GAAG,CAAC;aACX;YACD,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAED;;OAEG;IACG,MAAM,CAAC,GAAY;;YACvB,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,OAAO,IAAI,CAAC;aACb;YACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;KAAA;IAED;;OAEG;IACG,SAAS,CAAC,GAAY;;YAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;KAAA;CACF;AAzFD,6BAyFC;AAEQ,gCAAU"}
|
package/lib/models/user.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { PartialModel } from "../services/service";
|
|
1
2
|
import { Ident } from "./ident";
|
|
2
3
|
import { OwnerModel } from "./ownermodel";
|
|
3
4
|
/**
|
|
@@ -9,6 +10,10 @@ declare class User extends OwnerModel {
|
|
|
9
10
|
* Password of the user if defined
|
|
10
11
|
*/
|
|
11
12
|
private __password?;
|
|
13
|
+
/**
|
|
14
|
+
* Display name for this user
|
|
15
|
+
*/
|
|
16
|
+
protected displayName: string;
|
|
12
17
|
/**
|
|
13
18
|
* Last time the password was recovered
|
|
14
19
|
*/
|
|
@@ -25,9 +30,32 @@ declare class User extends OwnerModel {
|
|
|
25
30
|
* Idents used by the user
|
|
26
31
|
*/
|
|
27
32
|
private _idents;
|
|
33
|
+
/**
|
|
34
|
+
* Define the user avatar if exists
|
|
35
|
+
*/
|
|
36
|
+
private avatar?;
|
|
37
|
+
/**
|
|
38
|
+
* Contains the locale of the user if known
|
|
39
|
+
*/
|
|
40
|
+
locale?: string;
|
|
41
|
+
/**
|
|
42
|
+
* Contain main user email if exists
|
|
43
|
+
*/
|
|
44
|
+
email?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Return user email if known or guessable
|
|
47
|
+
* @returns
|
|
48
|
+
*/
|
|
49
|
+
getEmail(): string | null;
|
|
50
|
+
/**
|
|
51
|
+
* Return displayable public entry
|
|
52
|
+
* @returns
|
|
53
|
+
*/
|
|
54
|
+
toPublicEntry(): any;
|
|
28
55
|
getGroups(): string[];
|
|
29
56
|
getRoles(): string[];
|
|
30
|
-
|
|
57
|
+
getDisplayName(): string;
|
|
58
|
+
getIdents(): PartialModel<Ident>[];
|
|
31
59
|
addRole(role: string): void;
|
|
32
60
|
hasRole(role: string): boolean;
|
|
33
61
|
removeRole(role: string): void;
|
package/lib/models/user.js
CHANGED
|
@@ -26,12 +26,42 @@ class User extends ownermodel_1.OwnerModel {
|
|
|
26
26
|
*/
|
|
27
27
|
this._idents = [];
|
|
28
28
|
}
|
|
29
|
+
/**
|
|
30
|
+
* Return user email if known or guessable
|
|
31
|
+
* @returns
|
|
32
|
+
*/
|
|
33
|
+
getEmail() {
|
|
34
|
+
var _a;
|
|
35
|
+
if (this.email === undefined) {
|
|
36
|
+
(this._idents || []).some(i => {
|
|
37
|
+
if (i.email) {
|
|
38
|
+
this.email = i.email;
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
(_a = this.email) !== null && _a !== void 0 ? _a : (this.email = null);
|
|
42
|
+
}
|
|
43
|
+
return this.email;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Return displayable public entry
|
|
47
|
+
* @returns
|
|
48
|
+
*/
|
|
49
|
+
toPublicEntry() {
|
|
50
|
+
return {
|
|
51
|
+
displayName: this.displayName,
|
|
52
|
+
uuid: this.getUuid(),
|
|
53
|
+
avatar: this.avatar
|
|
54
|
+
};
|
|
55
|
+
}
|
|
29
56
|
getGroups() {
|
|
30
57
|
return this._groups;
|
|
31
58
|
}
|
|
32
59
|
getRoles() {
|
|
33
60
|
return this._roles;
|
|
34
61
|
}
|
|
62
|
+
getDisplayName() {
|
|
63
|
+
return this.displayName;
|
|
64
|
+
}
|
|
35
65
|
getIdents() {
|
|
36
66
|
return this._idents;
|
|
37
67
|
}
|
package/lib/models/user.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/models/user.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;
|
|
1
|
+
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/models/user.ts"],"names":[],"mappings":"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"}
|
package/lib/models/user.spec.js
CHANGED
|
@@ -39,6 +39,14 @@ let UserTest = class UserTest {
|
|
|
39
39
|
let user = new user_1.User();
|
|
40
40
|
assert.deepStrictEqual(user.getIdents(), []);
|
|
41
41
|
}
|
|
42
|
+
emailGetter() {
|
|
43
|
+
let user = new user_1.User();
|
|
44
|
+
user.load({ _idents: [{}, { email: "testIdent@test.com" }] }, true);
|
|
45
|
+
assert.strictEqual(user.getEmail(), "testIdent@test.com");
|
|
46
|
+
user.load({ email: "test@test.com", displayName: "Top" });
|
|
47
|
+
assert.strictEqual(user.getEmail(), "test@test.com");
|
|
48
|
+
assert.strictEqual(user.getDisplayName(), "Top");
|
|
49
|
+
}
|
|
42
50
|
};
|
|
43
51
|
__decorate([
|
|
44
52
|
(0, mocha_1.test)("Verify groups in user")
|
|
@@ -52,6 +60,9 @@ __decorate([
|
|
|
52
60
|
__decorate([
|
|
53
61
|
mocha_1.test
|
|
54
62
|
], UserTest.prototype, "idents", null);
|
|
63
|
+
__decorate([
|
|
64
|
+
mocha_1.test
|
|
65
|
+
], UserTest.prototype, "emailGetter", null);
|
|
55
66
|
UserTest = __decorate([
|
|
56
67
|
mocha_1.suite
|
|
57
68
|
], UserTest);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.spec.js","sourceRoot":"","sources":["../../src/models/user.spec.ts"],"names":[],"mappings":";;;;;;;;AAAA,iCAAiC;AACjC,2CAA8C;AAC9C,iCAA8B;AAG9B,IAAM,QAAQ,GAAd,MAAM,QAAQ;IACmB,eAAe;QAC5C,IAAI,IAAI,GAAS,IAAI,WAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACzB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;QAChD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IAE6B,cAAc;QAC1C,IAAI,IAAI,GAAS,IAAI,WAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACxB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAGD,QAAQ;QACN,IAAI,IAAI,GAAS,IAAI,WAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IAGD,MAAM;QACJ,IAAI,IAAI,GAAS,IAAI,WAAI,EAAE,CAAC;QAC5B,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;CACF,CAAA;
|
|
1
|
+
{"version":3,"file":"user.spec.js","sourceRoot":"","sources":["../../src/models/user.spec.ts"],"names":[],"mappings":";;;;;;;;AAAA,iCAAiC;AACjC,2CAA8C;AAC9C,iCAA8B;AAG9B,IAAM,QAAQ,GAAd,MAAM,QAAQ;IACmB,eAAe;QAC5C,IAAI,IAAI,GAAS,IAAI,WAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACzB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;QAChD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IAE6B,cAAc;QAC1C,IAAI,IAAI,GAAS,IAAI,WAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACxB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAGD,QAAQ;QACN,IAAI,IAAI,GAAS,IAAI,WAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IAGD,MAAM;QACJ,IAAI,IAAI,GAAS,IAAI,WAAI,EAAE,CAAC;QAC5B,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;IAGD,WAAW;QACT,IAAI,IAAI,GAAS,IAAI,WAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACpE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,oBAAoB,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1D,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,eAAe,CAAC,CAAC;QACrD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;CACF,CAAA;AA5CgC;IAA9B,IAAA,YAAI,EAAC,uBAAuB,CAAC;+CAU7B;AAE6B;IAA7B,IAAA,YAAI,EAAC,sBAAsB,CAAC;8CAS5B;AAGD;IADC,YAAI;wCAIJ;AAGD;IADC,YAAI;sCAIJ;AAGD;IADC,YAAI;2CAQJ;AA5CG,QAAQ;IADb,aAAK;GACA,QAAQ,CA6Cb"}
|
|
@@ -28,7 +28,6 @@ class Title {
|
|
|
28
28
|
let MemoryQueueTest = MemoryQueueTest_1 = class MemoryQueueTest extends queue_spec_1.QueueTest {
|
|
29
29
|
receiveMessage(proto) {
|
|
30
30
|
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
-
console.log("receiveMessage", MemoryQueueTest_1.seq);
|
|
32
31
|
MemoryQueueTest_1.seq++;
|
|
33
32
|
switch (MemoryQueueTest_1.seq) {
|
|
34
33
|
case 1:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memoryqueue.spec.js","sourceRoot":"","sources":["../../src/queues/memoryqueue.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,iCAAiC;AACjC,2CAA8C;AAE9C,+CAA4C;AAC5C,6CAAyC;AAEzC,MAAM,KAAK;IAGT,YAAY,KAAc;QACxB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAED,IAAM,eAAe,uBAArB,MAAM,eAAgB,SAAQ,sBAAS;IAO/B,cAAc,CAAI,KAAqB;;YAC3C,
|
|
1
|
+
{"version":3,"file":"memoryqueue.spec.js","sourceRoot":"","sources":["../../src/queues/memoryqueue.spec.ts"],"names":[],"mappings":"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"}
|
package/lib/router.js
CHANGED
|
@@ -20,7 +20,7 @@ class Router {
|
|
|
20
20
|
*/
|
|
21
21
|
addRoute(url, info) {
|
|
22
22
|
var _a;
|
|
23
|
-
this.webda.log("TRACE", `Add route ${url}`);
|
|
23
|
+
this.webda.log("TRACE", `Add route ${info.methods.join(",")} ${url}`);
|
|
24
24
|
(_a = info.openapi) !== null && _a !== void 0 ? _a : (info.openapi = {});
|
|
25
25
|
if (this.routes[url]) {
|
|
26
26
|
// If route is already added do not do anything
|