@nymphjs/nymph 1.0.0-alpha.9 → 1.0.0-beta.1
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 +167 -0
- package/dist/Entity.d.ts +2 -2
- package/dist/Entity.js +111 -67
- package/dist/Entity.js.map +1 -1
- package/dist/Entity.test.js +73 -85
- package/dist/Entity.test.js.map +1 -1
- package/dist/Entity.types.d.ts +7 -7
- package/dist/Nymph.d.ts +6 -0
- package/dist/Nymph.js +151 -198
- package/dist/Nymph.js.map +1 -1
- package/dist/Nymph.types.d.ts +36 -36
- package/dist/driver/NymphDriver.d.ts +33 -6
- package/dist/driver/NymphDriver.js +158 -152
- package/dist/driver/NymphDriver.js.map +1 -1
- package/dist/driver/index.js +5 -1
- package/dist/driver/index.js.map +1 -1
- package/dist/driver/testArtifacts.js +543 -541
- package/dist/driver/testArtifacts.js.map +1 -1
- package/dist/errors/index.js +5 -1
- package/dist/errors/index.js.map +1 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.js +6 -4
- package/dist/index.js.map +1 -1
- package/dist/nymphJoiProps.d.ts +4 -4
- package/dist/nymphJoiProps.js +2 -4
- package/dist/nymphJoiProps.js.map +1 -1
- package/dist/testArtifacts.d.ts +1 -1
- package/dist/testArtifacts.js +8 -27
- package/dist/testArtifacts.js.map +1 -1
- package/dist/testMocks.js +31 -48
- package/dist/testMocks.js.map +1 -1
- package/dist/utils.d.ts +2 -0
- package/dist/utils.js +47 -1
- package/dist/utils.js.map +1 -1
- package/jest.config.js +1 -1
- package/package.json +12 -16
- package/src/Entity.test.ts +2 -0
- package/src/Entity.ts +85 -5
- package/src/Nymph.ts +19 -8
- package/src/Nymph.types.ts +11 -11
- package/src/driver/NymphDriver.ts +90 -15
- package/src/driver/testArtifacts.ts +71 -22
- package/src/index.ts +0 -3
- package/src/nymphJoiProps.ts +4 -6
- package/src/testMocks.ts +3 -2
- package/src/utils.ts +59 -0
- package/tsconfig.json +2 -0
- package/dist/newGUID.d.ts +0 -1
- package/dist/newGUID.js +0 -14
- package/dist/newGUID.js.map +0 -1
- package/src/newGUID.ts +0 -11
package/dist/Nymph.js
CHANGED
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
4
|
};
|
|
@@ -16,6 +7,18 @@ const conf_1 = require("./conf");
|
|
|
16
7
|
const Entity_1 = __importDefault(require("./Entity"));
|
|
17
8
|
const errors_1 = require("./errors");
|
|
18
9
|
class Nymph {
|
|
10
|
+
addEntityClass(entityClass) {
|
|
11
|
+
this.entityClasses[entityClass.class] = entityClass;
|
|
12
|
+
entityClass.nymph = this;
|
|
13
|
+
}
|
|
14
|
+
getEntityClass(className) {
|
|
15
|
+
if (className in this.entityClasses) {
|
|
16
|
+
const EntityClass = this.entityClasses[className];
|
|
17
|
+
EntityClass.nymph = this;
|
|
18
|
+
return EntityClass;
|
|
19
|
+
}
|
|
20
|
+
throw new errors_1.ClassNotAvailableError('Tried to use class: ' + className);
|
|
21
|
+
}
|
|
19
22
|
constructor(config, driver, tilmeld) {
|
|
20
23
|
this.tilmeld = undefined;
|
|
21
24
|
this.entityClasses = {};
|
|
@@ -39,7 +42,7 @@ class Nymph {
|
|
|
39
42
|
this.afterRenameUIDCallbacks = [];
|
|
40
43
|
this.beforeDeleteUIDCallbacks = [];
|
|
41
44
|
this.afterDeleteUIDCallbacks = [];
|
|
42
|
-
this.config =
|
|
45
|
+
this.config = { ...conf_1.ConfigDefaults, ...config };
|
|
43
46
|
this.driver = driver;
|
|
44
47
|
if (typeof tilmeld !== 'undefined') {
|
|
45
48
|
this.tilmeld = tilmeld;
|
|
@@ -54,21 +57,8 @@ class Nymph {
|
|
|
54
57
|
this.tilmeld.init(this);
|
|
55
58
|
}
|
|
56
59
|
}
|
|
57
|
-
addEntityClass(entityClass) {
|
|
58
|
-
this.entityClasses[entityClass.class] = entityClass;
|
|
59
|
-
entityClass.nymph = this;
|
|
60
|
-
}
|
|
61
|
-
getEntityClass(className) {
|
|
62
|
-
if (className in this.entityClasses) {
|
|
63
|
-
const EntityClass = this.entityClasses[className];
|
|
64
|
-
EntityClass.nymph = this;
|
|
65
|
-
return EntityClass;
|
|
66
|
-
}
|
|
67
|
-
throw new errors_1.ClassNotAvailableError('Tried to use class: ' + className);
|
|
68
|
-
}
|
|
69
60
|
clone() {
|
|
70
|
-
|
|
71
|
-
const nymph = new Nymph(this.config, this.driver, (_a = this.tilmeld) === null || _a === void 0 ? void 0 : _a.clone());
|
|
61
|
+
const nymph = new Nymph(this.config, this.driver, this.tilmeld?.clone());
|
|
72
62
|
for (const name in this.entityClasses) {
|
|
73
63
|
if (name === 'Entity' || this.entityClasses[name].skipOnClone) {
|
|
74
64
|
continue;
|
|
@@ -108,220 +98,183 @@ class Nymph {
|
|
|
108
98
|
}
|
|
109
99
|
return nymph;
|
|
110
100
|
}
|
|
111
|
-
connect() {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
callback(this, result);
|
|
117
|
-
}
|
|
101
|
+
async connect() {
|
|
102
|
+
const result = this.driver.connect();
|
|
103
|
+
for (let callback of this.connectCallbacks) {
|
|
104
|
+
if (callback) {
|
|
105
|
+
callback(this, result);
|
|
118
106
|
}
|
|
119
|
-
|
|
120
|
-
|
|
107
|
+
}
|
|
108
|
+
return await result;
|
|
121
109
|
}
|
|
122
|
-
disconnect() {
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
callback(this, result);
|
|
128
|
-
}
|
|
110
|
+
async disconnect() {
|
|
111
|
+
const result = this.driver.disconnect();
|
|
112
|
+
for (let callback of this.disconnectCallbacks) {
|
|
113
|
+
if (callback) {
|
|
114
|
+
callback(this, result);
|
|
129
115
|
}
|
|
130
|
-
|
|
131
|
-
|
|
116
|
+
}
|
|
117
|
+
return await result;
|
|
132
118
|
}
|
|
133
|
-
runQueryCallbacks(options, selectors) {
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
callback(this, options, selectors);
|
|
138
|
-
}
|
|
119
|
+
async runQueryCallbacks(options, selectors) {
|
|
120
|
+
for (let callback of this.queryCallbacks) {
|
|
121
|
+
if (callback) {
|
|
122
|
+
callback(this, options, selectors);
|
|
139
123
|
}
|
|
140
|
-
}
|
|
124
|
+
}
|
|
141
125
|
}
|
|
142
|
-
startTransaction(name) {
|
|
143
|
-
return
|
|
144
|
-
return yield this.driver.startTransaction(name);
|
|
145
|
-
});
|
|
126
|
+
async startTransaction(name) {
|
|
127
|
+
return await this.driver.startTransaction(name);
|
|
146
128
|
}
|
|
147
|
-
commit(name) {
|
|
148
|
-
return
|
|
149
|
-
return yield this.driver.commit(name);
|
|
150
|
-
});
|
|
129
|
+
async commit(name) {
|
|
130
|
+
return await this.driver.commit(name);
|
|
151
131
|
}
|
|
152
|
-
rollback(name) {
|
|
153
|
-
return
|
|
154
|
-
return yield this.driver.rollback(name);
|
|
155
|
-
});
|
|
132
|
+
async rollback(name) {
|
|
133
|
+
return await this.driver.rollback(name);
|
|
156
134
|
}
|
|
157
|
-
inTransaction() {
|
|
158
|
-
return
|
|
159
|
-
return yield this.driver.inTransaction();
|
|
160
|
-
});
|
|
135
|
+
async inTransaction() {
|
|
136
|
+
return await this.driver.inTransaction();
|
|
161
137
|
}
|
|
162
|
-
newUID(name) {
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
callback(this, name);
|
|
167
|
-
}
|
|
138
|
+
async newUID(name) {
|
|
139
|
+
for (let callback of this.beforeNewUIDCallbacks) {
|
|
140
|
+
if (callback) {
|
|
141
|
+
callback(this, name);
|
|
168
142
|
}
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
143
|
+
}
|
|
144
|
+
const result = this.driver.newUID(name);
|
|
145
|
+
for (let callback of this.afterNewUIDCallbacks) {
|
|
146
|
+
if (callback) {
|
|
147
|
+
callback(this, result);
|
|
174
148
|
}
|
|
175
|
-
|
|
176
|
-
|
|
149
|
+
}
|
|
150
|
+
return await result;
|
|
177
151
|
}
|
|
178
|
-
getUID(name) {
|
|
179
|
-
return
|
|
180
|
-
return yield this.driver.getUID(name);
|
|
181
|
-
});
|
|
152
|
+
async getUID(name) {
|
|
153
|
+
return await this.driver.getUID(name);
|
|
182
154
|
}
|
|
183
|
-
setUID(name, value) {
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
callback(this, name, value);
|
|
188
|
-
}
|
|
155
|
+
async setUID(name, value) {
|
|
156
|
+
for (let callback of this.beforeSetUIDCallbacks) {
|
|
157
|
+
if (callback) {
|
|
158
|
+
callback(this, name, value);
|
|
189
159
|
}
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
160
|
+
}
|
|
161
|
+
const result = this.driver.setUID(name, value);
|
|
162
|
+
for (let callback of this.afterSetUIDCallbacks) {
|
|
163
|
+
if (callback) {
|
|
164
|
+
callback(this, result);
|
|
195
165
|
}
|
|
196
|
-
|
|
197
|
-
|
|
166
|
+
}
|
|
167
|
+
return await result;
|
|
198
168
|
}
|
|
199
|
-
deleteUID(name) {
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
callback(this, name);
|
|
204
|
-
}
|
|
169
|
+
async deleteUID(name) {
|
|
170
|
+
for (let callback of this.beforeDeleteUIDCallbacks) {
|
|
171
|
+
if (callback) {
|
|
172
|
+
callback(this, name);
|
|
205
173
|
}
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
174
|
+
}
|
|
175
|
+
const result = this.driver.deleteUID(name);
|
|
176
|
+
for (let callback of this.afterDeleteUIDCallbacks) {
|
|
177
|
+
if (callback) {
|
|
178
|
+
callback(this, result);
|
|
211
179
|
}
|
|
212
|
-
|
|
213
|
-
|
|
180
|
+
}
|
|
181
|
+
return await result;
|
|
214
182
|
}
|
|
215
|
-
renameUID(oldName, newName) {
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
callback(this, oldName, newName);
|
|
220
|
-
}
|
|
183
|
+
async renameUID(oldName, newName) {
|
|
184
|
+
for (let callback of this.beforeRenameUIDCallbacks) {
|
|
185
|
+
if (callback) {
|
|
186
|
+
callback(this, oldName, newName);
|
|
221
187
|
}
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
188
|
+
}
|
|
189
|
+
const result = this.driver.renameUID(oldName, newName);
|
|
190
|
+
for (let callback of this.afterRenameUIDCallbacks) {
|
|
191
|
+
if (callback) {
|
|
192
|
+
callback(this, result);
|
|
227
193
|
}
|
|
228
|
-
|
|
229
|
-
|
|
194
|
+
}
|
|
195
|
+
return await result;
|
|
230
196
|
}
|
|
231
|
-
saveEntity(entity) {
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
callback(this, entity);
|
|
236
|
-
}
|
|
197
|
+
async saveEntity(entity) {
|
|
198
|
+
for (let callback of this.beforeSaveEntityCallbacks) {
|
|
199
|
+
if (callback) {
|
|
200
|
+
callback(this, entity);
|
|
237
201
|
}
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
202
|
+
}
|
|
203
|
+
const result = this.driver.saveEntity(entity);
|
|
204
|
+
for (let callback of this.afterSaveEntityCallbacks) {
|
|
205
|
+
if (callback) {
|
|
206
|
+
callback(this, result);
|
|
243
207
|
}
|
|
244
|
-
|
|
245
|
-
|
|
208
|
+
}
|
|
209
|
+
return await result;
|
|
246
210
|
}
|
|
247
|
-
getEntities(options = {}, ...selectors) {
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
callback(this, options, selectors);
|
|
252
|
-
}
|
|
211
|
+
async getEntities(options = {}, ...selectors) {
|
|
212
|
+
for (let callback of this.beforeGetEntitiesCallbacks) {
|
|
213
|
+
if (callback) {
|
|
214
|
+
callback(this, options, selectors);
|
|
253
215
|
}
|
|
254
|
-
|
|
255
|
-
|
|
216
|
+
}
|
|
217
|
+
return await this.driver.getEntities(options, ...selectors);
|
|
256
218
|
}
|
|
257
|
-
getEntity(options = {}, ...selectors) {
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
callback(this, options, selectors);
|
|
266
|
-
}
|
|
267
|
-
}
|
|
268
|
-
const entities = yield this.driver.getEntities(options, ...selectors);
|
|
269
|
-
if (!entities || !entities.length) {
|
|
270
|
-
return null;
|
|
219
|
+
async getEntity(options = {}, ...selectors) {
|
|
220
|
+
if (typeof selectors[0] === 'string') {
|
|
221
|
+
selectors = [{ type: '&', guid: selectors[0] }];
|
|
222
|
+
}
|
|
223
|
+
options.limit = 1;
|
|
224
|
+
for (let callback of this.beforeGetEntityCallbacks) {
|
|
225
|
+
if (callback) {
|
|
226
|
+
callback(this, options, selectors);
|
|
271
227
|
}
|
|
272
|
-
|
|
273
|
-
|
|
228
|
+
}
|
|
229
|
+
const entities = await this.driver.getEntities(options, ...selectors);
|
|
230
|
+
if (options.return === 'count') {
|
|
231
|
+
return entities;
|
|
232
|
+
}
|
|
233
|
+
if (!entities || !entities.length) {
|
|
234
|
+
return null;
|
|
235
|
+
}
|
|
236
|
+
return entities[0];
|
|
274
237
|
}
|
|
275
|
-
deleteEntity(entity) {
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
callback(this, entity);
|
|
280
|
-
}
|
|
238
|
+
async deleteEntity(entity) {
|
|
239
|
+
for (let callback of this.beforeDeleteEntityCallbacks) {
|
|
240
|
+
if (callback) {
|
|
241
|
+
callback(this, entity);
|
|
281
242
|
}
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
243
|
+
}
|
|
244
|
+
const result = this.driver.deleteEntity(entity);
|
|
245
|
+
for (let callback of this.afterDeleteEntityCallbacks) {
|
|
246
|
+
if (callback) {
|
|
247
|
+
callback(this, result);
|
|
287
248
|
}
|
|
288
|
-
|
|
289
|
-
|
|
249
|
+
}
|
|
250
|
+
return await result;
|
|
290
251
|
}
|
|
291
|
-
deleteEntityByID(guid, className) {
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
callback(this, guid, className);
|
|
296
|
-
}
|
|
252
|
+
async deleteEntityByID(guid, className) {
|
|
253
|
+
for (let callback of this.beforeDeleteEntityByIDCallbacks) {
|
|
254
|
+
if (callback) {
|
|
255
|
+
callback(this, guid, className);
|
|
297
256
|
}
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
257
|
+
}
|
|
258
|
+
const result = this.driver.deleteEntityByID(guid, className);
|
|
259
|
+
for (let callback of this.afterDeleteEntityByIDCallbacks) {
|
|
260
|
+
if (callback) {
|
|
261
|
+
callback(this, result);
|
|
303
262
|
}
|
|
304
|
-
|
|
305
|
-
|
|
263
|
+
}
|
|
264
|
+
return await result;
|
|
306
265
|
}
|
|
307
|
-
export(filename) {
|
|
308
|
-
return
|
|
309
|
-
return yield this.driver.export(filename);
|
|
310
|
-
});
|
|
266
|
+
async export(filename) {
|
|
267
|
+
return await this.driver.export(filename);
|
|
311
268
|
}
|
|
312
|
-
exportPrint() {
|
|
313
|
-
return
|
|
314
|
-
return yield this.driver.exportPrint();
|
|
315
|
-
});
|
|
269
|
+
async exportPrint() {
|
|
270
|
+
return await this.driver.exportPrint();
|
|
316
271
|
}
|
|
317
|
-
import(filename) {
|
|
318
|
-
return
|
|
319
|
-
return yield this.driver.import(filename);
|
|
320
|
-
});
|
|
272
|
+
async import(filename) {
|
|
273
|
+
return await this.driver.import(filename);
|
|
321
274
|
}
|
|
322
275
|
on(event, callback) {
|
|
323
276
|
const prop = (event + 'Callbacks');
|
|
324
|
-
if (!
|
|
277
|
+
if (!(prop in this)) {
|
|
325
278
|
throw new Error('Invalid event type.');
|
|
326
279
|
}
|
|
327
280
|
this[prop].push(callback);
|
|
@@ -329,7 +282,7 @@ class Nymph {
|
|
|
329
282
|
}
|
|
330
283
|
off(event, callback) {
|
|
331
284
|
const prop = (event + 'Callbacks');
|
|
332
|
-
if (!
|
|
285
|
+
if (!(prop in this)) {
|
|
333
286
|
return false;
|
|
334
287
|
}
|
|
335
288
|
const i = this[prop].indexOf(callback);
|
package/dist/Nymph.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Nymph.js","sourceRoot":"","sources":["../src/Nymph.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Nymph.js","sourceRoot":"","sources":["../src/Nymph.ts"],"names":[],"mappings":"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"}
|
package/dist/Nymph.types.d.ts
CHANGED
|
@@ -1,39 +1,39 @@
|
|
|
1
1
|
import { EntityConstructor, EntityInterface } from './Entity.types';
|
|
2
2
|
import Nymph from './Nymph';
|
|
3
|
-
export
|
|
4
|
-
export
|
|
5
|
-
export
|
|
6
|
-
export
|
|
7
|
-
export
|
|
8
|
-
export
|
|
9
|
-
export
|
|
10
|
-
export
|
|
11
|
-
export
|
|
12
|
-
export
|
|
13
|
-
export
|
|
14
|
-
export
|
|
15
|
-
export
|
|
16
|
-
export
|
|
17
|
-
export
|
|
18
|
-
export
|
|
19
|
-
export
|
|
20
|
-
export
|
|
21
|
-
export
|
|
22
|
-
export
|
|
23
|
-
export
|
|
3
|
+
export type NymphEventType = 'connect' | 'disconnect' | 'query' | 'beforeGetEntity' | 'beforeGetEntities' | 'beforeSaveEntity' | 'afterSaveEntity' | 'beforeDeleteEntity' | 'afterDeleteEntity' | 'beforeDeleteEntityByID' | 'afterDeleteEntityByID' | 'beforeNewUID' | 'afterNewUID' | 'beforeSetUID' | 'afterSetUID' | 'beforeRenameUID' | 'afterRenameUID' | 'beforeDeleteUID' | 'afterDeleteUID';
|
|
4
|
+
export type NymphConnectCallback = (nymph: Nymph, result: Promise<boolean>) => void;
|
|
5
|
+
export type NymphDisconnectCallback = (nymph: Nymph, result: Promise<boolean>) => void;
|
|
6
|
+
export type NymphQueryCallback = (nymph: Nymph, options: Options, selectors: FormattedSelector[]) => void;
|
|
7
|
+
export type NymphBeforeGetEntityCallback = (nymph: Nymph, options: Options, selectors: Selector[]) => void;
|
|
8
|
+
export type NymphBeforeGetEntitiesCallback = (nymph: Nymph, options: Options, selectors: Selector[]) => void;
|
|
9
|
+
export type NymphBeforeSaveEntityCallback = (nymph: Nymph, entity: EntityInterface) => void;
|
|
10
|
+
export type NymphAfterSaveEntityCallback = (nymph: Nymph, result: Promise<boolean>) => void;
|
|
11
|
+
export type NymphBeforeDeleteEntityCallback = (nymph: Nymph, entity: EntityInterface) => void;
|
|
12
|
+
export type NymphAfterDeleteEntityCallback = (nymph: Nymph, result: Promise<boolean>) => void;
|
|
13
|
+
export type NymphBeforeDeleteEntityByIDCallback = (nymph: Nymph, guid: string, className?: string) => void;
|
|
14
|
+
export type NymphAfterDeleteEntityByIDCallback = (nymph: Nymph, result: Promise<boolean>) => void;
|
|
15
|
+
export type NymphBeforeNewUIDCallback = (nymph: Nymph, name: string) => void;
|
|
16
|
+
export type NymphAfterNewUIDCallback = (nymph: Nymph, result: Promise<number | null>) => void;
|
|
17
|
+
export type NymphBeforeSetUIDCallback = (nymph: Nymph, name: string, value: number) => void;
|
|
18
|
+
export type NymphAfterSetUIDCallback = (nymph: Nymph, result: Promise<boolean>) => void;
|
|
19
|
+
export type NymphBeforeRenameUIDCallback = (nymph: Nymph, oldName: string, newName: string) => void;
|
|
20
|
+
export type NymphAfterRenameUIDCallback = (nymph: Nymph, result: Promise<boolean>) => void;
|
|
21
|
+
export type NymphBeforeDeleteUIDCallback = (nymph: Nymph, name: string) => void;
|
|
22
|
+
export type NymphAfterDeleteUIDCallback = (nymph: Nymph, result: Promise<boolean>) => void;
|
|
23
|
+
export type Options<T extends EntityConstructor = EntityConstructor> = {
|
|
24
24
|
class?: T;
|
|
25
25
|
limit?: number;
|
|
26
26
|
offset?: number;
|
|
27
27
|
reverse?: boolean;
|
|
28
28
|
sort?: 'cdate' | 'mdate';
|
|
29
|
-
return?: 'entity' | 'guid';
|
|
29
|
+
return?: 'entity' | 'guid' | 'count';
|
|
30
30
|
source?: string;
|
|
31
31
|
skipCache?: boolean;
|
|
32
32
|
skipAc?: boolean;
|
|
33
33
|
};
|
|
34
|
-
export
|
|
35
|
-
export
|
|
36
|
-
|
|
34
|
+
export type Clause<C> = C | Exclude<C, undefined>[];
|
|
35
|
+
export type OrWithTime<T> = T | [string, null, string];
|
|
36
|
+
type PrimitiveSelector = {
|
|
37
37
|
guid?: string;
|
|
38
38
|
'!guid'?: PrimitiveSelector['guid'];
|
|
39
39
|
tag?: string;
|
|
@@ -69,7 +69,7 @@ declare type PrimitiveSelector = {
|
|
|
69
69
|
selector?: PrimitiveSelector;
|
|
70
70
|
'!selector'?: PrimitiveSelector['selector'];
|
|
71
71
|
};
|
|
72
|
-
export
|
|
72
|
+
export type Selector = {
|
|
73
73
|
type: '&' | '|' | '!&' | '!|';
|
|
74
74
|
guid?: Clause<PrimitiveSelector['guid']>;
|
|
75
75
|
'!guid'?: Clause<PrimitiveSelector['guid']>;
|
|
@@ -106,16 +106,16 @@ export declare type Selector = {
|
|
|
106
106
|
selector?: Clause<Selector>;
|
|
107
107
|
'!selector'?: Selector['selector'];
|
|
108
108
|
};
|
|
109
|
-
export
|
|
109
|
+
export type FormattedSelector = {
|
|
110
110
|
type: '&' | '|' | '!&' | '!|';
|
|
111
|
-
guid?: PrimitiveSelector['guid'][];
|
|
112
|
-
'!guid'?: PrimitiveSelector['guid'][];
|
|
113
|
-
tag?: PrimitiveSelector['tag'][];
|
|
114
|
-
'!tag'?: PrimitiveSelector['tag'][];
|
|
115
|
-
defined?: PrimitiveSelector['defined'][];
|
|
116
|
-
'!defined'?: PrimitiveSelector['defined'][];
|
|
117
|
-
truthy?: PrimitiveSelector['truthy'][];
|
|
118
|
-
'!truthy'?: PrimitiveSelector['truthy'][];
|
|
111
|
+
guid?: PrimitiveSelector['guid'][][];
|
|
112
|
+
'!guid'?: PrimitiveSelector['guid'][][];
|
|
113
|
+
tag?: PrimitiveSelector['tag'][][];
|
|
114
|
+
'!tag'?: PrimitiveSelector['tag'][][];
|
|
115
|
+
defined?: PrimitiveSelector['defined'][][];
|
|
116
|
+
'!defined'?: PrimitiveSelector['defined'][][];
|
|
117
|
+
truthy?: PrimitiveSelector['truthy'][][];
|
|
118
|
+
'!truthy'?: PrimitiveSelector['truthy'][][];
|
|
119
119
|
equal?: PrimitiveSelector['equal'][];
|
|
120
120
|
'!equal'?: PrimitiveSelector['equal'][];
|
|
121
121
|
contain?: PrimitiveSelector['contain'][];
|
|
@@ -158,7 +158,7 @@ export interface TilmeldInterface {
|
|
|
158
158
|
gatekeeper(ability?: string): boolean;
|
|
159
159
|
authenticate(): void;
|
|
160
160
|
clearSession(): void;
|
|
161
|
-
extractToken(token: string): any
|
|
161
|
+
extractToken(token: string): Promise<any>;
|
|
162
162
|
fillSession(user: any): void;
|
|
163
163
|
checkClientUIDPermissions(name: string, type?: TilmeldAccessLevels): boolean;
|
|
164
164
|
}
|