@prestizni-software/client-dem 0.5.9 → 0.5.12
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 +31 -16
- package/dist/AutoUpdateClientManagerClass.js +42 -33
- package/dist/AutoUpdateClientManagerClass.js.map +1 -1
- package/dist/AutoUpdateManagerClass.d.ts +28 -14
- package/dist/AutoUpdateManagerClass.js +6 -5
- package/dist/AutoUpdateManagerClass.js.map +1 -1
- package/dist/AutoUpdatedClientObjectClass.d.ts +29 -31
- package/dist/AutoUpdatedClientObjectClass.js +26 -29
- package/dist/AutoUpdatedClientObjectClass.js.map +1 -1
- package/dist/CommonTypes.d.ts +75 -29
- package/dist/CommonTypes.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -1,35 +1,50 @@
|
|
|
1
1
|
import { Socket } from "socket.io-client";
|
|
2
2
|
import { AutoUpdateManager } from "./AutoUpdateManagerClass";
|
|
3
|
-
import {
|
|
4
|
-
import { Constructor, IsData, LoggersType,
|
|
3
|
+
import { DEMClientCallbacks } from "./AutoUpdatedClientObjectClass";
|
|
4
|
+
import { Constructor, IsData, LoggersType, IAutoUpdatedClientObjectBase, MongoId, IAutoUpdateManager } from "./CommonTypes";
|
|
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 & {
|
|
29
|
+
parentManager: IAutoUpdateManager<T> & {
|
|
30
|
+
cache: Cache;
|
|
31
|
+
managers: M;
|
|
32
|
+
};
|
|
33
|
+
}) | null | undefined;
|
|
29
34
|
get objects(): {
|
|
30
|
-
[_id: string]: T
|
|
35
|
+
[_id: string]: T & {
|
|
36
|
+
parentManager: IAutoUpdateManager<T> & {
|
|
37
|
+
cache: Cache;
|
|
38
|
+
managers: M;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
31
41
|
};
|
|
32
|
-
get objectsAsArray(): T
|
|
33
|
-
|
|
34
|
-
|
|
42
|
+
get objectsAsArray(): (T & {
|
|
43
|
+
parentManager: IAutoUpdateManager<T> & {
|
|
44
|
+
cache: Cache;
|
|
45
|
+
managers: M;
|
|
46
|
+
};
|
|
47
|
+
})[];
|
|
48
|
+
handleGetMissingObject(_id: MongoId): Promise<T>;
|
|
49
|
+
createObject(data: Partial<IsData<T>>): Promise<T>;
|
|
35
50
|
}
|
|
@@ -3,17 +3,17 @@ import { globalCache } from "./CommonTypes";
|
|
|
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
|
-
delete: callbacks.delete ?? ((
|
|
9
|
-
progress: callbacks.progress ?? ((
|
|
6
|
+
new: callbacks.new ?? ((_x) => { }),
|
|
7
|
+
update: callbacks.update ?? ((_x, _y) => { }),
|
|
8
|
+
delete: callbacks.delete ?? ((_x) => { }),
|
|
9
|
+
progress: callbacks.progress ?? ((_x) => { }),
|
|
10
10
|
};
|
|
11
11
|
if (!doDebug) {
|
|
12
12
|
loggers.debug = (_) => { };
|
|
13
13
|
}
|
|
14
14
|
let wholeProgress = 0;
|
|
15
15
|
let numberOfManagers = Object.keys(defs).length || 1;
|
|
16
|
-
const progressUpdater = callbacks.progress ?? ((
|
|
16
|
+
const progressUpdater = callbacks.progress ?? ((_x) => { });
|
|
17
17
|
const innerProgressUpdater = (fraction) => {
|
|
18
18
|
progressUpdater(wholeProgress + (numberOfManagers == 0 ? 1 : fraction / numberOfManagers));
|
|
19
19
|
if (fraction == 1)
|
|
@@ -33,13 +33,14 @@ export async function AUCManagerFactory(defs, loggers, socket, doDebug = false,
|
|
|
33
33
|
managers[key] = c;
|
|
34
34
|
}
|
|
35
35
|
catch (error) {
|
|
36
|
-
if (error.message.includes("Local type does not match server type for manager"))
|
|
36
|
+
if (error instanceof Error && error.message.includes("Local type does not match server type for manager"))
|
|
37
37
|
throw error;
|
|
38
38
|
let message = `Creating manager for: ${key}`;
|
|
39
39
|
message += "\n Error creating manager: " + key;
|
|
40
|
-
message += "\n " + error.message;
|
|
40
|
+
message += "\n " + (error instanceof Error ? error.message : String(error));
|
|
41
41
|
loggers.error?.(message);
|
|
42
|
-
|
|
42
|
+
if (error instanceof Error && error.stack)
|
|
43
|
+
loggers.error?.(error.stack);
|
|
43
44
|
continue;
|
|
44
45
|
}
|
|
45
46
|
}
|
|
@@ -48,10 +49,11 @@ export async function AUCManagerFactory(defs, loggers, socket, doDebug = false,
|
|
|
48
49
|
const loadPromises = Object.keys(defs).map(async (key) => {
|
|
49
50
|
let temp2 = { s: Date.now(), f: 0 };
|
|
50
51
|
try {
|
|
51
|
-
|
|
52
|
+
const manager = managers[key];
|
|
53
|
+
if (!manager) {
|
|
52
54
|
throw new Error(`Manager ${key} was not created due to previous error`);
|
|
53
55
|
}
|
|
54
|
-
await
|
|
56
|
+
await manager.loadFromServer(temp2);
|
|
55
57
|
loggers.debug?.("Loaded data from server for manager: " +
|
|
56
58
|
key +
|
|
57
59
|
" in " +
|
|
@@ -59,13 +61,14 @@ export async function AUCManagerFactory(defs, loggers, socket, doDebug = false,
|
|
|
59
61
|
"ms");
|
|
60
62
|
}
|
|
61
63
|
catch (error) {
|
|
62
|
-
if (error.message.includes("Local type does not match server type for manager"))
|
|
64
|
+
if (error instanceof Error && error.message.includes("Local type does not match server type for manager"))
|
|
63
65
|
throw error;
|
|
64
66
|
let message = "Error loading data from server for manager: " + key;
|
|
65
|
-
message += "\n " + error.message;
|
|
67
|
+
message += "\n " + (error instanceof Error ? error.message : String(error));
|
|
66
68
|
message += "\n Failed in " + (temp2.f - temp2.s) + "ms";
|
|
67
69
|
loggers.error?.(message);
|
|
68
|
-
|
|
70
|
+
if (error instanceof Error && error.stack)
|
|
71
|
+
loggers.error?.(message + "\n" + error.stack);
|
|
69
72
|
}
|
|
70
73
|
});
|
|
71
74
|
await Promise.all(loadPromises);
|
|
@@ -102,8 +105,9 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
102
105
|
" from manager " +
|
|
103
106
|
this.className +
|
|
104
107
|
" - " +
|
|
105
|
-
error.message);
|
|
106
|
-
|
|
108
|
+
(error instanceof Error ? error.message : String(error)));
|
|
109
|
+
if (error instanceof Error && error.stack)
|
|
110
|
+
this.loggers.error(error.stack);
|
|
107
111
|
}
|
|
108
112
|
});
|
|
109
113
|
this.socket.on("delete" + this.className, async (id) => {
|
|
@@ -118,8 +122,9 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
118
122
|
this.className +
|
|
119
123
|
" - " +
|
|
120
124
|
id);
|
|
121
|
-
this.loggers.error(error.message);
|
|
122
|
-
|
|
125
|
+
this.loggers.error(error instanceof Error ? error.message : String(error));
|
|
126
|
+
if (error instanceof Error && error.stack)
|
|
127
|
+
this.loggers.error(error.stack);
|
|
123
128
|
}
|
|
124
129
|
});
|
|
125
130
|
}
|
|
@@ -173,8 +178,9 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
173
178
|
" from manager " +
|
|
174
179
|
this.className +
|
|
175
180
|
" - " +
|
|
176
|
-
error.message);
|
|
177
|
-
|
|
181
|
+
(error instanceof Error ? error.message : String(error)));
|
|
182
|
+
if (error instanceof Error && error.stack)
|
|
183
|
+
this.loggers.error(error.stack);
|
|
178
184
|
}
|
|
179
185
|
}
|
|
180
186
|
const objectPromises = Object.keys(this.objects_).map(async (id) => {
|
|
@@ -193,8 +199,9 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
193
199
|
" from manager " +
|
|
194
200
|
this.className +
|
|
195
201
|
" - " +
|
|
196
|
-
error.message);
|
|
197
|
-
|
|
202
|
+
(error instanceof Error ? error.message : String(error)));
|
|
203
|
+
if (error instanceof Error && error.stack)
|
|
204
|
+
this.loggers.error(error.stack);
|
|
198
205
|
}
|
|
199
206
|
});
|
|
200
207
|
await Promise.all(objectPromises);
|
|
@@ -234,7 +241,7 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
234
241
|
getObject(_id) {
|
|
235
242
|
if (!_id)
|
|
236
243
|
return null;
|
|
237
|
-
return this.objects_[_id] || undefined;
|
|
244
|
+
return this.objects_[_id.toString()] || undefined;
|
|
238
245
|
}
|
|
239
246
|
get objects() {
|
|
240
247
|
return this.objects_;
|
|
@@ -243,23 +250,24 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
243
250
|
return Object.values(this.objects_);
|
|
244
251
|
}
|
|
245
252
|
async handleGetMissingObject(_id) {
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
253
|
+
const _idStr = _id.toString();
|
|
254
|
+
if (this.getObject(_idStr))
|
|
255
|
+
return this.getObject(_idStr);
|
|
256
|
+
if (!_idStr)
|
|
249
257
|
throw new Error("No id.");
|
|
250
258
|
if (!this.managers)
|
|
251
259
|
throw new Error(`No managers.`);
|
|
252
|
-
if (this.objects_[
|
|
253
|
-
return this.objects_[
|
|
254
|
-
const object = new this.classParam(this.classParam, this.socket,
|
|
260
|
+
if (this.objects_[_idStr])
|
|
261
|
+
return this.objects_[_idStr];
|
|
262
|
+
const object = new this.classParam(this.classParam, this.socket, _idStr, this.loggers, this.className, this, this.callbacks, this.emitter);
|
|
255
263
|
await object.waitForPreloaded();
|
|
256
264
|
if (object.loadError)
|
|
257
265
|
throw new Error(object.loadError);
|
|
258
|
-
this.objects_[object._id] = object;
|
|
259
|
-
globalCache.objects[object._id] = { className: this.className, object };
|
|
266
|
+
this.objects_[object._id.toString()] = object;
|
|
267
|
+
globalCache.objects[object._id.toString()] = { className: this.className, object: object };
|
|
260
268
|
await object.isPreLoadedAsync();
|
|
261
269
|
await object.loadMissingReferences();
|
|
262
|
-
this.callbacks.new(
|
|
270
|
+
this.callbacks.new(object);
|
|
263
271
|
return object;
|
|
264
272
|
}
|
|
265
273
|
async createObject(data) {
|
|
@@ -269,8 +277,9 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
269
277
|
try {
|
|
270
278
|
const object = new this.classParam(this.classParam, this.socket, data, this.loggers, this.className, this, this.callbacks, this.emitter);
|
|
271
279
|
await object.waitForPreloaded();
|
|
272
|
-
const id = object._id;
|
|
280
|
+
const id = object._id.toString();
|
|
273
281
|
this.objects_[id] = object;
|
|
282
|
+
globalCache.objects[id] = { className: this.className, object: object };
|
|
274
283
|
await this.objects_[id].isPreLoadedAsync();
|
|
275
284
|
await this.objects_[id].loadMissingReferences();
|
|
276
285
|
await this.objects_[id].contactChildren();
|
|
@@ -279,7 +288,7 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
|
|
|
279
288
|
}
|
|
280
289
|
catch (error) {
|
|
281
290
|
this.loggers.error("Error creating new object from manager " + this.className);
|
|
282
|
-
this.loggers.error(error.message);
|
|
291
|
+
this.loggers.error(error instanceof Error ? error.message : String(error));
|
|
283
292
|
throw error;
|
|
284
293
|
}
|
|
285
294
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoUpdateClientManagerClass.js","sourceRoot":"","sources":["../AutoUpdateClientManagerClass.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,EAA0C,WAAW,EAAkB,MAAM,eAAe,CAAC;AACpG,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAM7C,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACnC,IAAO,EACP,OAAoB,EACpB,MAAc,EACd,UAAmB,KAAK,EACxB,UAAwB,IAAI,YAAY,EAAE,EAC1C,YAA6H,EAAE;IAE/H,MAAM,gBAAgB,GAA4B;QAC9C,GAAG,EAAG,SAAiB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,GAAG,CAAC,CAAC;QAChD,MAAM,EAAG,SAAiB,CAAC,MAAM,IAAI,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,GAAG,CAAC,CAAC;QAC9D,MAAM,EAAG,SAAiB,CAAC,MAAM,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,GAAG,CAAC,CAAC;QACtD,QAAQ,EAAG,SAAiB,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,GAAG,CAAC,CAAC;KAChE,CAAC;IAEF,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,IAAI,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC;IACrD,MAAM,eAAe,GAAI,SAAiB,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;IAE5E,MAAM,oBAAoB,GAAG,CAAC,QAAgB,EAAE,EAAE;QAC9C,eAAe,CAAC,aAAa,GAAG,CAAC,gBAAgB,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC;QAC3F,IAAI,QAAQ,IAAI,CAAC;YACb,aAAa,IAAI,gBAAgB,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,gBAAgB,CAAC;IACjF,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,EAAyB,CAAC;IAC3C,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAClC,IAAI,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE3B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;YACxB,MAAM,CAAC,GAAG,IAAI,uBAAuB,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,QAAe,EAAE,OAAO,EAAE;gBACzF,GAAG,gBAAgB;gBACnB,GAAI,SAAiB,CAAC,GAAG,CAAC;gBAC1B,QAAQ,EAAE,oBAAoB;aACjC,CAAC,CAAC;YACF,QAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YAClB,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,mDAAmD,CAAC;gBAC3E,MAAM,KAAK,CAAC;YAChB,IAAI,OAAO,GAAG,yBAAyB,GAAG,EAAE,CAAC;YAC7C,OAAO,IAAI,6BAA6B,GAAG,GAAG,CAAC;YAC/C,OAAO,IAAI,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;YACjC,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;YACzB,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC7B,SAAS;QACb,CAAC;IACL,CAAC;IAED,OAAO,CAAC,KAAK,EAAE,CAAC,0BAA0B,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;IAC9E,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEvB,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACrD,IAAI,KAAK,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC;YACD,IAAI,CAAE,QAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,WAAW,GAAG,wCAAwC,CAAC,CAAC;YAC5E,CAAC;YACD,MAAO,QAAgB,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YACnD,OAAO,CAAC,KAAK,EAAE,CAAC,uCAAuC;gBACnD,GAAG;gBACH,MAAM;gBACN,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;gBACnB,IAAI,CAAC,CAAC;QACd,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YAClB,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,mDAAmD,CAAC;gBAC3E,MAAM,KAAK,CAAC;YAChB,IAAI,OAAO,GAAG,8CAA8C,GAAG,GAAG,CAAC;YACnE,OAAO,IAAI,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;YACjC,OAAO,IAAI,eAAe,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACxD,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;YACzB,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAEhC,OAAO,CAAC,KAAK,EAAE,CAAC,8CAA8C;QAC1D,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,CAAC;IACV,OAAO,CAAC,IAAI,EAAE,CAAC,yBAAyB,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC;IAEjF,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,MAAM,OAAO,uBAAgE,SAAQ,iBAAoB;IAC3F,QAAQ,GAAyB,EAAE,CAAC;IACrC,QAAQ,CAAwE;IACzF,SAAS,CAAwB;IACjB,MAAM,CAAS;IAC/B,YAAY,GAAW,CAAC,CAAC;IACzB,aAAa,GAAW,CAAC,CAAC;IAE1B,YACI,UAA0B,EAC1B,SAAiB,EACjB,MAAc,EACd,OAAoB,EACpB,QAA+E,EAC/E,OAAqB,EACrB,SAAgC;QAEhC,KAAK,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,QAAe,EAAE,OAAO,CAAC,CAAC;QACxE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAEO,oBAAoB;QACxB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,EAAU,EAAE,EAAE;YACxD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,mCAAmC,GAAG,IAAI,CAAC,SAAS,GAAG,KAAK,GAAG,EAAE,CAAC,CAAC;YACtF,IAAI,CAAC;gBACD,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;gBACvB,MAAM,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC;gBACtC,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;YAC5B,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBAClB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,uBAAuB;oBACtC,EAAE;oBACF,gBAAgB;oBAChB,IAAI,CAAC,SAAS;oBACd,KAAK;oBACL,KAAK,CAAC,OAAO,CAAC,CAAC;gBACnB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACpC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,EAAU,EAAE,EAAE;YAC3D,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,wCAAwC,GAAG,IAAI,CAAC,SAAS,GAAG,KAAK,GAAG,EAAE,CAAC,CAAC;YAC3F,IAAI,CAAC;gBACD,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;gBACvB,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;gBACxB,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YAChC,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBAClB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,8CAA8C;oBAC7D,IAAI,CAAC,SAAS;oBACd,KAAK;oBACL,EAAE,CAAC,CAAC;gBACR,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAClC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACpC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,CAA4B;QAC7C,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACxC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,GAA4D,EAAE,EAAE;gBACtH,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;oBACf,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;oBAChE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAChC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;oBAC/B,OAAO;gBACX,CAAC;gBAED,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;gBACtB,IAAI,eAAe,GAAa,EAAE,CAAC;gBACnC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACrC,IAAI,OAAO,QAAQ,KAAK,QAAQ;wBAC5B,MAAM,IAAI,KAAK,CAAC,2CAA2C,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACpF,IAAI,QAAQ,KAAK,KAAK;wBAAE,SAAS;oBACjC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;wBAClC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;;wBAE7D,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvC,CAAC;gBAED,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;gBACnF,IAAI,CAAC,aAAa,EAAE,CAAC;oBACjB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,YAAY,CAAC,CAAC;oBACnC,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;oBAChC,OAAO;gBACX,CAAC;gBAED,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB;oBACpC,IAAI,CAAC,SAAS;oBACd,MAAM;oBACN,IAAI,CAAC,GAAG,CAAC,MAAM;oBACf,WAAW,CAAC,CAAC;gBAEjB,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;oBAClE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC5C,CAAC;gBAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;gBAEpC,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;oBACxB,IAAI,CAAC;wBACD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;wBAC5I,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG;4BACtB,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;yBAC5B,CAAC;oBACN,CAAC;oBAAC,OAAO,KAAU,EAAE,CAAC;wBAClB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,uBAAuB;4BACtC,EAAE;4BACF,gBAAgB;4BAChB,IAAI,CAAC,SAAS;4BACd,KAAK;4BACL,KAAK,CAAC,OAAO,CAAC,CAAC;wBACnB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACpC,CAAC;gBACL,CAAC;gBAED,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;oBAC/D,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;oBAC9B,IAAI,CAAC;wBACD,MAAO,GAAW,CAAC,gBAAgB,EAAE,CAAC;wBACtC,MAAM,GAAG,CAAC,qBAAqB,EAAE,CAAC;wBAClC,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;wBACxB,IAAI,IAAI,CAAC,YAAY,GAAG,GAAG,IAAI,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;4BACvI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;wBACpE,CAAC;oBACL,CAAC;oBAAC,OAAO,KAAU,EAAE,CAAC;wBAClB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,uBAAuB;4BACtC,EAAE;4BACF,gBAAgB;4BAChB,IAAI,CAAC,SAAS;4BACd,KAAK;4BACL,KAAK,CAAC,OAAO,CAAC,CAAC;wBACnB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACpC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBAElC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC;gBACzG,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,OAAO,EAAE,CAAC;YACd,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QACH,IAAI,CAAC;YAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC5B,CAAC;IAEO,gBAAgB,CAAC,eAAyB,EAAE,IAA8B;QAC9E,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,IAAI,YAAY,GAAG,oDAAoD,GAAG,IAAI,CAAC,SAAS,CAAC;QACzF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,aAAa,GAAG,KAAK,CAAC;YACtB,YAAY;gBACR,qBAAqB;oBACrB,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC;wBACvB,CAAC,CAAC,wBAAwB;wBAC1B,CAAC,CAAC,qBAAqB,CAAC;oBAC5B,KAAK;oBACL,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QACD,MAAM,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;QACpE,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,aAAa,GAAG,KAAK,CAAC;YACtB,YAAY;gBACR,4BAA4B;oBAC5B,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,eAAe,CAAC;oBACtE,KAAK;oBACL,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;IAC3C,CAAC;IAED,SAAS,CAAC,GAAY;QAClB,IAAI,CAAC,GAAG;YACJ,OAAO,IAAI,CAAC;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC;IAC3C,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,IAAI,cAAc;QACd,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,GAAW;QACpC,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;YACnB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAE,CAAC;QAChC,IAAI,CAAC,GAAG;YACJ,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ;YACd,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;QACpC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YAClB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAE9B,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACxI,MAAO,MAAc,CAAC,gBAAgB,EAAE,CAAC;QACzC,IAAK,MAAc,CAAC,SAAS;YACzB,MAAM,IAAI,KAAK,CAAE,MAAc,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;QACnC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;QACxE,MAAO,MAAc,CAAC,gBAAgB,EAAE,CAAC;QACzC,MAAM,MAAM,CAAC,qBAAqB,EAAE,CAAC;QACrC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAW,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAkC;QACjD,IAAI,CAAC,IAAI,CAAC,QAAQ;YACd,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,mCAAmC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QACzE,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,IAAW,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAChJ,MAAO,MAAc,CAAC,gBAAgB,EAAE,CAAC;YACzC,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;YAC3B,MAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAS,CAAC,gBAAgB,EAAE,CAAC;YACpD,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE,CAAC;YAChD,MAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAS,CAAC,eAAe,EAAE,CAAC;YACnD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;YACtC,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YAClB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,yCAAyC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/E,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAClC,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;CACJ"}
|
|
1
|
+
{"version":3,"file":"AutoUpdateClientManagerClass.js","sourceRoot":"","sources":["../AutoUpdateClientManagerClass.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,EAA0C,WAAW,EAAuG,MAAM,eAAe,CAAC;AACzL,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAM7C,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACnC,IAAO,EACP,OAAoB,EACpB,MAAc,EACd,UAAmB,KAAK,EACxB,UAAwB,IAAI,YAAY,EAAE,EAC1C,YAAuI,EAAE;IAEzI,MAAM,gBAAgB,GAAqD;QACvE,GAAG,EAAG,SAAqF,CAAC,GAAG,IAAI,CAAC,CAAC,EAAgC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC9I,MAAM,EAAG,SAAwF,CAAC,MAAM,IAAI,CAAC,CAAC,EAAgC,EAAE,EAAU,EAAE,EAAE,GAAG,CAAC,CAAC;QACnK,MAAM,EAAG,SAAwF,CAAC,MAAM,IAAI,CAAC,CAAC,EAAgC,EAAE,EAAE,GAAG,CAAC,CAAC;QACvJ,QAAQ,EAAG,SAA0F,CAAC,QAAQ,IAAI,CAAC,CAAC,EAAU,EAAE,EAAE,GAAG,CAAC,CAAC;KAC1I,CAAC;IAEF,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,GAAG,CAAC,CAAS,EAAE,EAAE,GAAG,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,IAAI,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC;IACrD,MAAM,eAAe,GAAI,SAA0F,CAAC,QAAQ,IAAI,CAAC,CAAC,EAAU,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;IAEtJ,MAAM,oBAAoB,GAAG,CAAC,QAAgB,EAAE,EAAE;QAC9C,eAAe,CAAC,aAAa,GAAG,CAAC,gBAAgB,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC;QAC3F,IAAI,QAAQ,IAAI,CAAC;YACb,aAAa,IAAI,gBAAgB,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,gBAAgB,CAAC;IACjF,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,EAAyB,CAAC;IAC3C,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAClC,IAAI,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE3B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;YACxB,MAAM,CAAC,GAAG,IAAI,uBAAuB,CAAC,KAAY,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,QAA4F,EAAE,OAAO,EAAE;gBAC7K,GAAG,gBAAgB;gBACnB,GAAI,SAAiB,CAAC,GAAG,CAAC;gBAC1B,QAAQ,EAAE,oBAAoB;aACN,CAAC,CAAC;YAC7B,QAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,mDAAmD,CAAC;gBACrG,MAAM,KAAK,CAAC;YAChB,IAAI,OAAO,GAAG,yBAAyB,GAAG,EAAE,CAAC;YAC7C,OAAO,IAAI,6BAA6B,GAAG,GAAG,CAAC;YAC/C,OAAO,IAAI,KAAK,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5E,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;YACzB,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,KAAK;gBAAE,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACxE,SAAS;QACb,CAAC;IACL,CAAC;IAED,OAAO,CAAC,KAAK,EAAE,CAAC,0BAA0B,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;IAC9E,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEvB,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACrD,IAAI,KAAK,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC;YACD,MAAM,OAAO,GAAI,QAAkF,CAAC,GAAG,CAAC,CAAC;YACzG,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,WAAW,GAAG,wCAAwC,CAAC,CAAC;YAC5E,CAAC;YACD,MAAM,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YACpC,OAAO,CAAC,KAAK,EAAE,CAAC,uCAAuC;gBACnD,GAAG;gBACH,MAAM;gBACN,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;gBACnB,IAAI,CAAC,CAAC;QACd,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,mDAAmD,CAAC;gBACrG,MAAM,KAAK,CAAC;YAChB,IAAI,OAAO,GAAG,8CAA8C,GAAG,GAAG,CAAC;YACnE,OAAO,IAAI,KAAK,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5E,OAAO,IAAI,eAAe,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACxD,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;YACzB,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,KAAK;gBAAE,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,GAAG,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7F,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAEhC,OAAO,CAAC,KAAK,EAAE,CAAC,8CAA8C;QAC1D,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,CAAC;IACV,OAAO,CAAC,IAAI,EAAE,CAAC,yBAAyB,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC;IAEjF,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,MAAM,OAAO,uBAGX,SAAQ,iBAAuB;IACnB,QAAQ,GAAyB,EAAE,CAAC;IACrC,QAAQ,CAAI;IACrB,SAAS,CAA0B;IACnB,MAAM,CAAS;IAC/B,YAAY,GAAW,CAAC,CAAC;IACzB,aAAa,GAAW,CAAC,CAAC;IAE1B,YACI,UAA0B,EAC1B,SAAiB,EACjB,MAAc,EACd,OAAoB,EACpB,QAAW,EACX,OAAqB,EACrB,SAAkC;QAElC,KAAK,CAAC,UAAU,EAAE,SAAS,EAAE,MAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACxE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAEO,oBAAoB;QACxB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,EAAU,EAAE,EAAE;YACxD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,mCAAmC,GAAG,IAAI,CAAC,SAAS,GAAG,KAAK,GAAG,EAAE,CAAC,CAAC;YACtF,IAAI,CAAC;gBACD,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;gBACvB,MAAM,IAAI,CAAC,sBAAsB,CAAC,EAAS,CAAC,CAAC;gBAC7C,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;YAC5B,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,uBAAuB;oBACtC,EAAE;oBACF,gBAAgB;oBAChB,IAAI,CAAC,SAAS;oBACd,KAAK;oBACL,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC9D,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,KAAK;oBAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/E,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,EAAU,EAAE,EAAE;YAC3D,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,wCAAwC,GAAG,IAAI,CAAC,SAAS,GAAG,KAAK,GAAG,EAAE,CAAC,CAAC;YAC3F,IAAI,CAAC;gBACD,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;gBACvB,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;gBACxB,MAAM,IAAI,CAAC,YAAY,CAAC,EAAS,CAAC,CAAC;YACvC,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,8CAA8C;oBAC7D,IAAI,CAAC,SAAS;oBACd,KAAK;oBACL,EAAE,CAAC,CAAC;gBACR,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3E,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,KAAK;oBAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/E,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,CAA4B;QAC7C,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACxC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,GAA4D,EAAE,EAAE;gBACtH,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;oBACf,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;oBAChE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAChC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;oBAC/B,OAAO;gBACX,CAAC;gBAED,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;gBACtB,IAAI,eAAe,GAAa,EAAE,CAAC;gBACnC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACrC,IAAI,OAAO,QAAQ,KAAK,QAAQ;wBAC5B,MAAM,IAAI,KAAK,CAAC,2CAA2C,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACpF,IAAI,QAAQ,KAAK,KAAK;wBAAE,SAAS;oBACjC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;wBAClC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;;wBAE7D,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvC,CAAC;gBAED,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;gBACnF,IAAI,CAAC,aAAa,EAAE,CAAC;oBACjB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,YAAY,CAAC,CAAC;oBACnC,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;oBAChC,OAAO;gBACX,CAAC;gBAED,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB;oBACpC,IAAI,CAAC,SAAS;oBACd,MAAM;oBACN,IAAI,CAAC,GAAG,CAAC,MAAM;oBACf,WAAW,CAAC,CAAC;gBAEjB,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;oBAClE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC5C,CAAC;gBAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;gBAEpC,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;oBACxB,IAAI,CAAC;wBACD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAK,IAAI,CAAC,UAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAa,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;wBAC5J,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG;4BACtB,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAiC;yBAC5D,CAAC;oBACN,CAAC;oBAAC,OAAO,KAAc,EAAE,CAAC;wBACtB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,uBAAuB;4BACtC,EAAE;4BACF,gBAAgB;4BAChB,IAAI,CAAC,SAAS;4BACd,KAAK;4BACL,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBAC9D,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,KAAK;4BAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC/E,CAAC;gBACL,CAAC;gBAED,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;oBAC/D,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;oBAC9B,IAAI,CAAC;wBACD,MAAM,GAAG,CAAC,gBAAgB,EAAE,CAAC;wBAC7B,MAAM,GAAG,CAAC,qBAAqB,EAAE,CAAC;wBAClC,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;wBACxB,IAAI,IAAI,CAAC,YAAY,GAAG,GAAG,IAAI,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;4BACvI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;wBACpE,CAAC;oBACL,CAAC;oBAAC,OAAO,KAAc,EAAE,CAAC;wBACtB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,uBAAuB;4BACtC,EAAE;4BACF,gBAAgB;4BAChB,IAAI,CAAC,SAAS;4BACd,KAAK;4BACL,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBAC9D,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,KAAK;4BAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC/E,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBAElC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC;gBACzG,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,OAAO,EAAE,CAAC;YACd,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QACH,IAAI,CAAC;YAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC5B,CAAC;IAEO,gBAAgB,CAAC,eAAyB,EAAE,IAA8B;QAC9E,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,IAAI,YAAY,GAAG,oDAAoD,GAAG,IAAI,CAAC,SAAS,CAAC;QACzF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,aAAa,GAAG,KAAK,CAAC;YACtB,YAAY;gBACR,qBAAqB;oBACrB,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC;wBACvB,CAAC,CAAC,wBAAwB;wBAC1B,CAAC,CAAC,qBAAqB,CAAC;oBAC5B,KAAK;oBACL,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QACD,MAAM,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;QACpE,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,aAAa,GAAG,KAAK,CAAC;YACtB,YAAY;gBACR,4BAA4B;oBAC5B,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,eAAe,CAAC;oBACtE,KAAK;oBACL,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;IAC3C,CAAC;IAEM,SAAS,CAAC,GAAa;QAC1B,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QACtB,OAAQ,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAS,IAAI,SAAS,CAAC;IAC/D,CAAC;IAED,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,QAAe,CAAC;IAChC,CAAC;IAED,IAAW,cAAc;QACrB,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAQ,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,GAAY;QACrC,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;YACtB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAE,CAAC;QACnC,IAAI,CAAC,MAAM;YACP,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ;YACd,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;QACpC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrB,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAEjC,MAAM,MAAM,GAAG,IAAK,IAAI,CAAC,UAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAa,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3J,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAChC,IAAK,MAAc,CAAC,SAAS;YACzB,MAAM,IAAI,KAAK,CAAE,MAAc,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAG,MAAM,CAAC;QAC9C,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,MAAsC,EAAE,CAAC;QAC3H,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAChC,MAAM,MAAM,CAAC,qBAAqB,EAAE,CAAC;QACrC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAa,CAAC,CAAC;QAClC,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAwB;QACvC,IAAI,CAAC,IAAI,CAAC,QAAQ;YACd,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,mCAAmC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QACzE,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,IAAK,IAAI,CAAC,UAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAa,EAAE,IAA4B,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACjL,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAChC,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACjC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;YAC3B,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,MAAsC,EAAE,CAAC;YACxG,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,gBAAgB,EAAE,CAAC;YAC3C,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,qBAAqB,EAAE,CAAC;YAChD,MAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAS,CAAC,eAAe,EAAE,CAAC;YACnD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAQ,CAAC,CAAC;YAC7C,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,yCAAyC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/E,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC3E,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;CACJ"}
|
|
@@ -1,37 +1,51 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Constructor, EventEmitter3, LoggersType, Cache } from "./CommonTypes";
|
|
1
|
+
import { IAutoUpdatedClientObjectBase, MongoId, IsData, IAutoUpdateManager, Constructor, EventEmitter3, LoggersType, DEMCache } from "./CommonTypes";
|
|
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:
|
|
32
|
-
abstract getObject(_id?:
|
|
29
|
+
abstract handleGetMissingObject(_id: MongoId): Promise<T>;
|
|
30
|
+
abstract createObject(data: Partial<IsData<T>>): Promise<T>;
|
|
31
|
+
abstract getObject(_id?: MongoId): (T & {
|
|
32
|
+
parentManager: IAutoUpdateManager<T> & {
|
|
33
|
+
cache: DEMCache;
|
|
34
|
+
managers: M;
|
|
35
|
+
};
|
|
36
|
+
}) | null | undefined;
|
|
33
37
|
abstract get objects(): {
|
|
34
|
-
[_id: string]: T
|
|
38
|
+
[_id: string]: T & {
|
|
39
|
+
parentManager: IAutoUpdateManager<T> & {
|
|
40
|
+
cache: DEMCache;
|
|
41
|
+
managers: M;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
35
44
|
};
|
|
36
|
-
abstract get objectsAsArray(): T
|
|
45
|
+
abstract get objectsAsArray(): (T & {
|
|
46
|
+
parentManager: IAutoUpdateManager<T> & {
|
|
47
|
+
cache: DEMCache;
|
|
48
|
+
managers: M;
|
|
49
|
+
};
|
|
50
|
+
})[];
|
|
37
51
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { globalCache
|
|
1
|
+
import { globalCache } from "./CommonTypes";
|
|
2
2
|
import "reflect-metadata";
|
|
3
3
|
export class AutoUpdateManager {
|
|
4
4
|
isLoaded_ = false;
|
|
@@ -26,7 +26,7 @@ export class AutoUpdateManager {
|
|
|
26
26
|
this.emitter = emitter;
|
|
27
27
|
this.socket = socket;
|
|
28
28
|
this.classParam = classParam;
|
|
29
|
-
this.properties = Reflect.getMetadata("props", classParam.prototype);
|
|
29
|
+
this.properties = Reflect.getMetadata("props", classParam.prototype) || [];
|
|
30
30
|
this.loggers.debug = (s) => loggers.debug?.("[DEM - " + className + " MANAGER] " + s);
|
|
31
31
|
this.loggers.info = (s) => loggers.info?.("[DEM - " + className + " MANAGER] " + s);
|
|
32
32
|
this.loggers.error = (s) => loggers.error?.("[DEM - " + className + " MANAGER] " + s);
|
|
@@ -50,11 +50,12 @@ export class AutoUpdateManager {
|
|
|
50
50
|
this.isLoaded_ = true;
|
|
51
51
|
}
|
|
52
52
|
async deleteObject(_id) {
|
|
53
|
-
const
|
|
53
|
+
const _idStr = _id.toString();
|
|
54
|
+
const o = this.objects_[_idStr];
|
|
54
55
|
const res = await o?.destroy(true);
|
|
55
56
|
if (res?.success) {
|
|
56
|
-
delete this.objects_[
|
|
57
|
-
delete globalCache.objects[
|
|
57
|
+
delete this.objects_[_idStr];
|
|
58
|
+
delete globalCache.objects[_idStr];
|
|
58
59
|
}
|
|
59
60
|
await o?.callbacks?.delete?.(this);
|
|
60
61
|
return res ?? { success: true, message: "Already gone" };
|
|
@@ -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";
|
|
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
|
protected 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;
|
|
@@ -81,9 +79,9 @@ export declare abstract class AutoUpdatedClientObject<T> {
|
|
|
81
79
|
contactChildren(): Promise<void>;
|
|
82
80
|
onUpdate(): 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 {};
|