@nymphjs/tilmeld 1.0.0-alpha.1 → 1.0.0-alpha.5
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/CHANGELOG.md +26 -0
- package/README.md +15 -10
- package/dist/Group.d.ts +2 -0
- package/dist/Group.js +68 -59
- package/dist/Group.js.map +1 -1
- package/dist/Group.test.js +12 -7
- package/dist/Group.test.js.map +1 -1
- package/dist/Tilmeld.d.ts +26 -22
- package/dist/Tilmeld.js +172 -92
- package/dist/Tilmeld.js.map +1 -1
- package/dist/User.d.ts +2 -0
- package/dist/User.js +134 -122
- package/dist/User.js.map +1 -1
- package/dist/User.test.js +12 -7
- package/dist/User.test.js.map +1 -1
- package/dist/conf/d.d.ts +7 -3
- package/dist/conf/defaults.js +41 -109
- package/dist/conf/defaults.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/tilmeldJoiProps.d.ts +12 -0
- package/dist/tilmeldJoiProps.js +20 -0
- package/dist/tilmeldJoiProps.js.map +1 -0
- package/package.json +6 -6
- package/src/Group.test.ts +18 -7
- package/src/Group.ts +88 -64
- package/src/Tilmeld.ts +284 -116
- package/src/User.test.ts +18 -7
- package/src/User.ts +164 -125
- package/src/conf/d.ts +38 -2
- package/src/conf/defaults.ts +29 -68
- package/src/index.ts +3 -1
- package/src/tilmeldJoiProps.ts +46 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,32 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [1.0.0-alpha.5](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.4...v1.0.0-alpha.5) (2021-09-30)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- provide Joi prop checks for Nymph and Tilmeld as exports ([8180861](https://github.com/sciactive/nymphjs/commit/8180861c6631f7fd25a2d2a3c57924b8f4147cf3))
|
|
11
|
+
|
|
12
|
+
# [1.0.0-alpha.4](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.3...v1.0.0-alpha.4) (2021-09-27)
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
- gate UIDs on Tilmeld with config and abilities ([99a9141](https://github.com/sciactive/nymphjs/commit/99a9141cc92fe3d1ad68d21e42de4e9b5493e4d9))
|
|
17
|
+
- use new instances of nymph for server and pubsub requests ([0c18fab](https://github.com/sciactive/nymphjs/commit/0c18faba2b55fe82c16806d221fc54d2cd42c992))
|
|
18
|
+
|
|
19
|
+
# [1.0.0-alpha.3](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.2...v1.0.0-alpha.3) (2021-09-22)
|
|
20
|
+
|
|
21
|
+
### Features
|
|
22
|
+
|
|
23
|
+
- move to fully instance based design, no more globals ([c036220](https://github.com/sciactive/nymphjs/commit/c0362209b90a475b8b85269a829b0ec6bed4465f))
|
|
24
|
+
|
|
25
|
+
# [1.0.0-alpha.2](https://github.com/sciactive/nymphjs/compare/v1.0.0-alpha.1...v1.0.0-alpha.2) (2021-09-21)
|
|
26
|
+
|
|
27
|
+
### Features
|
|
28
|
+
|
|
29
|
+
- allow multiple instances of Nymph, including transactional instances ([8ff8bcf](https://github.com/sciactive/nymphjs/commit/8ff8bcf4d549998faa2b3d86440394d75bcdc202))
|
|
30
|
+
- implement qref selector clause ([7763324](https://github.com/sciactive/nymphjs/commit/776332482ec91f15b62a4b59d3f6ca97d1f16b99))
|
|
31
|
+
|
|
6
32
|
# 1.0.0-alpha.1 (2021-09-06)
|
|
7
33
|
|
|
8
34
|
### Bug Fixes
|
package/README.md
CHANGED
|
@@ -12,22 +12,16 @@ npm install --save @nymphjs/tilmeld
|
|
|
12
12
|
|
|
13
13
|
## Usage
|
|
14
14
|
|
|
15
|
-
When you initialize Nymph, provide it with the Tilmeld class from this package.
|
|
15
|
+
When you initialize Nymph, provide it with an instance of the Tilmeld class from this package. You now have access to the User and Group classes that are specific to that instance of Nymph/Tilmeld.
|
|
16
16
|
|
|
17
17
|
Here's an overview.
|
|
18
18
|
|
|
19
19
|
```ts
|
|
20
20
|
import SQLite3Driver from '@nymphjs/driver-sqlite3';
|
|
21
|
-
import
|
|
22
|
-
import
|
|
21
|
+
import { Tilmeld } from '@nymphjs/tilmeld';
|
|
22
|
+
import { Nymph } from '@nymphjs/nymph';
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
const sqliteConfig = {
|
|
26
|
-
filename: ':memory:',
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
Nymph.init({}, new SQLite3Driver(sqliteConfig), Tilmeld);
|
|
30
|
-
Tilmeld.init({
|
|
24
|
+
const tilmeld = new Tilmeld({
|
|
31
25
|
appName: 'My App',
|
|
32
26
|
appUrl: 'http://localhost',
|
|
33
27
|
cookieDomain: 'localhost',
|
|
@@ -38,6 +32,17 @@ Tilmeld.init({
|
|
|
38
32
|
cancelChangeRedirect: 'http://localhost',
|
|
39
33
|
jwtSecret: 'shhhhh',
|
|
40
34
|
});
|
|
35
|
+
|
|
36
|
+
const nymph = new Nymph(
|
|
37
|
+
{},
|
|
38
|
+
new SQLite3Driver({
|
|
39
|
+
filename: ':memory:',
|
|
40
|
+
}),
|
|
41
|
+
tilmeld
|
|
42
|
+
);
|
|
43
|
+
|
|
44
|
+
// These are the classes specific to this instance of Tilmeld.
|
|
45
|
+
const { User, Group } = tilmeld;
|
|
41
46
|
```
|
|
42
47
|
|
|
43
48
|
## Options
|
package/dist/Group.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { EntityData, EntityJson, EntityPatch, Options, Selector, SerializedEntityData } from '@nymphjs/nymph';
|
|
2
|
+
import type Tilmeld from './Tilmeld';
|
|
2
3
|
import AbleObject from './AbleObject';
|
|
3
4
|
import User, { UserData } from './User';
|
|
4
5
|
export declare type GroupData = {
|
|
@@ -16,6 +17,7 @@ export declare type GroupData = {
|
|
|
16
17
|
unverifiedSecondary?: boolean;
|
|
17
18
|
};
|
|
18
19
|
export default class Group extends AbleObject<GroupData> {
|
|
20
|
+
static tilmeld: Tilmeld;
|
|
19
21
|
static ETYPE: string;
|
|
20
22
|
static class: string;
|
|
21
23
|
private static DEFAULT_PRIVATE_DATA;
|
package/dist/Group.js
CHANGED
|
@@ -12,13 +12,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
const nymph_1 = __importDefault(require("@nymphjs/nymph"));
|
|
16
15
|
const md5_1 = __importDefault(require("crypto-js/md5"));
|
|
17
16
|
const lodash_1 = require("lodash");
|
|
18
17
|
const AbleObject_1 = __importDefault(require("./AbleObject"));
|
|
19
18
|
const errors_1 = require("./errors");
|
|
20
|
-
const Tilmeld_1 = __importDefault(require("./Tilmeld"));
|
|
21
|
-
const User_1 = __importDefault(require("./User"));
|
|
22
19
|
class Group extends AbleObject_1.default {
|
|
23
20
|
constructor(guid) {
|
|
24
21
|
super(guid);
|
|
@@ -54,7 +51,7 @@ class Group extends AbleObject_1.default {
|
|
|
54
51
|
return __awaiter(this, void 0, void 0, function* () {
|
|
55
52
|
const entity = new this();
|
|
56
53
|
if (groupname != null) {
|
|
57
|
-
const entity = yield
|
|
54
|
+
const entity = yield this.nymph.getEntity({
|
|
58
55
|
class: this,
|
|
59
56
|
}, {
|
|
60
57
|
type: '&',
|
|
@@ -72,18 +69,18 @@ class Group extends AbleObject_1.default {
|
|
|
72
69
|
}
|
|
73
70
|
static getPrimaryGroups(options, selectors) {
|
|
74
71
|
return __awaiter(this, void 0, void 0, function* () {
|
|
75
|
-
if (!
|
|
72
|
+
if (!this.tilmeld.gatekeeper('tilmeld/admin')) {
|
|
76
73
|
throw new Error("You don't have permission to do that.");
|
|
77
74
|
}
|
|
78
|
-
return yield this.getAssignableGroups(
|
|
75
|
+
return yield this.getAssignableGroups(this.tilmeld.config.highestPrimary, Object.assign(Object.assign({}, options), { class: this.tilmeld.Group, return: 'entity' }), [...(selectors !== null && selectors !== void 0 ? selectors : [])]);
|
|
79
76
|
});
|
|
80
77
|
}
|
|
81
78
|
static getSecondaryGroups(options, selectors) {
|
|
82
79
|
return __awaiter(this, void 0, void 0, function* () {
|
|
83
|
-
if (!
|
|
80
|
+
if (!this.tilmeld.gatekeeper('tilmeld/admin')) {
|
|
84
81
|
throw new Error("You don't have permission to do that.");
|
|
85
82
|
}
|
|
86
|
-
return yield this.getAssignableGroups(
|
|
83
|
+
return yield this.getAssignableGroups(this.tilmeld.config.highestSecondary, Object.assign(Object.assign({}, options), { class: this.tilmeld.Group, return: 'entity' }), [...(selectors !== null && selectors !== void 0 ? selectors : [])]);
|
|
87
84
|
});
|
|
88
85
|
}
|
|
89
86
|
static getAssignableGroups(highestParent, options, selectors) {
|
|
@@ -92,7 +89,7 @@ class Group extends AbleObject_1.default {
|
|
|
92
89
|
if (highestParent === false) {
|
|
93
90
|
return assignableGroups;
|
|
94
91
|
}
|
|
95
|
-
assignableGroups = yield
|
|
92
|
+
assignableGroups = yield this.nymph.getEntities(Object.assign(Object.assign({}, options), { class: this.tilmeld.Group }), ...selectors);
|
|
96
93
|
if (highestParent !== true) {
|
|
97
94
|
assignableGroups = assignableGroups.filter((group) => {
|
|
98
95
|
let curGroup = group;
|
|
@@ -120,23 +117,25 @@ class Group extends AbleObject_1.default {
|
|
|
120
117
|
'?d=identicon&s=40');
|
|
121
118
|
}
|
|
122
119
|
$jsonAcceptData(input, allowConflict = false) {
|
|
123
|
-
var _a;
|
|
120
|
+
var _a, _b;
|
|
121
|
+
const tilmeld = this.$nymph.tilmeld;
|
|
124
122
|
this.$referenceWake();
|
|
125
|
-
if (input.data.abilities.indexOf('system/admin') !== -1 &&
|
|
126
|
-
((
|
|
127
|
-
|
|
128
|
-
!
|
|
123
|
+
if (((_a = input.data.abilities) === null || _a === void 0 ? void 0 : _a.indexOf('system/admin')) !== -1 &&
|
|
124
|
+
((_b = this.$data.abilities) === null || _b === void 0 ? void 0 : _b.indexOf('system/admin')) === -1 &&
|
|
125
|
+
tilmeld.gatekeeper('tilmeld/admin') &&
|
|
126
|
+
!tilmeld.gatekeeper('system/admin')) {
|
|
129
127
|
throw new errors_1.BadDataError("You don't have the authority to make this group a system admin.");
|
|
130
128
|
}
|
|
131
129
|
super.$jsonAcceptData(input, allowConflict);
|
|
132
130
|
}
|
|
133
131
|
$jsonAcceptPatch(patch, allowConflict = false) {
|
|
134
|
-
var _a;
|
|
132
|
+
var _a, _b;
|
|
133
|
+
const tilmeld = this.$nymph.tilmeld;
|
|
135
134
|
this.$referenceWake();
|
|
136
|
-
if (patch.set.abilities.indexOf('system/admin') !== -1 &&
|
|
137
|
-
((
|
|
138
|
-
|
|
139
|
-
!
|
|
135
|
+
if (((_a = patch.set.abilities) === null || _a === void 0 ? void 0 : _a.indexOf('system/admin')) !== -1 &&
|
|
136
|
+
((_b = this.$data.abilities) === null || _b === void 0 ? void 0 : _b.indexOf('system/admin')) === -1 &&
|
|
137
|
+
tilmeld.gatekeeper('tilmeld/admin') &&
|
|
138
|
+
!tilmeld.gatekeeper('system/admin')) {
|
|
140
139
|
throw new errors_1.BadDataError("You don't have the authority to make this group a system admin.");
|
|
141
140
|
}
|
|
142
141
|
super.$jsonAcceptPatch(patch, allowConflict);
|
|
@@ -147,10 +146,11 @@ class Group extends AbleObject_1.default {
|
|
|
147
146
|
}
|
|
148
147
|
$updateDataProtection(givenUser) {
|
|
149
148
|
var _a, _b, _c, _d;
|
|
150
|
-
|
|
149
|
+
const tilmeld = this.$nymph.tilmeld;
|
|
150
|
+
let user = givenUser !== null && givenUser !== void 0 ? givenUser : tilmeld.User.current();
|
|
151
151
|
this.$privateData = Group.DEFAULT_PRIVATE_DATA;
|
|
152
152
|
this.$allowlistData = Group.DEFAULT_ALLOWLIST_DATA;
|
|
153
|
-
if (
|
|
153
|
+
if (tilmeld.config.emailUsernames) {
|
|
154
154
|
this.$privateData.push('groupname');
|
|
155
155
|
}
|
|
156
156
|
if (user != null &&
|
|
@@ -166,9 +166,10 @@ class Group extends AbleObject_1.default {
|
|
|
166
166
|
}
|
|
167
167
|
}
|
|
168
168
|
$isDescendant(givenGroup) {
|
|
169
|
+
const tilmeld = this.$nymph.tilmeld;
|
|
169
170
|
let group;
|
|
170
171
|
if (typeof givenGroup === 'string') {
|
|
171
|
-
group = Group.factorySync(givenGroup);
|
|
172
|
+
group = tilmeld.Group.factorySync(givenGroup);
|
|
172
173
|
}
|
|
173
174
|
else {
|
|
174
175
|
group = givenGroup;
|
|
@@ -189,7 +190,8 @@ class Group extends AbleObject_1.default {
|
|
|
189
190
|
}
|
|
190
191
|
$getChildren() {
|
|
191
192
|
return __awaiter(this, void 0, void 0, function* () {
|
|
192
|
-
|
|
193
|
+
const tilmeld = this.$nymph.tilmeld;
|
|
194
|
+
return yield this.$nymph.getEntities({ class: tilmeld.Group }, {
|
|
193
195
|
type: '&',
|
|
194
196
|
equal: ['enabled', true],
|
|
195
197
|
ref: ['parent', this],
|
|
@@ -198,8 +200,9 @@ class Group extends AbleObject_1.default {
|
|
|
198
200
|
}
|
|
199
201
|
$getDescendants(andSelf = false) {
|
|
200
202
|
return __awaiter(this, void 0, void 0, function* () {
|
|
203
|
+
const tilmeld = this.$nymph.tilmeld;
|
|
201
204
|
let groups = [];
|
|
202
|
-
const entities = yield
|
|
205
|
+
const entities = yield this.$nymph.getEntities({ class: tilmeld.Group }, {
|
|
203
206
|
type: '&',
|
|
204
207
|
equal: ['enabled', true],
|
|
205
208
|
ref: ['parent', this],
|
|
@@ -214,11 +217,12 @@ class Group extends AbleObject_1.default {
|
|
|
214
217
|
});
|
|
215
218
|
}
|
|
216
219
|
$getDescendantsSync(andSelf = false) {
|
|
220
|
+
const tilmeld = this.$nymph.tilmeld;
|
|
217
221
|
let groups = [];
|
|
218
222
|
let entity;
|
|
219
223
|
let offset = 0;
|
|
220
224
|
do {
|
|
221
|
-
entity =
|
|
225
|
+
entity = this.$nymph.driver.getEntitySync({ class: tilmeld.Group, offset }, {
|
|
222
226
|
type: '&',
|
|
223
227
|
equal: ['enabled', true],
|
|
224
228
|
ref: ['parent', this],
|
|
@@ -235,7 +239,8 @@ class Group extends AbleObject_1.default {
|
|
|
235
239
|
}
|
|
236
240
|
$getLevel() {
|
|
237
241
|
var _a;
|
|
238
|
-
|
|
242
|
+
const tilmeld = this.$nymph.tilmeld;
|
|
243
|
+
let group = tilmeld.Group.factorySync((_a = this.guid) !== null && _a !== void 0 ? _a : undefined);
|
|
239
244
|
let level = 0;
|
|
240
245
|
while (group.parent != null && group.parent.cdate != null && level < 1024) {
|
|
241
246
|
level++;
|
|
@@ -245,12 +250,13 @@ class Group extends AbleObject_1.default {
|
|
|
245
250
|
}
|
|
246
251
|
$getUsers(descendants = false, limit, offset) {
|
|
247
252
|
return __awaiter(this, void 0, void 0, function* () {
|
|
253
|
+
const tilmeld = this.$nymph.tilmeld;
|
|
248
254
|
let groups = [];
|
|
249
255
|
if (descendants) {
|
|
250
256
|
groups = yield this.$getDescendants();
|
|
251
257
|
}
|
|
252
|
-
return yield
|
|
253
|
-
class:
|
|
258
|
+
return yield this.$nymph.getEntities({
|
|
259
|
+
class: tilmeld.User,
|
|
254
260
|
limit,
|
|
255
261
|
offset,
|
|
256
262
|
}, {
|
|
@@ -275,29 +281,30 @@ class Group extends AbleObject_1.default {
|
|
|
275
281
|
}
|
|
276
282
|
$checkGroupname() {
|
|
277
283
|
return __awaiter(this, void 0, void 0, function* () {
|
|
278
|
-
|
|
284
|
+
const tilmeld = this.$nymph.tilmeld;
|
|
285
|
+
if (!tilmeld.config.emailUsernames) {
|
|
279
286
|
if (this.$data.groupname == null || !this.$data.groupname.length) {
|
|
280
287
|
return { result: false, message: 'Please specify a groupname.' };
|
|
281
288
|
}
|
|
282
|
-
if (
|
|
283
|
-
this.$data.groupname.length >
|
|
289
|
+
if (tilmeld.config.maxUsernameLength > 0 &&
|
|
290
|
+
this.$data.groupname.length > tilmeld.config.maxUsernameLength) {
|
|
284
291
|
return {
|
|
285
292
|
result: false,
|
|
286
293
|
message: 'Groupnames must not exceed ' +
|
|
287
|
-
|
|
294
|
+
tilmeld.config.maxUsernameLength +
|
|
288
295
|
' characters.',
|
|
289
296
|
};
|
|
290
297
|
}
|
|
291
|
-
if ((0, lodash_1.difference)(this.$data.groupname.split(''),
|
|
298
|
+
if ((0, lodash_1.difference)(this.$data.groupname.split(''), tilmeld.config.validChars.split('')).length) {
|
|
292
299
|
return {
|
|
293
300
|
result: false,
|
|
294
|
-
message:
|
|
301
|
+
message: tilmeld.config.validCharsNotice,
|
|
295
302
|
};
|
|
296
303
|
}
|
|
297
|
-
if (!
|
|
304
|
+
if (!tilmeld.config.validRegex.test(this.$data.groupname)) {
|
|
298
305
|
return {
|
|
299
306
|
result: false,
|
|
300
|
-
message:
|
|
307
|
+
message: tilmeld.config.validRegexNotice,
|
|
301
308
|
};
|
|
302
309
|
}
|
|
303
310
|
const selector = {
|
|
@@ -310,7 +317,7 @@ class Group extends AbleObject_1.default {
|
|
|
310
317
|
if (this.guid != null) {
|
|
311
318
|
selector['!guid'] = this.guid;
|
|
312
319
|
}
|
|
313
|
-
const test = yield
|
|
320
|
+
const test = yield this.$nymph.getEntity({ class: tilmeld.Group, skipAc: true }, selector);
|
|
314
321
|
if (test != null) {
|
|
315
322
|
return { result: false, message: 'That groupname is taken.' };
|
|
316
323
|
}
|
|
@@ -324,12 +331,12 @@ class Group extends AbleObject_1.default {
|
|
|
324
331
|
if (this.$data.groupname == null || !this.$data.groupname.length) {
|
|
325
332
|
return { result: false, message: 'Please specify an email.' };
|
|
326
333
|
}
|
|
327
|
-
if (
|
|
328
|
-
this.$data.groupname.length >
|
|
334
|
+
if (tilmeld.config.maxUsernameLength > 0 &&
|
|
335
|
+
this.$data.groupname.length > tilmeld.config.maxUsernameLength) {
|
|
329
336
|
return {
|
|
330
337
|
result: false,
|
|
331
338
|
message: 'Emails must not exceed ' +
|
|
332
|
-
|
|
339
|
+
tilmeld.config.maxUsernameLength +
|
|
333
340
|
' characters.',
|
|
334
341
|
};
|
|
335
342
|
}
|
|
@@ -339,16 +346,17 @@ class Group extends AbleObject_1.default {
|
|
|
339
346
|
}
|
|
340
347
|
$checkEmail() {
|
|
341
348
|
return __awaiter(this, void 0, void 0, function* () {
|
|
349
|
+
const tilmeld = this.$nymph.tilmeld;
|
|
342
350
|
if (this.$data.email === '') {
|
|
343
351
|
return { result: true, message: '' };
|
|
344
352
|
}
|
|
345
353
|
if (this.$data.email == null) {
|
|
346
354
|
return { result: false, message: 'Please specify a valid email.' };
|
|
347
355
|
}
|
|
348
|
-
if (!
|
|
356
|
+
if (!tilmeld.config.validEmailRegex.test(this.$data.email)) {
|
|
349
357
|
return {
|
|
350
358
|
result: false,
|
|
351
|
-
message:
|
|
359
|
+
message: tilmeld.config.validEmailRegexNotice,
|
|
352
360
|
};
|
|
353
361
|
}
|
|
354
362
|
const selector = {
|
|
@@ -358,7 +366,7 @@ class Group extends AbleObject_1.default {
|
|
|
358
366
|
if (this.guid != null) {
|
|
359
367
|
selector['!guid'] = this.guid;
|
|
360
368
|
}
|
|
361
|
-
const test = yield
|
|
369
|
+
const test = yield this.$nymph.getEntity({ class: tilmeld.Group, skipAc: true }, selector);
|
|
362
370
|
if (test != null) {
|
|
363
371
|
return {
|
|
364
372
|
result: false,
|
|
@@ -377,11 +385,12 @@ class Group extends AbleObject_1.default {
|
|
|
377
385
|
});
|
|
378
386
|
var _a, _b, _c, _d;
|
|
379
387
|
return __awaiter(this, void 0, void 0, function* () {
|
|
388
|
+
const tilmeld = this.$nymph.tilmeld;
|
|
380
389
|
if (this.$data.groupname == null || !this.$data.groupname.trim().length) {
|
|
381
390
|
return false;
|
|
382
391
|
}
|
|
383
392
|
this.$data.groupname = this.$data.groupname.trim();
|
|
384
|
-
if (
|
|
393
|
+
if (tilmeld.config.emailUsernames) {
|
|
385
394
|
this.$data.email = this.$data.groupname;
|
|
386
395
|
}
|
|
387
396
|
this.$data.email = ((_a = this.$data.email) !== null && _a !== void 0 ? _a : '').trim();
|
|
@@ -425,7 +434,7 @@ class Group extends AbleObject_1.default {
|
|
|
425
434
|
if (!unCheck.result) {
|
|
426
435
|
throw new errors_1.BadUsernameError(unCheck.message);
|
|
427
436
|
}
|
|
428
|
-
if (!
|
|
437
|
+
if (!tilmeld.config.emailUsernames) {
|
|
429
438
|
const emCheck = yield this.$checkEmail();
|
|
430
439
|
if (!emCheck.result) {
|
|
431
440
|
throw new errors_1.BadEmailError(emCheck.message);
|
|
@@ -438,13 +447,13 @@ class Group extends AbleObject_1.default {
|
|
|
438
447
|
throw new errors_1.BadDataError("Group parent can't be itself or descendant of itself.");
|
|
439
448
|
}
|
|
440
449
|
try {
|
|
441
|
-
|
|
450
|
+
tilmeld.config.validatorGroup(this);
|
|
442
451
|
}
|
|
443
452
|
catch (e) {
|
|
444
453
|
throw new errors_1.BadDataError(e === null || e === void 0 ? void 0 : e.message);
|
|
445
454
|
}
|
|
446
455
|
if (this.$data.defaultPrimary) {
|
|
447
|
-
const currentPrimary = yield
|
|
456
|
+
const currentPrimary = yield this.$nymph.getEntity({ class: tilmeld.Group }, { type: '&', truthy: 'defaultPrimary' });
|
|
448
457
|
if (currentPrimary != null && !this.$is(currentPrimary)) {
|
|
449
458
|
currentPrimary.defaultPrimary = false;
|
|
450
459
|
if (!(yield currentPrimary.$save())) {
|
|
@@ -474,22 +483,23 @@ class Group extends AbleObject_1.default {
|
|
|
474
483
|
$delete: { get: () => super.$delete }
|
|
475
484
|
});
|
|
476
485
|
return __awaiter(this, void 0, void 0, function* () {
|
|
477
|
-
|
|
486
|
+
const tilmeld = this.$nymph.tilmeld;
|
|
487
|
+
if (!tilmeld.gatekeeper('tilmeld/admin')) {
|
|
478
488
|
throw new errors_1.BadDataError("You don't have the authority to delete groups.");
|
|
479
489
|
}
|
|
480
490
|
const transaction = 'tilmeld-delete-' + this.guid;
|
|
481
|
-
yield
|
|
491
|
+
const tnymph = yield this.$nymph.startTransaction(transaction);
|
|
482
492
|
const descendants = yield this.$getDescendants();
|
|
483
493
|
if (descendants.length) {
|
|
484
494
|
for (let curGroup of descendants) {
|
|
485
495
|
if (!(yield curGroup.$delete())) {
|
|
486
|
-
yield
|
|
496
|
+
yield tnymph.rollback(transaction);
|
|
487
497
|
return false;
|
|
488
498
|
}
|
|
489
499
|
}
|
|
490
500
|
}
|
|
491
|
-
const primaryUsers = yield
|
|
492
|
-
class:
|
|
501
|
+
const primaryUsers = yield tnymph.getEntities({
|
|
502
|
+
class: tilmeld.User,
|
|
493
503
|
skipAc: true,
|
|
494
504
|
}, {
|
|
495
505
|
type: '&',
|
|
@@ -498,12 +508,12 @@ class Group extends AbleObject_1.default {
|
|
|
498
508
|
for (let user of primaryUsers) {
|
|
499
509
|
delete user.group;
|
|
500
510
|
if (!(yield user.$save())) {
|
|
501
|
-
yield
|
|
511
|
+
yield tnymph.rollback(transaction);
|
|
502
512
|
return false;
|
|
503
513
|
}
|
|
504
514
|
}
|
|
505
|
-
const secondaryUsers = yield
|
|
506
|
-
class:
|
|
515
|
+
const secondaryUsers = yield tnymph.getEntities({
|
|
516
|
+
class: tilmeld.User,
|
|
507
517
|
skipAc: true,
|
|
508
518
|
}, {
|
|
509
519
|
type: '&',
|
|
@@ -512,16 +522,16 @@ class Group extends AbleObject_1.default {
|
|
|
512
522
|
for (let user of secondaryUsers) {
|
|
513
523
|
user.$delGroup(this);
|
|
514
524
|
if (!(yield user.$save())) {
|
|
515
|
-
yield
|
|
525
|
+
yield tnymph.rollback(transaction);
|
|
516
526
|
return false;
|
|
517
527
|
}
|
|
518
528
|
}
|
|
519
529
|
const success = yield _super.$delete.call(this);
|
|
520
530
|
if (success) {
|
|
521
|
-
yield
|
|
531
|
+
yield tnymph.commit(transaction);
|
|
522
532
|
}
|
|
523
533
|
else {
|
|
524
|
-
yield
|
|
534
|
+
yield tnymph.rollback(transaction);
|
|
525
535
|
}
|
|
526
536
|
return success;
|
|
527
537
|
});
|
|
@@ -537,5 +547,4 @@ Group.clientEnabledStaticMethods = [
|
|
|
537
547
|
'getSecondaryGroups',
|
|
538
548
|
];
|
|
539
549
|
Group.searchRestrictedData = Group.DEFAULT_PRIVATE_DATA;
|
|
540
|
-
nymph_1.default.setEntityClass(Group.class, Group);
|
|
541
550
|
//# sourceMappingURL=Group.js.map
|
package/dist/Group.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Group.js","sourceRoot":"","sources":["../src/Group.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Group.js","sourceRoot":"","sources":["../src/Group.ts"],"names":[],"mappings":"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"}
|
package/dist/Group.test.js
CHANGED
|
@@ -15,13 +15,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
15
|
const driver_sqlite3_1 = require("@nymphjs/driver-sqlite3");
|
|
16
16
|
const nymph_1 = require("@nymphjs/nymph");
|
|
17
17
|
const Tilmeld_1 = __importDefault(require("./Tilmeld"));
|
|
18
|
-
const Group_1 = __importDefault(require("./Group"));
|
|
19
18
|
const defaults_1 = __importDefault(require("./conf/defaults"));
|
|
20
|
-
const
|
|
21
|
-
filename: ':memory:',
|
|
22
|
-
};
|
|
23
|
-
nymph_1.Nymph.init({}, new driver_sqlite3_1.SQLite3Driver(sqliteConfig), Tilmeld_1.default);
|
|
24
|
-
Tilmeld_1.default.init({
|
|
19
|
+
const tilmeld = new Tilmeld_1.default({
|
|
25
20
|
appName: 'My App',
|
|
26
21
|
appUrl: 'http://localhost:8080',
|
|
27
22
|
cookieDomain: 'localhost',
|
|
@@ -33,16 +28,26 @@ Tilmeld_1.default.init({
|
|
|
33
28
|
cancelChangeRedirect: 'http://localhost:8080',
|
|
34
29
|
jwtSecret: 'shhhhh',
|
|
35
30
|
});
|
|
31
|
+
const _nymph = new nymph_1.Nymph({}, new driver_sqlite3_1.SQLite3Driver({
|
|
32
|
+
filename: ':memory:',
|
|
33
|
+
}), tilmeld);
|
|
34
|
+
const Group = tilmeld.Group;
|
|
36
35
|
describe('Group', () => {
|
|
37
36
|
function makeNewGroup() {
|
|
38
37
|
return __awaiter(this, void 0, void 0, function* () {
|
|
39
|
-
const newGroup = yield
|
|
38
|
+
const newGroup = yield Group.factory();
|
|
40
39
|
newGroup.groupname = 'new-group';
|
|
41
40
|
newGroup.email = 'newgroup@localhost';
|
|
42
41
|
newGroup.name = 'New Group';
|
|
43
42
|
return newGroup;
|
|
44
43
|
});
|
|
45
44
|
}
|
|
45
|
+
it('new group passes validation', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
46
|
+
const validGroup = yield makeNewGroup();
|
|
47
|
+
expect(() => {
|
|
48
|
+
defaults_1.default.validatorGroup(validGroup);
|
|
49
|
+
}).not.toThrow();
|
|
50
|
+
}));
|
|
46
51
|
it("doesn't allow unknown keys", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
47
52
|
const invalidGroup = yield makeNewGroup();
|
|
48
53
|
invalidGroup.unknown = 'I should cause an error.';
|
package/dist/Group.test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Group.test.js","sourceRoot":"","sources":["../src/Group.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,4DAAwD;AACxD,0CAAuC;AAEvC,wDAAgC;AAChC
|
|
1
|
+
{"version":3,"file":"Group.test.js","sourceRoot":"","sources":["../src/Group.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,4DAAwD;AACxD,0CAAuC;AAEvC,wDAAgC;AAChC,+DAAuC;AAEvC,MAAM,OAAO,GAAG,IAAI,iBAAO,CAAC;IAC1B,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE,uBAAuB;IAC/B,YAAY,EAAE,WAAW;IACzB,UAAU,EAAE,GAAG;IACf,SAAS,EAAE,OAAO;IAClB,cAAc,EAAE,KAAK;IACrB,cAAc,EAAE,uBAAuB;IACvC,oBAAoB,EAAE,uBAAuB;IAC7C,oBAAoB,EAAE,uBAAuB;IAC7C,SAAS,EAAE,QAAQ;CACpB,CAAC,CAAC;AACH,MAAM,MAAM,GAAG,IAAI,aAAK,CACtB,EAAE,EACF,IAAI,8BAAa,CAAC;IAChB,QAAQ,EAAE,UAAU;CACrB,CAAC,EACF,OAAO,CACR,CAAC;AAEF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;AAE5B,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;IACrB,SAAe,YAAY;;YACzB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;YAEvC,QAAQ,CAAC,SAAS,GAAG,WAAW,CAAC;YACjC,QAAQ,CAAC,KAAK,GAAG,oBAAoB,CAAC;YACtC,QAAQ,CAAC,IAAI,GAAG,WAAW,CAAC;YAE5B,OAAO,QAAQ,CAAC;QAClB,CAAC;KAAA;IAED,EAAE,CAAC,6BAA6B,EAAE,GAAS,EAAE;QAC3C,MAAM,UAAU,GAAG,MAAM,YAAY,EAAE,CAAC;QAExC,MAAM,CAAC,GAAG,EAAE;YACV,kBAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,GAAS,EAAE;QAC1C,MAAM,YAAY,GAAG,MAAM,YAAY,EAAE,CAAC;QAG1C,YAAY,CAAC,OAAO,GAAG,0BAA0B,CAAC;QAElD,MAAM,CAAC,GAAG,EAAE;YACV,kBAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC,OAAO,CAAC,0CAA0C,CAAC,CAAC;IACzD,CAAC,CAAA,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|