@prestizni-software/server-dem 0.6.1 → 0.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,4 @@
1
+ import _ from "lodash";
1
2
  import { AutoUpdatedClientObject, getMetadataRecursive, processIsRefProperties, } from "./AutoUpdatedClientObjectClass.js";
2
3
  import { EVENT_UPDATE, EVENT_DELETE, EVENT_INTERNAL_PRE_LOADED, } from "./CommonTypes.js";
3
4
  import { ObjectId } from "mongodb";
@@ -5,6 +6,8 @@ export class AutoUpdatedServerObject extends AutoUpdatedClientObject {
5
6
  isServer;
6
7
  entry;
7
8
  saveLock = Promise.resolve();
9
+ loadPromise = null;
10
+ _isUpdating = false;
8
11
  constructor(classParam, socket, data, loggers, className, parentManager, emitter) {
9
12
  if (!classParam ||
10
13
  !socket ||
@@ -38,58 +41,78 @@ export class AutoUpdatedServerObject extends AutoUpdatedClientObject {
38
41
  this.isServer = true;
39
42
  this.entry = null;
40
43
  this.parentManager = parentManager;
44
+ // Cache refProps statically on constructor
45
+ const classParamAny = classParam;
46
+ if (!classParamAny.__refPropsCache) {
47
+ classParamAny.__refPropsCache = this.properties.filter((prop) => getMetadataRecursive("isRef", this, prop));
48
+ }
41
49
  // Convert reference IDs to ObjectIds on the server side
42
50
  const dataRec = this.data;
43
- for (const prop of this.properties) {
44
- if (typeof prop !== "string")
51
+ for (const prop of classParamAny.__refPropsCache) {
52
+ if (typeof prop !== "string" || !dataRec[prop])
45
53
  continue;
46
- const isRef = getMetadataRecursive("isRef", this, prop);
47
- if (isRef && dataRec[prop]) {
48
- try {
49
- if (Array.isArray(dataRec[prop])) {
50
- dataRec[prop] = dataRec[prop]
51
- .map((item) => {
52
- if (!item)
53
- return null;
54
- const idStr = item._id
55
- ? item._id.toString()
56
- : item.toString();
57
- if (idStr === {}.toString())
58
- return null; // Avoid [object Object]
59
- return ObjectId.isValid(idStr) ? new ObjectId(idStr) : item;
60
- })
61
- .filter((item) => item !== null);
62
- }
63
- else {
64
- const idStr = dataRec[prop]._id
65
- ? dataRec[prop]._id.toString()
66
- : dataRec[prop].toString();
67
- if (idStr !== {}.toString() && ObjectId.isValid(idStr)) {
68
- dataRec[prop] = new ObjectId(idStr);
69
- }
70
- }
54
+ try {
55
+ if (Array.isArray(dataRec[prop])) {
56
+ dataRec[prop] = dataRec[prop]
57
+ .map((item) => {
58
+ if (!item)
59
+ return null;
60
+ const idStr = item._id
61
+ ? item._id.toString()
62
+ : item.toString();
63
+ if (idStr === {}.toString())
64
+ return null; // Avoid [object Object]
65
+ return ObjectId.isValid(idStr) ? new ObjectId(idStr) : item;
66
+ })
67
+ .filter((item) => item !== null);
71
68
  }
72
- catch (error) {
73
- this.loggers.error(`Failed to set reference ${prop} to ${dataRec[prop]}: ${error.message}`);
69
+ else {
70
+ const idStr = dataRec[prop]._id
71
+ ? dataRec[prop]._id.toString()
72
+ : dataRec[prop].toString();
73
+ if (idStr !== {}.toString() && ObjectId.isValid(idStr)) {
74
+ dataRec[prop] = new ObjectId(idStr);
75
+ }
74
76
  }
75
77
  }
78
+ catch (error) {
79
+ this.loggers.error(`Failed to set reference ${prop} to ${dataRec[prop]}: ${error.message}`);
80
+ }
76
81
  }
77
82
  }
78
- async loadFromDB() {
79
- const _id = this.data._id;
80
- if (!_id)
81
- throw new Error("No id.");
82
- // Use the model from the parent manager
83
- this.entry = await this.parentManager.model.findById(_id);
84
- if (!this.entry)
85
- throw new Error(`Object not found in DB: ${this.className} with ID ${_id}`);
86
- this.data = this.handleDataCleanup({
87
- ...this.data,
88
- ...this.entry.toObject(),
83
+ async save() {
84
+ this.saveLock = (this.saveLock ?? Promise.resolve())
85
+ .catch(() => { })
86
+ .then(async () => {
87
+ if (this.entry && this.entry !== this) {
88
+ await this.entry.save();
89
+ }
90
+ else if (this.entry && typeof this.entry.$__save === "function") {
91
+ await this.entry.$__save();
92
+ }
89
93
  });
90
- this.isLoading = false;
91
- this.generateSettersAndGetters();
92
- this.emitter.emit(EVENT_INTERNAL_PRE_LOADED + this.EmitterID);
94
+ await this.saveLock;
95
+ }
96
+ async loadFromDB() {
97
+ if (this.loadPromise)
98
+ return this.loadPromise;
99
+ this.loadPromise = (async () => {
100
+ const _id = this.data._id;
101
+ if (!_id)
102
+ throw new Error("No id.");
103
+ // Use the model from the parent manager
104
+ this.entry = await this.parentManager.model.findById(_id);
105
+ if (!this.entry)
106
+ throw new Error(`Object not found in DB: ${this.className} with ID ${_id}`);
107
+ this.data = this.handleDataCleanup({
108
+ ...this.data,
109
+ ...this.entry.toObject(),
110
+ });
111
+ this.isLoading = false;
112
+ this.generateSettersAndGetters();
113
+ this.emitter.emit(EVENT_INTERNAL_PRE_LOADED + this.EmitterID);
114
+ })();
115
+ return this.loadPromise;
93
116
  }
94
117
  loadFromDocument(document) {
95
118
  this.entry = document;
@@ -101,12 +124,18 @@ export class AutoUpdatedServerObject extends AutoUpdatedClientObject {
101
124
  this.generateSettersAndGetters();
102
125
  this.emitter.emit(EVENT_INTERNAL_PRE_LOADED + this.EmitterID);
103
126
  }
127
+ /** Override extractedData to return shallow copy */
104
128
  get extractedData() {
105
- const dataToProcess = this.data;
129
+ const dataToProcess = _.cloneDeep(this.data);
106
130
  const extracted = processIsRefProperties(dataToProcess, this, null, [], {}, this.loggers).newData;
107
131
  return extracted;
108
132
  }
109
133
  async setValueInternal(key, value, silent = false, noUpdate = false) {
134
+ if (key === "__proto__" ||
135
+ key === "constructor" ||
136
+ key === "prototype") {
137
+ return { success: false, msg: `Invalid property key: ${key}` };
138
+ }
110
139
  try {
111
140
  const _id = this.data._id;
112
141
  if (!_id)
@@ -114,13 +143,24 @@ export class AutoUpdatedServerObject extends AutoUpdatedClientObject {
114
143
  this.entry ??= await this.parentManager.model.findById(_id);
115
144
  if (!this.entry)
116
145
  throw new Error("Object not found in DB.");
117
- // Fix 1 & 5: Serialized save with error handling and decoupling of DB writing from noUpdate flag.
118
- // We always save to DB if it's a persisted field, regardless of noUpdate or silent flags.
119
- if (this.entry[key] !== undefined) {
120
- this.entry[key] = value;
121
- this.saveLock = this.saveLock
146
+ // Check if property is part of properties or schema, regardless of current undefined value
147
+ const isPersisted = this.properties.includes(key) ||
148
+ this.entry[key] !== undefined ||
149
+ Boolean(this.entry.schema?.path?.(key));
150
+ if (isPersisted) {
151
+ this.saveLock = (this.saveLock ?? Promise.resolve())
122
152
  .catch(() => { })
123
- .then(() => this.entry.save());
153
+ .then(async () => {
154
+ if (typeof this.parentManager.model?.updateOne === "function") {
155
+ await this.parentManager.model.updateOne({ _id }, { $set: { [key]: value } });
156
+ }
157
+ else if (this.entry && typeof this.entry.save === "function") {
158
+ await this.entry.save();
159
+ }
160
+ if (this.entry) {
161
+ this.entry[key] = value;
162
+ }
163
+ });
124
164
  await this.saveLock;
125
165
  }
126
166
  if (!silent) {
@@ -142,6 +182,8 @@ export class AutoUpdatedServerObject extends AutoUpdatedClientObject {
142
182
  if (!once) {
143
183
  return await this.parentManager.deleteObject(_id);
144
184
  }
185
+ // Wait for any pending saves to complete before deleting
186
+ await (this.saveLock ?? Promise.resolve()).catch(() => { });
145
187
  try {
146
188
  this.entry ??= await this.parentManager.model.findById(_id);
147
189
  if (this.entry) {
@@ -162,13 +204,19 @@ export class AutoUpdatedServerObject extends AutoUpdatedClientObject {
162
204
  return { success: true, message: "Deleted" };
163
205
  }
164
206
  async onUpdate(noUpdate = false, key) {
165
- if (noUpdate)
207
+ if (noUpdate || this._isUpdating)
166
208
  return;
167
- if (this.parentManager.options?.onUpdate) {
168
- await this.parentManager.options.onUpdate(this, async (key, val) => {
169
- // Fix 5: Pass noUpdate=true to internal setter to prevent recursive onUpdate calls.
170
- return this.setValue__(key, val, false, false, true);
171
- }, key);
209
+ this._isUpdating = true;
210
+ try {
211
+ if (this.parentManager.options?.onUpdate) {
212
+ await this.parentManager.options.onUpdate(this, async (key, val) => {
213
+ // Bypass writeQueue chaining to prevent recursive deadlock while in onUpdate
214
+ return this.setValueQueueInternal(key, val, false, false, true);
215
+ }, key);
216
+ }
217
+ }
218
+ finally {
219
+ this._isUpdating = false;
172
220
  }
173
221
  }
174
222
  async onDeletion() {
@@ -1 +1 @@
1
- {"version":3,"file":"AutoUpdatedServerObjectClass.js","sourceRoot":"","sources":["../AutoUpdatedServerObjectClass.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AutoUpdatedServerObjectClass.js","sourceRoot":"","sources":["../AutoUpdatedServerObjectClass.ts"],"names":[],"mappings":"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"}
@@ -28,8 +28,8 @@ export interface IAutoUpdatedClientObjectBase {
28
28
  }>;
29
29
  isPreLoadedAsync(): Promise<boolean>;
30
30
  contactChildren(): Promise<void>;
31
- getValue(key: string): any;
32
- setValue(key: string, val: any): Promise<{
31
+ getValue(key: string): unknown;
32
+ setValue(key: string, val: unknown): Promise<{
33
33
  success: boolean;
34
34
  msg: string;
35
35
  }>;
@@ -71,7 +71,7 @@ type OnlyStringForRefs<V> = V extends any ? V extends Array<infer U> ? OnlyStrin
71
71
  export type DEMCache = {
72
72
  references: Record<string, any>;
73
73
  };
74
- export type Pure<T extends object, Base = IAutoUpdatedClientObject<any>> = Omit<T, keyof Base | "parentManager" | "callbacks" | "classParam" | "className" | "properties" | "isLoaded" | "extractedData" | "getValue" | "setValue" | "loadFromDB" | "setValue_" | "destroyImmediate" | "loadError">;
74
+ export type Pure<T extends object, Base = IAutoUpdatedClientObject<any>> = Omit<T, keyof Base | "parentManager" | "callbacks" | "classParam" | "className" | "properties" | "isLoaded" | "extractedData" | "getValue" | "setValue" | "loadFromDB" | "setValue_" | "destroyImmediate" | "loadError" | "updateEventName" | "getRawId">;
75
75
  export type IsData<T extends object> = {
76
76
  [K in keyof Pure<T> as T[K] extends Function ? never : K]: AllowStringForRefs<T[K]>;
77
77
  } & {
@@ -95,7 +95,7 @@ export type ServerResponse<T> = {
95
95
  message: string;
96
96
  success: false;
97
97
  };
98
- export type ServerUpdateRequest<T> = {
98
+ export type ServerUpdateRequest<T = unknown> = {
99
99
  _id: MongoId;
100
100
  key: string;
101
101
  value: unknown;
@@ -128,12 +128,15 @@ export declare const EVENT_DELETE = "delete";
128
128
  export declare const EVENT_NEW = "new";
129
129
  export declare const EVENT_GET = "get";
130
130
  export declare const EVENT_STARTUP = "startup";
131
- export declare function safeStringify(obj: any): string;
132
- export type GlobalCache = {
131
+ export declare function safeStringify(obj: unknown): string;
132
+ export declare class DEMGlobalCache {
133
133
  objects: Record<string, {
134
134
  className: string;
135
135
  object: IAutoUpdatedClientObjectBase;
136
136
  }>;
137
- };
138
- export declare const globalCache: GlobalCache;
137
+ clear(): void;
138
+ get size(): number;
139
+ }
140
+ export type GlobalCache = DEMGlobalCache;
141
+ export declare const globalCache: DEMGlobalCache;
139
142
  export {};
@@ -33,7 +33,14 @@ export function safeStringify(obj) {
33
33
  return "[Circular or non-serializable object]";
34
34
  }
35
35
  }
36
- export const globalCache = {
37
- objects: {},
38
- };
36
+ export class DEMGlobalCache {
37
+ objects = {};
38
+ clear() {
39
+ this.objects = {};
40
+ }
41
+ get size() {
42
+ return Object.keys(this.objects).length;
43
+ }
44
+ }
45
+ export const globalCache = new DEMGlobalCache();
39
46
  //# sourceMappingURL=CommonTypes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommonTypes.js","sourceRoot":"","sources":["../CommonTypes.ts"],"names":[],"mappings":"AAEA,OAAO,kBAAkB,CAAC;AAwK1B,MAAM,UAAU,SAAS,CAAC,MAAc,EAAE,WAAmB;IAC3D,MAAM,KAAK,GAAI,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAc,IAAI,EAAE,CAAC;IAC1E,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO;IACxC,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC,CAAC;IACzC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,KAAa;IAEb,OAAO,UAAU,MAAc,EAAE,WAAmB;QAClD,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC/B,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAChC,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAC/D,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,OAAO,UAAU,MAAc,EAAE,WAAmB;QAClD,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC/B,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAC7D,CAAC,CAAC;AACJ,CAAC;AAmFD,MAAM,CAAC,MAAM,yBAAyB,GAAG,YAAY,CAAC;AACtD,MAAM,CAAC,MAAM,YAAY,GAAG,QAAQ,CAAC;AACrC,MAAM,CAAC,MAAM,YAAY,GAAG,QAAQ,CAAC;AACrC,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,CAAC;AAC/B,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,CAAC;AAC/B,MAAM,CAAC,MAAM,aAAa,GAAG,SAAS,CAAC;AAEvC,MAAM,UAAU,aAAa,CAAC,GAAQ;IACpC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,uCAAuC,CAAC;IACjD,CAAC;AACH,CAAC;AAYD,MAAM,CAAC,MAAM,WAAW,GAAgB;IACtC,OAAO,EAAE,EAAE;CACZ,CAAC"}
1
+ {"version":3,"file":"CommonTypes.js","sourceRoot":"","sources":["../CommonTypes.ts"],"names":[],"mappings":"AAEA,OAAO,kBAAkB,CAAC;AA0K1B,MAAM,UAAU,SAAS,CAAC,MAAc,EAAE,WAAmB;IAC3D,MAAM,KAAK,GAAI,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAc,IAAI,EAAE,CAAC;IAC1E,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO;IACxC,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC,CAAC;IACzC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,KAAa;IAEb,OAAO,UAAU,MAAc,EAAE,WAAmB;QAClD,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC/B,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAChC,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAC/D,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,OAAO,UAAU,MAAc,EAAE,WAAmB;QAClD,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC/B,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAC7D,CAAC,CAAC;AACJ,CAAC;AAmFD,MAAM,CAAC,MAAM,yBAAyB,GAAG,YAAY,CAAC;AACtD,MAAM,CAAC,MAAM,YAAY,GAAG,QAAQ,CAAC;AACrC,MAAM,CAAC,MAAM,YAAY,GAAG,QAAQ,CAAC;AACrC,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,CAAC;AAC/B,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,CAAC;AAC/B,MAAM,CAAC,MAAM,aAAa,GAAG,SAAS,CAAC;AAEvC,MAAM,UAAU,aAAa,CAAC,GAAY;IACxC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,uCAAuC,CAAC;IACjD,CAAC;AACH,CAAC;AAED,MAAM,OAAO,cAAc;IAClB,OAAO,GAMV,EAAE,CAAC;IAEA,KAAK;QACV,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IACpB,CAAC;IAED,IAAW,IAAI;QACb,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IAC1C,CAAC;CACF;AAID,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,cAAc,EAAE,CAAC"}
@@ -0,0 +1 @@
1
+ export * from "./CommonTypes.js";
@@ -1,2 +1,2 @@
1
- "use strict";
1
+ export * from "./CommonTypes.js";
2
2
  //# sourceMappingURL=CommonTypes_server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommonTypes_server.js","sourceRoot":"","sources":["../CommonTypes_server.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"CommonTypes_server.js","sourceRoot":"","sources":["../CommonTypes_server.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}