@prestizni-software/client-dem 0.5.21 → 0.5.23
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/dist/AutoUpdateClientManagerClass.d.ts +15 -15
- package/dist/AutoUpdateClientManagerClass.js +64 -38
- package/dist/AutoUpdateClientManagerClass.js.map +1 -1
- package/dist/AutoUpdateManagerClass.d.ts +11 -12
- package/dist/AutoUpdateManagerClass.js +13 -8
- package/dist/AutoUpdateManagerClass.js.map +1 -1
- package/dist/AutoUpdatedClientObjectClass.d.ts +31 -33
- package/dist/AutoUpdatedClientObjectClass.js +86 -45
- package/dist/AutoUpdatedClientObjectClass.js.map +1 -1
- package/dist/CommonTypes.d.ts +77 -32
- package/dist/CommonTypes.js.map +1 -1
- package/dist/client.d.ts +4 -5
- package/dist/client.js +4 -5
- package/dist/client.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -1,35 +1,35 @@
|
|
|
1
1
|
import { Socket } from "socket.io-client";
|
|
2
|
-
import { AutoUpdateManager } from "./AutoUpdateManagerClass";
|
|
3
|
-
import {
|
|
4
|
-
import { Constructor, IsData, LoggersType,
|
|
2
|
+
import { AutoUpdateManager } from "./AutoUpdateManagerClass.js";
|
|
3
|
+
import { DEMClientCallbacks } from "./AutoUpdatedClientObjectClass.js";
|
|
4
|
+
import { Constructor, IsData, LoggersType, IAutoUpdatedClientObjectBase, MongoId, IAutoUpdateManager } from "./CommonTypes.js";
|
|
5
5
|
import { EventEmitter } from "eventemitter3";
|
|
6
|
-
export type WrappedInstances<T extends Record<string, Constructor<
|
|
7
|
-
[K in keyof T]: AutoUpdateClientManager<InstanceType<T[K]>>;
|
|
6
|
+
export type WrappedInstances<T extends Record<string, Constructor<IAutoUpdatedClientObjectBase>>> = {
|
|
7
|
+
[K in keyof T]: AutoUpdateClientManager<InstanceType<T[K]>, WrappedInstances<T>>;
|
|
8
8
|
};
|
|
9
|
-
export declare function AUCManagerFactory<T extends Record<string, Constructor<
|
|
10
|
-
[K in keyof T]: Partial<DEMClientCallbacks<
|
|
11
|
-
} & Partial<DEMClientCallbacks<
|
|
12
|
-
export declare class AutoUpdateClientManager<T extends
|
|
9
|
+
export declare function AUCManagerFactory<T extends Record<string, Constructor<IAutoUpdatedClientObjectBase>>>(defs: T, loggers: LoggersType, socket: Socket, doDebug?: boolean, emitter?: EventEmitter, callbacks?: Partial<{
|
|
10
|
+
[K in keyof T]: Partial<DEMClientCallbacks<any>>;
|
|
11
|
+
} & Partial<DEMClientCallbacks<IAutoUpdatedClientObjectBase>>>): Promise<WrappedInstances<T>>;
|
|
12
|
+
export declare class AutoUpdateClientManager<T extends IAutoUpdatedClientObjectBase, M extends Record<string, IAutoUpdateManager<any>> = Record<string, IAutoUpdateManager<any>>> extends AutoUpdateManager<T, M> {
|
|
13
13
|
protected objects_: {
|
|
14
14
|
[_id: string]: T;
|
|
15
15
|
};
|
|
16
|
-
readonly managers:
|
|
17
|
-
callbacks: DEMClientCallbacks<
|
|
16
|
+
readonly managers: M;
|
|
17
|
+
callbacks: DEMClientCallbacks<any>;
|
|
18
18
|
readonly socket: Socket;
|
|
19
19
|
totalObjects: number;
|
|
20
20
|
loadedObjects: number;
|
|
21
|
-
constructor(classParam: Constructor<T>, className: string, socket: Socket, loggers: LoggersType, managers:
|
|
21
|
+
constructor(classParam: Constructor<T>, className: string, socket: Socket, loggers: LoggersType, managers: M, emitter: EventEmitter, callbacks: DEMClientCallbacks<any>);
|
|
22
22
|
private startSocketListeners;
|
|
23
23
|
loadFromServer(t?: {
|
|
24
24
|
s: number;
|
|
25
25
|
f: number;
|
|
26
26
|
}): Promise<void>;
|
|
27
27
|
private checkLoadability;
|
|
28
|
-
getObject(_id?:
|
|
28
|
+
getObject(_id?: MongoId): T | null | undefined;
|
|
29
29
|
get objects(): {
|
|
30
30
|
[_id: string]: T;
|
|
31
31
|
};
|
|
32
32
|
get objectsAsArray(): T[];
|
|
33
|
-
handleGetMissingObject(_id:
|
|
34
|
-
createObject(data: Omit<IsData<
|
|
33
|
+
handleGetMissingObject(_id: MongoId): Promise<T>;
|
|
34
|
+
createObject(data: Omit<IsData<T>, "_id">): Promise<T>;
|
|
35
35
|
}
|
|
@@ -1,19 +1,20 @@
|
|
|
1
|
-
import { AutoUpdateManager } from "./AutoUpdateManagerClass";
|
|
2
|
-
import { globalCache } from "./CommonTypes";
|
|
1
|
+
import { AutoUpdateManager } from "./AutoUpdateManagerClass.js";
|
|
2
|
+
import { globalCache, } from "./CommonTypes.js";
|
|
3
3
|
import { EventEmitter } from "eventemitter3";
|
|
4
4
|
export async function AUCManagerFactory(defs, loggers, socket, doDebug = false, emitter = new EventEmitter(), callbacks = {}) {
|
|
5
5
|
const defaultCallbacks = {
|
|
6
|
-
new: callbacks.new ?? ((
|
|
7
|
-
update: callbacks.update ??
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
new: callbacks.new ?? ((_x) => { }),
|
|
7
|
+
update: callbacks.update ??
|
|
8
|
+
((_x, _y) => { }),
|
|
9
|
+
delete: callbacks.delete ?? ((_x) => { }),
|
|
10
|
+
progress: callbacks.progress ?? ((_x) => { }),
|
|
10
11
|
};
|
|
11
12
|
if (!doDebug) {
|
|
12
13
|
loggers.debug = (_) => { };
|
|
13
14
|
}
|
|
14
15
|
let wholeProgress = 0;
|
|
15
16
|
let numberOfManagers = Object.keys(defs).length || 1;
|
|
16
|
-
const progressUpdater = callbacks.progress ?? ((
|
|
17
|
+
const progressUpdater = callbacks.progress ?? ((_x) => { });
|
|
17
18
|
const innerProgressUpdater = (fraction) => {
|
|
18
19
|
progressUpdater(wholeProgress + (numberOfManagers == 0 ? 1 : fraction / numberOfManagers));
|
|
19
20
|
if (fraction == 1)
|
|
@@ -33,13 +34,16 @@ export async function AUCManagerFactory(defs, loggers, socket, doDebug = false,
|
|
|
33
34
|
managers[key] = c;
|
|
34
35
|
}
|
|
35
36
|
catch (error) {
|
|
36
|
-
if (error
|
|
37
|
+
if (error instanceof Error &&
|
|
38
|
+
error.message.includes("Local type does not match server type for manager"))
|
|
37
39
|
throw error;
|
|
38
40
|
let message = `Creating manager for: ${key}`;
|
|
39
41
|
message += "\n Error creating manager: " + key;
|
|
40
|
-
message +=
|
|
42
|
+
message +=
|
|
43
|
+
"\n " + (error instanceof Error ? error.message : String(error));
|
|
41
44
|
loggers.error?.(message);
|
|
42
|
-
|
|
45
|
+
if (error instanceof Error && error.stack)
|
|
46
|
+
loggers.error?.(error.stack);
|
|
43
47
|
continue;
|
|
44
48
|
}
|
|
45
49
|
}
|
|
@@ -48,10 +52,11 @@ export async function AUCManagerFactory(defs, loggers, socket, doDebug = false,
|
|
|
48
52
|
const loadPromises = Object.keys(defs).map(async (key) => {
|
|
49
53
|
let temp2 = { s: Date.now(), f: 0 };
|
|
50
54
|
try {
|
|
51
|
-
|
|
55
|
+
const manager = managers[key];
|
|
56
|
+
if (!manager) {
|
|
52
57
|
throw new Error(`Manager ${key} was not created due to previous error`);
|
|
53
58
|
}
|
|
54
|
-
await
|
|
59
|
+
await manager.loadFromServer(temp2);
|
|
55
60
|
loggers.debug?.("Loaded data from server for manager: " +
|
|
56
61
|
key +
|
|
57
62
|
" in " +
|
|
@@ -59,13 +64,16 @@ export async function AUCManagerFactory(defs, loggers, socket, doDebug = false,
|
|
|
59
64
|
"ms");
|
|
60
65
|
}
|
|
61
66
|
catch (error) {
|
|
62
|
-
if (error
|
|
67
|
+
if (error instanceof Error &&
|
|
68
|
+
error.message.includes("Local type does not match server type for manager"))
|
|
63
69
|
throw error;
|
|
64
70
|
let message = "Error loading data from server for manager: " + key;
|
|
65
|
-
message +=
|
|
71
|
+
message +=
|
|
72
|
+
"\n " + (error instanceof Error ? error.message : String(error));
|
|
66
73
|
message += "\n Failed in " + (temp2.f - temp2.s) + "ms";
|
|
67
74
|
loggers.error?.(message);
|
|
68
|
-
|
|
75
|
+
if (error instanceof Error && error.stack)
|
|
76
|
+
loggers.error?.(message + "\n" + error.stack);
|
|
69
77
|
}
|
|
70
78
|
});
|
|
71
79
|
await Promise.all(loadPromises);
|
|
@@ -102,8 +110,9 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
102
110
|
" from manager " +
|
|
103
111
|
this.className +
|
|
104
112
|
" - " +
|
|
105
|
-
error.message);
|
|
106
|
-
|
|
113
|
+
(error instanceof Error ? error.message : String(error)));
|
|
114
|
+
if (error instanceof Error && error.stack)
|
|
115
|
+
this.loggers.error(error.stack);
|
|
107
116
|
}
|
|
108
117
|
});
|
|
109
118
|
this.socket.on("delete" + this.className, async (id) => {
|
|
@@ -118,8 +127,9 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
118
127
|
this.className +
|
|
119
128
|
" - " +
|
|
120
129
|
id);
|
|
121
|
-
this.loggers.error(error.message);
|
|
122
|
-
|
|
130
|
+
this.loggers.error(error instanceof Error ? error.message : String(error));
|
|
131
|
+
if (error instanceof Error && error.stack)
|
|
132
|
+
this.loggers.error(error.stack);
|
|
123
133
|
}
|
|
124
134
|
});
|
|
125
135
|
}
|
|
@@ -173,8 +183,9 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
173
183
|
" from manager " +
|
|
174
184
|
this.className +
|
|
175
185
|
" - " +
|
|
176
|
-
error.message);
|
|
177
|
-
|
|
186
|
+
(error instanceof Error ? error.message : String(error)));
|
|
187
|
+
if (error instanceof Error && error.stack)
|
|
188
|
+
this.loggers.error(error.stack);
|
|
178
189
|
}
|
|
179
190
|
}
|
|
180
191
|
const objectPromises = Object.keys(this.objects_).map(async (id) => {
|
|
@@ -183,7 +194,9 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
183
194
|
await obj.isPreLoadedAsync();
|
|
184
195
|
await obj.loadMissingReferences();
|
|
185
196
|
this.loadedObjects += 1;
|
|
186
|
-
if (this.totalObjects < 100 ||
|
|
197
|
+
if (this.totalObjects < 100 ||
|
|
198
|
+
this.loadedObjects % Math.ceil(this.totalObjects / 100) === 0 ||
|
|
199
|
+
this.loadedObjects === this.totalObjects) {
|
|
187
200
|
this.callbacks.progress(this.loadedObjects / this.totalObjects);
|
|
188
201
|
}
|
|
189
202
|
}
|
|
@@ -193,12 +206,17 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
193
206
|
" from manager " +
|
|
194
207
|
this.className +
|
|
195
208
|
" - " +
|
|
196
|
-
error.message);
|
|
197
|
-
|
|
209
|
+
(error instanceof Error ? error.message : String(error)));
|
|
210
|
+
if (error instanceof Error && error.stack)
|
|
211
|
+
this.loggers.error(error.stack);
|
|
198
212
|
}
|
|
199
213
|
});
|
|
200
214
|
await Promise.all(objectPromises);
|
|
201
|
-
this.loggers.info("Loaded " +
|
|
215
|
+
this.loggers.info("Loaded " +
|
|
216
|
+
this.className +
|
|
217
|
+
" - [" +
|
|
218
|
+
Object.keys(this.objects_).length +
|
|
219
|
+
"] entries");
|
|
202
220
|
this.startSocketListeners();
|
|
203
221
|
this.isLoaded_ = true;
|
|
204
222
|
resolve();
|
|
@@ -220,7 +238,7 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
220
238
|
":\n" +
|
|
221
239
|
extraProperties.join("\n");
|
|
222
240
|
}
|
|
223
|
-
const filteredProperties = data.properties.filter(p => p !== "_id");
|
|
241
|
+
const filteredProperties = data.properties.filter((p) => p !== "_id");
|
|
224
242
|
if (filteredProperties.length > 0) {
|
|
225
243
|
allowedToLoad = false;
|
|
226
244
|
errorMessage +=
|
|
@@ -234,7 +252,7 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
234
252
|
getObject(_id) {
|
|
235
253
|
if (!_id)
|
|
236
254
|
return null;
|
|
237
|
-
return this.objects_[_id] || undefined;
|
|
255
|
+
return this.objects_[_id.toString()] || undefined;
|
|
238
256
|
}
|
|
239
257
|
get objects() {
|
|
240
258
|
return this.objects_;
|
|
@@ -243,23 +261,27 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
243
261
|
return Object.values(this.objects_);
|
|
244
262
|
}
|
|
245
263
|
async handleGetMissingObject(_id) {
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
264
|
+
const _idStr = _id.toString();
|
|
265
|
+
if (this.getObject(_idStr))
|
|
266
|
+
return this.getObject(_idStr);
|
|
267
|
+
if (!_idStr)
|
|
249
268
|
throw new Error("No id.");
|
|
250
269
|
if (!this.managers)
|
|
251
270
|
throw new Error(`No managers.`);
|
|
252
|
-
if (this.objects_[
|
|
253
|
-
return this.objects_[
|
|
254
|
-
const object = new this.classParam(this.classParam, this.socket,
|
|
271
|
+
if (this.objects_[_idStr])
|
|
272
|
+
return this.objects_[_idStr];
|
|
273
|
+
const object = new this.classParam(this.classParam, this.socket, _idStr, this.loggers, this.className, this, this.callbacks, this.emitter);
|
|
255
274
|
await object.waitForPreloaded();
|
|
256
275
|
if (object.loadError)
|
|
257
276
|
throw new Error(object.loadError);
|
|
258
|
-
this.objects_[object._id] = object;
|
|
259
|
-
globalCache.objects[object._id] = {
|
|
277
|
+
this.objects_[object._id.toString()] = object;
|
|
278
|
+
globalCache.objects[object._id.toString()] = {
|
|
279
|
+
className: this.className,
|
|
280
|
+
object: object,
|
|
281
|
+
};
|
|
260
282
|
await object.isPreLoadedAsync();
|
|
261
283
|
await object.loadMissingReferences();
|
|
262
|
-
this.callbacks.new(
|
|
284
|
+
this.callbacks.new(object);
|
|
263
285
|
return object;
|
|
264
286
|
}
|
|
265
287
|
async createObject(data) {
|
|
@@ -269,8 +291,12 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
269
291
|
try {
|
|
270
292
|
const object = new this.classParam(this.classParam, this.socket, data, this.loggers, this.className, this, this.callbacks, this.emitter);
|
|
271
293
|
await object.waitForPreloaded();
|
|
272
|
-
const id = object._id;
|
|
294
|
+
const id = object._id.toString();
|
|
273
295
|
this.objects_[id] = object;
|
|
296
|
+
globalCache.objects[id] = {
|
|
297
|
+
className: this.className,
|
|
298
|
+
object: object,
|
|
299
|
+
};
|
|
274
300
|
await this.objects_[id].isPreLoadedAsync();
|
|
275
301
|
await this.objects_[id].loadMissingReferences();
|
|
276
302
|
await this.objects_[id].contactChildren();
|
|
@@ -279,7 +305,7 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
279
305
|
}
|
|
280
306
|
catch (error) {
|
|
281
307
|
this.loggers.error("Error creating new object from manager " + this.className);
|
|
282
|
-
this.loggers.error(error.message);
|
|
308
|
+
this.loggers.error(error instanceof Error ? error.message : String(error));
|
|
283
309
|
throw error;
|
|
284
310
|
}
|
|
285
311
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoUpdateClientManagerClass.js","sourceRoot":"","sources":["../AutoUpdateClientManagerClass.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AutoUpdateClientManagerClass.js","sourceRoot":"","sources":["../AutoUpdateClientManagerClass.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,35 +1,34 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Constructor, EventEmitter3, LoggersType, Cache } from "./CommonTypes";
|
|
1
|
+
import { IAutoUpdatedClientObjectBase, MongoId, IsData, IAutoUpdateManager, Constructor, EventEmitter3, LoggersType, DEMCache } from "./CommonTypes.js";
|
|
3
2
|
import "reflect-metadata";
|
|
4
|
-
export declare abstract class AutoUpdateManager<T extends
|
|
3
|
+
export declare abstract class AutoUpdateManager<T extends IAutoUpdatedClientObjectBase, M extends Record<string, IAutoUpdateManager<any>> = Record<string, IAutoUpdateManager<any>>> implements IAutoUpdateManager<T> {
|
|
5
4
|
protected abstract objects_: {
|
|
6
5
|
[_id: string]: T;
|
|
7
6
|
};
|
|
8
7
|
protected isLoaded_: boolean;
|
|
9
|
-
readonly socket:
|
|
8
|
+
readonly socket: unknown;
|
|
10
9
|
protected classParam: Constructor<T>;
|
|
11
|
-
protected properties:
|
|
10
|
+
protected properties: string[];
|
|
12
11
|
readonly className: string;
|
|
13
|
-
readonly cache:
|
|
14
|
-
readonly managers:
|
|
12
|
+
readonly cache: DEMCache;
|
|
13
|
+
readonly managers: M;
|
|
15
14
|
protected preloaded: boolean;
|
|
16
15
|
protected waitingToResolveReferences: {
|
|
17
16
|
[_id: string]: string;
|
|
18
17
|
};
|
|
19
18
|
protected loggers: LoggersType;
|
|
20
19
|
protected emitter: EventEmitter3;
|
|
21
|
-
constructor(classParam: Constructor<T>, className: string, socket:
|
|
20
|
+
constructor(classParam: Constructor<T>, className: string, socket: unknown, loggers: LoggersType, managers: M, emitter: EventEmitter3);
|
|
22
21
|
get isLoaded(): boolean;
|
|
23
22
|
close(): void;
|
|
24
23
|
loadReferences(): Promise<void>;
|
|
25
|
-
deleteObject(_id:
|
|
24
|
+
deleteObject(_id: MongoId): Promise<{
|
|
26
25
|
success: boolean;
|
|
27
26
|
message: string;
|
|
28
27
|
}>;
|
|
29
28
|
get objectIDs(): string[];
|
|
30
|
-
abstract handleGetMissingObject(_id:
|
|
31
|
-
abstract createObject(data: Omit<
|
|
32
|
-
abstract getObject(_id?:
|
|
29
|
+
abstract handleGetMissingObject(_id: MongoId): Promise<T>;
|
|
30
|
+
abstract createObject(data: Omit<IsData<T>, "_id">): Promise<T>;
|
|
31
|
+
abstract getObject(_id?: MongoId): T | null | undefined;
|
|
33
32
|
abstract get objects(): {
|
|
34
33
|
[_id: string]: T;
|
|
35
34
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { globalCache, } from "./CommonTypes";
|
|
1
|
+
import { globalCache, } from "./CommonTypes.js";
|
|
2
2
|
import "reflect-metadata";
|
|
3
3
|
export class AutoUpdateManager {
|
|
4
4
|
isLoaded_ = false;
|
|
@@ -20,13 +20,16 @@ export class AutoUpdateManager {
|
|
|
20
20
|
};
|
|
21
21
|
emitter;
|
|
22
22
|
constructor(classParam, className, socket, loggers, managers, emitter) {
|
|
23
|
-
console.log("DEBUG: AutoUpdateManager constructor, className=" +
|
|
23
|
+
console.log("DEBUG: AutoUpdateManager constructor, className=" +
|
|
24
|
+
className +
|
|
25
|
+
", socket keys=" +
|
|
26
|
+
Object.keys(socket || {}).join(","));
|
|
24
27
|
this.className = className;
|
|
25
28
|
this.managers = managers;
|
|
26
29
|
this.emitter = emitter;
|
|
27
30
|
this.socket = socket;
|
|
28
31
|
this.classParam = classParam;
|
|
29
|
-
this.properties = Reflect.getMetadata("props", classParam.prototype);
|
|
32
|
+
this.properties = Reflect.getMetadata("props", classParam.prototype) || [];
|
|
30
33
|
this.loggers.debug = (s) => loggers.debug?.("[DEM - " + className + " MANAGER] " + s);
|
|
31
34
|
this.loggers.info = (s) => loggers.info?.("[DEM - " + className + " MANAGER] " + s);
|
|
32
35
|
this.loggers.error = (s) => loggers.error?.("[DEM - " + className + " MANAGER] " + s);
|
|
@@ -40,7 +43,8 @@ export class AutoUpdateManager {
|
|
|
40
43
|
delete this.objects_[id];
|
|
41
44
|
delete globalCache.objects[id];
|
|
42
45
|
}
|
|
43
|
-
this.socket.disconnect?.() ??
|
|
46
|
+
this.socket.disconnect?.() ??
|
|
47
|
+
this.socket.disconnectSockets?.(true);
|
|
44
48
|
this.loggers.info("Goodbye, see you next time!");
|
|
45
49
|
}
|
|
46
50
|
async loadReferences() {
|
|
@@ -50,13 +54,14 @@ export class AutoUpdateManager {
|
|
|
50
54
|
this.isLoaded_ = true;
|
|
51
55
|
}
|
|
52
56
|
async deleteObject(_id) {
|
|
53
|
-
const
|
|
57
|
+
const _idStr = _id.toString();
|
|
58
|
+
const o = this.objects_[_idStr];
|
|
54
59
|
const res = await o?.destroy(true);
|
|
55
60
|
if (res?.success) {
|
|
56
|
-
delete this.objects_[
|
|
57
|
-
delete globalCache.objects[
|
|
61
|
+
delete this.objects_[_idStr];
|
|
62
|
+
delete globalCache.objects[_idStr];
|
|
58
63
|
}
|
|
59
|
-
|
|
64
|
+
o?.callbacks?.delete?.(this);
|
|
60
65
|
return res ?? { success: true, message: "Already gone" };
|
|
61
66
|
}
|
|
62
67
|
get objectIDs() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoUpdateManagerClass.js","sourceRoot":"","sources":["../AutoUpdateManagerClass.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AutoUpdateManagerClass.js","sourceRoot":"","sources":["../AutoUpdateManagerClass.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,77 +1,75 @@
|
|
|
1
1
|
import "reflect-metadata";
|
|
2
|
-
import { Constructor, EventEmitter3, IsData, LoggersType, PathValueOf, ServerUpdateRequest, Paths,
|
|
2
|
+
import { Constructor, EventEmitter3, IsData, LoggersType, PathValueOf, ServerUpdateRequest, Paths, ExtractedData, MongoId, IAutoUpdatedClientObject, IAutoUpdatedClientObjectBase, IAutoUpdateManager, DEMCache } from "./CommonTypes.js";
|
|
3
3
|
import { ObjectId } from "bson";
|
|
4
4
|
import { Socket } from "socket.io-client";
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
delete: (obj: T) => Promise<void> | void;
|
|
5
|
+
export type DEMClientCallbacks<T extends object> = {
|
|
6
|
+
new: (obj: IAutoUpdatedClientObject<T>) => Promise<void> | void;
|
|
7
|
+
update: (obj: IAutoUpdatedClientObject<T>, key: string) => Promise<void> | void;
|
|
8
|
+
delete: (obj: IAutoUpdatedClientObject<T>) => Promise<void> | void;
|
|
10
9
|
progress: (percent: number) => void;
|
|
11
10
|
};
|
|
12
|
-
type SocketType = Socket
|
|
13
|
-
export declare abstract class AutoUpdatedClientObject<T> {
|
|
14
|
-
protected entry:
|
|
15
|
-
preLoad: any;
|
|
16
|
-
registerSocket: any;
|
|
17
|
-
readyLoggers: any;
|
|
18
|
-
loadFromDB(a: any): any;
|
|
19
|
-
setValue_(a: any, b: any): any;
|
|
11
|
+
type SocketType = Socket;
|
|
12
|
+
export declare abstract class AutoUpdatedClientObject<T extends IAutoUpdatedClientObjectBase, M extends Record<string, IAutoUpdateManager<any>> = Record<string, IAutoUpdateManager<any>>> implements IAutoUpdatedClientObject<T> {
|
|
13
|
+
protected entry: unknown;
|
|
20
14
|
protected readonly socket: SocketType;
|
|
21
15
|
protected data: IsData<T>;
|
|
22
16
|
protected readonly isServer: boolean;
|
|
23
|
-
abstract readonly _id:
|
|
17
|
+
abstract readonly _id: MongoId;
|
|
24
18
|
protected readonly loggers: LoggersType;
|
|
25
19
|
protected isLoading: boolean;
|
|
26
|
-
|
|
20
|
+
loadError?: string;
|
|
27
21
|
protected isLoadingReferences: boolean;
|
|
28
22
|
protected checkedMissingRefs: boolean;
|
|
29
23
|
protected readonly emitter: EventEmitter3;
|
|
30
|
-
readonly properties:
|
|
24
|
+
readonly properties: string[];
|
|
31
25
|
readonly classParam: Constructor<T>;
|
|
32
26
|
readonly className: string;
|
|
33
|
-
parentManager:
|
|
27
|
+
parentManager: IAutoUpdateManager<T> & {
|
|
28
|
+
cache: DEMCache;
|
|
29
|
+
managers: M;
|
|
30
|
+
};
|
|
34
31
|
private readonly EmitterID;
|
|
35
32
|
protected readonly toChangeOnParents: {
|
|
36
33
|
key: string;
|
|
37
|
-
value:
|
|
34
|
+
value: unknown;
|
|
38
35
|
}[];
|
|
39
36
|
callbacks: DEMClientCallbacks<T>;
|
|
40
37
|
private readonly loadReferencesAsync;
|
|
41
38
|
/** @deprecated Use loadReferencesAsync instead */
|
|
42
39
|
private readonly loadShit;
|
|
43
|
-
constructor(classParam?: Constructor<T>, socket?: SocketType, data?: string | IsData<T>, loggers?: LoggersType, className?: string, parentManager?:
|
|
40
|
+
constructor(classParam?: Constructor<T>, socket?: SocketType, data?: string | IsData<T>, loggers?: LoggersType, className?: string, parentManager?: IAutoUpdateManager<IAutoUpdatedClientObject<any>>, callback?: DEMClientCallbacks<T>, emitter?: EventEmitter3, isServer?: boolean);
|
|
44
41
|
waitForPreloaded(): Promise<void>;
|
|
45
42
|
protected handleNewObject(data: IsData<T>): void;
|
|
46
|
-
get extractedData(): ExtractedData<T,
|
|
43
|
+
get extractedData(): ExtractedData<T, IAutoUpdatedClientObject<any>>;
|
|
47
44
|
get isLoaded(): boolean;
|
|
48
45
|
isPreLoadedAsync(): Promise<boolean>;
|
|
49
46
|
loadMissingReferences(): Promise<void>;
|
|
50
47
|
private openSockets;
|
|
51
48
|
private handleUpdateRequest;
|
|
52
49
|
protected generateSettersAndGetters(): void;
|
|
53
|
-
getValue
|
|
54
|
-
|
|
55
|
-
|
|
50
|
+
getValue<K extends Paths<T, IAutoUpdatedClientObject<any>>>(key_: K): PathValueOf<T, K>;
|
|
51
|
+
getValue(key_: string): any;
|
|
52
|
+
protected findReference(id: string | ObjectId, key: string): IAutoUpdatedClientObject<any> | undefined;
|
|
53
|
+
setValue<K extends string>(key: K, val: PathValueOf<IsData<T>, K>): Promise<{
|
|
56
54
|
success: boolean;
|
|
57
55
|
msg: string;
|
|
58
56
|
}>;
|
|
59
|
-
protected setValue__(key:
|
|
57
|
+
protected setValue__(key: string, val: unknown, silent?: boolean, noGet?: boolean, noUpdate?: boolean, isParentUpdate?: boolean): Promise<{
|
|
60
58
|
success: boolean;
|
|
61
59
|
msg: string;
|
|
62
60
|
}>;
|
|
63
|
-
protected setValueInternal(key: string, value:
|
|
61
|
+
protected setValueInternal(key: string, value: unknown, silent?: boolean, noUpdate?: boolean): Promise<{
|
|
64
62
|
success: boolean;
|
|
65
63
|
msg: string;
|
|
66
64
|
}>;
|
|
67
|
-
protected makeUpdate(key: string, value:
|
|
68
|
-
protected resolveReference(id: string): Promise<
|
|
65
|
+
protected makeUpdate(key: string, value: unknown): ServerUpdateRequest<T>;
|
|
66
|
+
protected resolveReference(id: string): Promise<IAutoUpdatedClientObject<any> | null>;
|
|
69
67
|
private findAndLoadReferences;
|
|
70
68
|
protected wipeSelf(): Promise<void>;
|
|
71
69
|
destroyImmediate(): void;
|
|
72
70
|
private loadForceReferences;
|
|
73
71
|
private handleLoad;
|
|
74
|
-
protected createdWithParent(pointer: string[], parent:
|
|
72
|
+
protected createdWithParent(pointer: string[], parent: Record<string, unknown>): Promise<void>;
|
|
75
73
|
destroy(once?: boolean): Promise<{
|
|
76
74
|
success: boolean;
|
|
77
75
|
message: string;
|
|
@@ -79,11 +77,11 @@ export declare abstract class AutoUpdatedClientObject<T> {
|
|
|
79
77
|
private checkForMissingRefs;
|
|
80
78
|
private findMissingObjectReference;
|
|
81
79
|
contactChildren(): Promise<void>;
|
|
82
|
-
onUpdate(): Promise<void>;
|
|
80
|
+
onUpdate(noUpdate?: boolean): Promise<void>;
|
|
83
81
|
}
|
|
84
|
-
export declare function processIsRefProperties(instance:
|
|
82
|
+
export declare function processIsRefProperties(instance: Record<string, unknown>, target: object, prefix: string | null, allProps: string[], newData: Record<string, unknown>, loggers: LoggersType): {
|
|
85
83
|
allProps: string[];
|
|
86
|
-
newData:
|
|
84
|
+
newData: Record<string, unknown>;
|
|
87
85
|
};
|
|
88
|
-
export declare function getMetadataRecursive(metaKey: string, proto:
|
|
86
|
+
export declare function getMetadataRecursive(metaKey: string, proto: object | null, prop: string): unknown;
|
|
89
87
|
export {};
|