mongodb-dynamic-api 5.3.0 → 5.4.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 CHANGED
@@ -1,5 +1,21 @@
1
1
  Changelog
2
2
 
3
+ ## [5.4.1](https://github.com/MikeDev75015/mongodb-dynamic-api/compare/v5.4.0...v5.4.1) (2026-09-26)
4
+
5
+ ## [5.4.0](https://github.com/MikeDev75015/mongodb-dynamic-api/compare/v5.3.0...v5.4.0) (2026-09-26)
6
+
7
+ ### quality
8
+
9
+ * **quality:** resolve 2 SonarCloud leak-period issues on develop ([636b9f5](https://github.com/MikeDev75015/mongodb-dynamic-api/commit/636b9f5637fa6baa6be533c30a779ec80a571c72))
10
+
11
+ ### websockets
12
+
13
+ * **websockets:** never accept an invalid handshake token silently ([3093451](https://github.com/MikeDev75015/mongodb-dynamic-api/commit/3093451957f1262174ee189a214458700e66c5e9))
14
+
15
+ ### base-service
16
+
17
+ * **base-service:** return plain objects from createOneDocument/createManyDocuments ([5f97ca7](https://github.com/MikeDev75015/mongodb-dynamic-api/commit/5f97ca76c14c6e0069608a55fb9b88cb2c092b2e))
18
+
3
19
  ## [5.3.0](https://github.com/MikeDev75015/mongodb-dynamic-api/compare/v5.1.0...v5.3.0) (2026-09-14)
4
20
 
5
21
  ### presenters
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mongodb-dynamic-api",
3
- "version": "5.3.0",
3
+ "version": "5.4.1",
4
4
  "description": "Auto generated CRUD API for MongoDB using NestJS",
5
5
  "readmeFilename": "README.md",
6
6
  "main": "index.js",
@@ -8,4 +8,5 @@ export declare class SocketAdapter extends IoAdapter {
8
8
  server?: Server;
9
9
  }): Server;
10
10
  private handleConnection;
11
+ private verifyHandshakeToken;
11
12
  }
@@ -14,6 +14,19 @@ class SocketAdapter extends platform_socket_io_1.IoAdapter {
14
14
  createIOServer(port, options) {
15
15
  if (!this.ioServer) {
16
16
  this.ioServer = super.createIOServer(port, { ...options, cors: { origin: '*' } });
17
+ this.ioServer.use((socket, next) => {
18
+ if (!ws_config_store_1.DynamicApiWsConfigStore.rejectInvalidToken) {
19
+ return next();
20
+ }
21
+ const { error } = this.verifyHandshakeToken(socket);
22
+ if (error) {
23
+ if (ws_config_store_1.DynamicApiWsConfigStore.debug) {
24
+ this.logger.warn(`[WS] connection refused – socket=${socket.id}: ${error}`);
25
+ }
26
+ return next(new Error(`Unauthorized: ${error}`));
27
+ }
28
+ return next();
29
+ });
17
30
  this.ioServer.on('connection', (socket) => {
18
31
  this.handleConnection(socket);
19
32
  });
@@ -21,23 +34,17 @@ class SocketAdapter extends platform_socket_io_1.IoAdapter {
21
34
  return this.ioServer;
22
35
  }
23
36
  handleConnection(socket) {
24
- const { debug, jwtSecret, onConnection, customEvents } = ws_config_store_1.DynamicApiWsConfigStore;
25
- let user;
26
- if (jwtSecret) {
27
- const token = socket.handshake?.auth?.token;
28
- if (token) {
29
- try {
30
- const { iat, exp, ...payload } = jwt.verify(token, jwtSecret);
31
- user = payload;
32
- socket.user = user;
33
- }
34
- catch (e) {
35
- if (debug) {
36
- const message = e instanceof Error ? e.message : String(e);
37
- this.logger.warn(`JWT verification failed for socket ${socket.id}: ${message}`);
38
- }
39
- }
37
+ const { debug, onConnection, customEvents } = ws_config_store_1.DynamicApiWsConfigStore;
38
+ const { user, error } = this.verifyHandshakeToken(socket);
39
+ if (user) {
40
+ socket.user = user;
41
+ }
42
+ if (error) {
43
+ if (debug) {
44
+ this.logger.warn(`JWT verification failed for socket ${socket.id}: ${error}`);
40
45
  }
46
+ const payload = { reason: 'invalid-token', message: error };
47
+ socket.emit('unauthorized', payload);
41
48
  }
42
49
  if (debug) {
43
50
  const userId = user?.id ?? 'anonymous';
@@ -72,6 +79,20 @@ class SocketAdapter extends platform_socket_io_1.IoAdapter {
72
79
  });
73
80
  }
74
81
  }
82
+ verifyHandshakeToken(socket) {
83
+ const { jwtSecret } = ws_config_store_1.DynamicApiWsConfigStore;
84
+ const token = socket.handshake?.auth?.token;
85
+ if (!jwtSecret || !token) {
86
+ return {};
87
+ }
88
+ try {
89
+ const { iat, exp, ...payload } = jwt.verify(token, jwtSecret);
90
+ return { user: payload };
91
+ }
92
+ catch (e) {
93
+ return { error: e instanceof Error ? e.message : String(e) };
94
+ }
95
+ }
75
96
  }
76
97
  exports.SocketAdapter = SocketAdapter;
77
98
  //# sourceMappingURL=socket-adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"socket-adapter.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/adapters/socket-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"socket-adapter.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/adapters/socket-adapter.ts"],"names":[],"mappings":"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"}
@@ -34,6 +34,7 @@ function enableDynamicAPIWebSockets(app, options) {
34
34
  ws_config_store_1.DynamicApiWsConfigStore.onConnection = resolvedOptions.onConnection;
35
35
  ws_config_store_1.DynamicApiWsConfigStore.customEvents = resolvedOptions.customEvents ?? [];
36
36
  ws_config_store_1.DynamicApiWsConfigStore.debug = resolvedOptions.debug ?? false;
37
+ ws_config_store_1.DynamicApiWsConfigStore.rejectInvalidToken = resolvedOptions.rejectInvalidToken ?? false;
37
38
  ws_config_store_1.DynamicApiWsConfigStore.jwtSecret = dynamic_api_global_state_service_1.DynamicApiGlobalStateService.getValue('jwtSecret');
38
39
  process.on('warning', function (err) {
39
40
  if ('MaxListenersExceededWarning' === err.name) {
@@ -1 +1 @@
1
- {"version":3,"file":"socket-config.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/socket-config.helper.ts"],"names":[],"mappings":";;AA+ES,kEAA2B;AAAE,gEAA0B;AA9EhE,sCAAsC;AACtC,+DAA2D;AAE3D,4HAAqH;AACrH,iEAAsE;AACtE,uDAA4D;AAE5D,SAAS,mBAAmB,CAAC,YAAY,GAAG,EAAE;IAE3C,MAAM,CAAC,YAAY,CAAC,SAAkD,CAAC,aAAa,GAAG,GAAG,CAAC;IAC5F,MAAM,CAAC,YAAY,CAAC,mBAAmB,GAAG,GAAG,CAAC;IAC9C,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;AAC9D,CAAC;AAOD,SAAS,0BAA0B,CAAC,GAAqB,EAAE,OAAyC;IAClG,IAAI,eAAe,GAAoC,EAAE,CAAC;IAE1D,IAAI,OAAO,EAAE,CAAC;QACZ,eAAe,GAAG,OAAO,CAAC;IAC5B,CAAC;IAED,IAAI,eAAe,CAAC,oBAAoB,EAAE,CAAC;QACzC,MAAM,UAAU,GAAG,mDAA4B,CAAC,aAAa,EAAE,CAAC;QAEhE,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,UAAU;iBACvB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE;gBAChC,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtF,OAAO,IAAI,KAAK,MAAM,OAAO,GAAG,CAAC;YACnC,CAAC,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,CAAC;YAEd,MAAM,IAAI,KAAK,CACb,qFAAqF,OAAO,IAAI;kBAC9F,sFAAsF,CACzF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,mBAAmB,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAGlD,yCAAuB,CAAC,YAAY,GAAG,eAAe,CAAC,YAAY,CAAC;IACpE,yCAAuB,CAAC,YAAY,GAAG,eAAe,CAAC,YAAY,IAAI,EAAE,CAAC;IAC1E,yCAAuB,CAAC,KAAK,GAAG,eAAe,CAAC,KAAK,IAAI,KAAK,CAAC;IAG/D,yCAAuB,CAAC,SAAS,GAAG,+DAA4B,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAEvF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,UAAU,GAAG;QACjC,IAAI,6BAA6B,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;YAC5F,OAAO,CAAC,IAAI,CAAC,2FAA2F,CAAC,CAAC;YAC1G,OAAO,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;YAC/E,MAAM,IAAI,KAAK,CACb,mDAAmD;kBACjD,uFAAuF,CAC1F,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,mBAAmB,CAAC,IAAI,8BAAa,CAAC,GAAG,CAAC,CAAC,CAAC;AAClD,CAAC;AAGD,SAAS,2BAA2B,CAAC,OAAoC;IACvE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;IACT,CAAC;IAED,OAAO,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;AACrD,CAAC"}
1
+ {"version":3,"file":"socket-config.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/socket-config.helper.ts"],"names":[],"mappings":";;AAgFS,kEAA2B;AAAE,gEAA0B;AA/EhE,sCAAsC;AACtC,+DAA2D;AAE3D,4HAAqH;AACrH,iEAAsE;AACtE,uDAA4D;AAE5D,SAAS,mBAAmB,CAAC,YAAY,GAAG,EAAE;IAE3C,MAAM,CAAC,YAAY,CAAC,SAAkD,CAAC,aAAa,GAAG,GAAG,CAAC;IAC5F,MAAM,CAAC,YAAY,CAAC,mBAAmB,GAAG,GAAG,CAAC;IAC9C,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;AAC9D,CAAC;AAOD,SAAS,0BAA0B,CAAC,GAAqB,EAAE,OAAyC;IAClG,IAAI,eAAe,GAAoC,EAAE,CAAC;IAE1D,IAAI,OAAO,EAAE,CAAC;QACZ,eAAe,GAAG,OAAO,CAAC;IAC5B,CAAC;IAED,IAAI,eAAe,CAAC,oBAAoB,EAAE,CAAC;QACzC,MAAM,UAAU,GAAG,mDAA4B,CAAC,aAAa,EAAE,CAAC;QAEhE,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,UAAU;iBACvB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE;gBAChC,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtF,OAAO,IAAI,KAAK,MAAM,OAAO,GAAG,CAAC;YACnC,CAAC,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,CAAC;YAEd,MAAM,IAAI,KAAK,CACb,qFAAqF,OAAO,IAAI;kBAC9F,sFAAsF,CACzF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,mBAAmB,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAGlD,yCAAuB,CAAC,YAAY,GAAG,eAAe,CAAC,YAAY,CAAC;IACpE,yCAAuB,CAAC,YAAY,GAAG,eAAe,CAAC,YAAY,IAAI,EAAE,CAAC;IAC1E,yCAAuB,CAAC,KAAK,GAAG,eAAe,CAAC,KAAK,IAAI,KAAK,CAAC;IAC/D,yCAAuB,CAAC,kBAAkB,GAAG,eAAe,CAAC,kBAAkB,IAAI,KAAK,CAAC;IAGzF,yCAAuB,CAAC,SAAS,GAAG,+DAA4B,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAEvF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,UAAU,GAAG;QACjC,IAAI,6BAA6B,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;YAC5F,OAAO,CAAC,IAAI,CAAC,2FAA2F,CAAC,CAAC;YAC1G,OAAO,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;YAC/E,MAAM,IAAI,KAAK,CACb,mDAAmD;kBACjD,uFAAuF,CAC1F,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,mBAAmB,CAAC,IAAI,8BAAa,CAAC,GAAG,CAAC,CAAC,CAAC;AAClD,CAAC;AAGD,SAAS,2BAA2B,CAAC,OAAoC;IACvE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;IACT,CAAC;IAED,OAAO,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;AACrD,CAAC"}
@@ -4,5 +4,8 @@ export declare class DynamicApiWsConfigStore {
4
4
  static customEvents: CustomSocketEventConfig[];
5
5
  static debug: boolean;
6
6
  static jwtSecret: string | undefined;
7
+ private static rejectInvalidTokenValue;
8
+ static get rejectInvalidToken(): boolean;
9
+ static set rejectInvalidToken(value: boolean);
7
10
  static reset(): void;
8
11
  }
@@ -2,14 +2,22 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DynamicApiWsConfigStore = void 0;
4
4
  class DynamicApiWsConfigStore {
5
+ static get rejectInvalidToken() {
6
+ return this.rejectInvalidTokenValue;
7
+ }
8
+ static set rejectInvalidToken(value) {
9
+ this.rejectInvalidTokenValue = value;
10
+ }
5
11
  static reset() {
6
12
  this.onConnection = undefined;
7
13
  this.customEvents = [];
8
14
  this.debug = false;
9
15
  this.jwtSecret = undefined;
16
+ this.rejectInvalidToken = false;
10
17
  }
11
18
  }
12
19
  exports.DynamicApiWsConfigStore = DynamicApiWsConfigStore;
13
20
  DynamicApiWsConfigStore.customEvents = [];
14
21
  DynamicApiWsConfigStore.debug = false;
22
+ DynamicApiWsConfigStore.rejectInvalidTokenValue = false;
15
23
  //# sourceMappingURL=ws-config.store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ws-config.store.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/ws-config.store.ts"],"names":[],"mappings":";;;AAOA,MAAa,uBAAuB;IAOlC,MAAM,CAAC,KAAK;QACV,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;;AAZH,0DAaC;AAXQ,oCAAY,GAA8B,EAAE,CAAC;AAC7C,6BAAK,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"ws-config.store.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/ws-config.store.ts"],"names":[],"mappings":";;;AAOA,MAAa,uBAAuB;IAOlC,MAAM,KAAK,kBAAkB;QAC3B,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,MAAM,KAAK,kBAAkB,CAAC,KAAc;QAC1C,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;IACvC,CAAC;IAGD,MAAM,CAAC,KAAK;QACV,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;IAClC,CAAC;;AAtBH,0DAuBC;AArBQ,oCAAY,GAA8B,EAAE,CAAC;AAC7C,6BAAK,GAAG,KAAK,CAAC;AAEN,+CAAuB,GAAG,KAAK,CAAC"}
@@ -21,5 +21,10 @@ interface DynamicApiWebSocketSetupOptions {
21
21
  debug?: boolean;
22
22
  customEvents?: CustomSocketEventConfig[];
23
23
  failOnEventCollision?: boolean;
24
+ rejectInvalidToken?: boolean;
24
25
  }
25
- export type { CustomSocketEventConfig, DynamicApiWebSocketOptions, DynamicApiWebSocketSetupOptions, ExtendedSocket, GatewayOptions, GatewayResponse, };
26
+ interface SocketUnauthorizedPayload {
27
+ reason: 'invalid-token';
28
+ message: string;
29
+ }
30
+ export type { CustomSocketEventConfig, DynamicApiWebSocketOptions, DynamicApiWebSocketSetupOptions, ExtendedSocket, GatewayOptions, GatewayResponse, SocketUnauthorizedPayload, };
@@ -17,7 +17,7 @@ export * from './dynamic-api-service-before-save-callback.interface';
17
17
  export { AfterSaveCallback, DynamicApiResetPasswordCallback, DynamicApiResetPasswordCallbackMethods, CallbackMethods, CallbackRetryOptions, OnAfterSaveErrorHook, MongoUpdateOperators, } from './dynamic-api-service-callback.interface';
18
18
  export * from './dynamic-api-service-provider.interface';
19
19
  export * from './dynamic-api-swagger-options.type';
20
- export { CustomSocketEventConfig, DynamicApiWebSocketOptions, DynamicApiWebSocketSetupOptions, ExtendedSocket, GatewayOptions, } from './dynamic-api-web-socket.interface';
20
+ export { CustomSocketEventConfig, DynamicApiWebSocketOptions, DynamicApiWebSocketSetupOptions, ExtendedSocket, GatewayOptions, SocketUnauthorizedPayload, } from './dynamic-api-web-socket.interface';
21
21
  export * from './dynamic-api-presence.interface';
22
22
  export * from './dynamic-api-health-check.interface';
23
23
  export * from './dynamic-api-rate-limit.interface';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6EAA2D;AAC3D,uEAAqD;AACrD,kEAAgD;AAGhD,wEAAsD;AACtD,kEAAgD;AAChD,2EAAyD;AACzD,yEAAuD;AACvD,yEAAuD;AASvD,uEAAqD;AACrD,uEAAqD;AAErD,oEAAkD;AAClD,gEAA8C;AAC9C,yEAAuD;AACvD,uFAAqE;AAYrE,2EAAyD;AACzD,qEAAmD;AAUnD,mEAAiD;AACjD,uEAAqD;AACrD,qEAAmD;AACnD,oEAAkD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6EAA2D;AAC3D,uEAAqD;AACrD,kEAAgD;AAGhD,wEAAsD;AACtD,kEAAgD;AAChD,2EAAyD;AACzD,yEAAuD;AACvD,yEAAuD;AASvD,uEAAqD;AACrD,uEAAqD;AAErD,oEAAkD;AAClD,gEAA8C;AAC9C,yEAAuD;AACvD,uFAAqE;AAYrE,2EAAyD;AACzD,qEAAmD;AAWnD,mEAAiD;AACjD,uEAAqD;AACrD,qEAAmD;AACnD,oEAAkD"}
@@ -374,7 +374,8 @@ class BaseService {
374
374
  throw new common_1.NotFoundException('Document not found');
375
375
  }
376
376
  addDocumentId(document) {
377
- return { ...document, id: document._id.toString() };
377
+ const plain = isHydratedDocument(document) ? document.toObject() : document;
378
+ return { ...plain, id: plain._id.toString() };
378
379
  }
379
380
  isModelSoftDeletable(model) {
380
381
  const paths = Object.getOwnPropertyNames(model.schema.paths);
@@ -399,4 +400,7 @@ class BaseService {
399
400
  }
400
401
  }
401
402
  exports.BaseService = BaseService;
403
+ function isHydratedDocument(document) {
404
+ return typeof document.toObject === 'function';
405
+ }
402
406
  //# sourceMappingURL=base.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.service.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/services/base/base.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.service.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/services/base/base.service.ts"],"names":[],"mappings":"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"}
package/src/version.json CHANGED
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "5.3.0"
2
+ "version": "5.4.1"
3
3
  }
@@ -0,0 +1 @@
1
+ import 'dotenv/config';
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const vitest_1 = require("vitest");
13
+ const mongoose_1 = require("@nestjs/mongoose");
14
+ const testing_1 = require("@nestjs/testing");
15
+ const mongoose_2 = require("mongoose");
16
+ const src_1 = require("../../src");
17
+ const e2e_setup_1 = require("../e2e.setup");
18
+ require("dotenv/config");
19
+ let LobbyEntity = class LobbyEntity extends src_1.BaseEntity {
20
+ };
21
+ __decorate([
22
+ (0, mongoose_1.Prop)({ type: String, required: true }),
23
+ __metadata("design:type", String)
24
+ ], LobbyEntity.prototype, "gameType", void 0);
25
+ __decorate([
26
+ (0, mongoose_1.Prop)({ type: String, required: true }),
27
+ __metadata("design:type", String)
28
+ ], LobbyEntity.prototype, "familyId", void 0);
29
+ __decorate([
30
+ (0, mongoose_1.Prop)({ type: [String], default: [] }),
31
+ __metadata("design:type", Array)
32
+ ], LobbyEntity.prototype, "playerIds", void 0);
33
+ LobbyEntity = __decorate([
34
+ (0, mongoose_1.Schema)({ collection: 'create-doc-lobbies' })
35
+ ], LobbyEntity);
36
+ let MatchEntity = class MatchEntity extends src_1.BaseEntity {
37
+ };
38
+ __decorate([
39
+ (0, mongoose_1.Prop)({ type: String, required: true }),
40
+ __metadata("design:type", String)
41
+ ], MatchEntity.prototype, "name", void 0);
42
+ MatchEntity = __decorate([
43
+ (0, mongoose_1.Schema)({ collection: 'create-doc-matches' })
44
+ ], MatchEntity);
45
+ (0, vitest_1.describe)('createOneDocument / createManyDocuments in callbacks (e2e)', () => {
46
+ let createdOne;
47
+ let createdMany;
48
+ let foundOne;
49
+ (0, vitest_1.beforeEach)(() => {
50
+ createdOne = undefined;
51
+ createdMany = undefined;
52
+ foundOne = undefined;
53
+ });
54
+ (0, vitest_1.afterEach)(async () => {
55
+ await (0, e2e_setup_1.closeTestingApp)(mongoose_2.default.connections);
56
+ });
57
+ async function buildApp(callback) {
58
+ src_1.DynamicApiModule.state['resetState']();
59
+ const moduleRef = await testing_1.Test.createTestingModule({
60
+ imports: [
61
+ src_1.DynamicApiModule.forRoot(process.env.MONGO_DB_URL),
62
+ src_1.DynamicApiModule.forFeature({
63
+ entity: MatchEntity,
64
+ controllerOptions: { path: 'matches' },
65
+ routes: [{ type: 'CreateOne', callback }],
66
+ }),
67
+ src_1.DynamicApiModule.forFeature({
68
+ entity: LobbyEntity,
69
+ controllerOptions: { path: 'lobbies' },
70
+ }),
71
+ ],
72
+ }).compile();
73
+ await (0, e2e_setup_1.createTestingApp)(moduleRef);
74
+ }
75
+ (0, vitest_1.it)('createOneDocument should return every schema field, like findOneDocument', async () => {
76
+ await buildApp(async (match, methods) => {
77
+ createdOne = await methods.createOneDocument(LobbyEntity, {
78
+ gameType: 'domino',
79
+ familyId: `family-${match.id}`,
80
+ playerIds: ['p1', 'p2', 'p3'],
81
+ });
82
+ foundOne = await methods.findOneDocument(LobbyEntity, { _id: createdOne.id });
83
+ });
84
+ const { status, body } = await e2e_setup_1.server.post('/matches', { name: 'final' });
85
+ (0, vitest_1.expect)(status).toBe(201);
86
+ (0, vitest_1.expect)(createdOne).toBeDefined();
87
+ (0, vitest_1.expect)(createdOne).toMatchObject({
88
+ id: vitest_1.expect.any(String),
89
+ gameType: 'domino',
90
+ familyId: `family-${body.id}`,
91
+ playerIds: ['p1', 'p2', 'p3'],
92
+ });
93
+ (0, vitest_1.expect)(createdOne).not.toHaveProperty('$__');
94
+ (0, vitest_1.expect)(createdOne).not.toHaveProperty('_doc');
95
+ (0, vitest_1.expect)(createdOne.id).toBe(createdOne._id.toString());
96
+ (0, vitest_1.expect)(JSON.parse(JSON.stringify(createdOne))).toStrictEqual(JSON.parse(JSON.stringify(foundOne)));
97
+ });
98
+ (0, vitest_1.it)('createManyDocuments should return every schema field of each created document', async () => {
99
+ await buildApp(async (match, methods) => {
100
+ createdMany = await methods.createManyDocuments(LobbyEntity, [
101
+ { gameType: 'domino', familyId: 'f1', playerIds: ['a'] },
102
+ { gameType: 'battleship', familyId: 'f2', playerIds: ['b', 'c'] },
103
+ ]);
104
+ });
105
+ const { status } = await e2e_setup_1.server.post('/matches', { name: 'semi' });
106
+ (0, vitest_1.expect)(status).toBe(201);
107
+ (0, vitest_1.expect)(createdMany).toHaveLength(2);
108
+ (0, vitest_1.expect)(createdMany).toEqual([
109
+ vitest_1.expect.objectContaining({ id: vitest_1.expect.any(String), gameType: 'domino', familyId: 'f1', playerIds: ['a'] }),
110
+ vitest_1.expect.objectContaining({ id: vitest_1.expect.any(String), gameType: 'battleship', familyId: 'f2', playerIds: ['b', 'c'] }),
111
+ ]);
112
+ createdMany.forEach((doc) => {
113
+ (0, vitest_1.expect)(doc).not.toHaveProperty('$__');
114
+ (0, vitest_1.expect)(doc.id).toBe(doc._id.toString());
115
+ });
116
+ });
117
+ });
118
+ //# sourceMappingURL=create-document-callback-methods.e2e-spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-document-callback-methods.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/create-document-callback-methods.e2e-spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ import 'dotenv/config';
@@ -0,0 +1,150 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const vitest_1 = require("vitest");
13
+ const mongoose_1 = require("@nestjs/mongoose");
14
+ const testing_1 = require("@nestjs/testing");
15
+ const jwt = require("jsonwebtoken");
16
+ const mongoose_2 = require("mongoose");
17
+ const socket_io_client_1 = require("socket.io-client");
18
+ require("dotenv/config");
19
+ const src_1 = require("../../src");
20
+ const e2e_setup_1 = require("../e2e.setup");
21
+ const JWT_SECRET = 'ws-invalid-token-e2e-secret';
22
+ const TIMEOUT_MS = 5000;
23
+ let WsUserEntity = class WsUserEntity extends src_1.BaseEntity {
24
+ };
25
+ __decorate([
26
+ (0, mongoose_1.Prop)({ type: String, required: true }),
27
+ __metadata("design:type", String)
28
+ ], WsUserEntity.prototype, "email", void 0);
29
+ __decorate([
30
+ (0, mongoose_1.Prop)({ type: String, required: true }),
31
+ __metadata("design:type", String)
32
+ ], WsUserEntity.prototype, "password", void 0);
33
+ WsUserEntity = __decorate([
34
+ (0, mongoose_1.Schema)({ collection: 'ws-invalid-token-users' })
35
+ ], WsUserEntity);
36
+ function connect(token) {
37
+ return new Promise((resolve, reject) => {
38
+ const socket = (0, socket_io_client_1.io)(global.appBaseUrl, { auth: token ? { token } : {}, reconnection: false });
39
+ let unauthorized;
40
+ const timeout = setTimeout(() => {
41
+ socket.close();
42
+ reject(new Error('Socket connection timed out'));
43
+ }, TIMEOUT_MS);
44
+ socket.on('unauthorized', (payload) => {
45
+ unauthorized = payload;
46
+ });
47
+ socket.once('connect', () => {
48
+ setTimeout(() => {
49
+ clearTimeout(timeout);
50
+ resolve({ connected: true, socket, unauthorized });
51
+ }, 100);
52
+ });
53
+ socket.once('connect_error', (error) => {
54
+ clearTimeout(timeout);
55
+ socket.close();
56
+ resolve({ connected: false, error });
57
+ });
58
+ });
59
+ }
60
+ (0, vitest_1.describe)('WebSockets — invalid handshake token (e2e)', () => {
61
+ const onConnection = vitest_1.vi.fn();
62
+ const sockets = [];
63
+ (0, vitest_1.beforeEach)(() => {
64
+ src_1.DynamicApiModule.state['resetState']();
65
+ });
66
+ (0, vitest_1.afterEach)(async () => {
67
+ sockets.splice(0).forEach((s) => s.close());
68
+ await (0, e2e_setup_1.closeTestingApp)(mongoose_2.default.connections);
69
+ });
70
+ async function initApp(rejectInvalidToken) {
71
+ const moduleRef = await testing_1.Test.createTestingModule({
72
+ imports: [
73
+ src_1.DynamicApiModule.forRoot(process.env.MONGO_DB_URL, {
74
+ webSocket: true,
75
+ useAuth: {
76
+ userEntity: WsUserEntity,
77
+ jwt: { secret: JWT_SECRET, expiresIn: '1h' },
78
+ webSocket: true,
79
+ },
80
+ }),
81
+ ],
82
+ }).compile();
83
+ return (0, e2e_setup_1.createTestingApp)(moduleRef, undefined, async (app) => {
84
+ (0, src_1.enableDynamicAPIWebSockets)(app, { onConnection, rejectInvalidToken });
85
+ });
86
+ }
87
+ const expiredToken = () => jwt.sign({ id: 'u1', exp: Math.floor(Date.now() / 1000) - 60 }, JWT_SECRET);
88
+ const validToken = () => jwt.sign({ id: 'u1', email: 'ws@test.co' }, JWT_SECRET, { expiresIn: '1h' });
89
+ (0, vitest_1.describe)('default (rejectInvalidToken not set)', () => {
90
+ vitest_1.it.each([
91
+ ['a malformed token', () => 'not-a-jwt', 'jwt malformed'],
92
+ ['an expired token', expiredToken, 'jwt expired'],
93
+ ['a token signed with another secret', () => jwt.sign({ id: 'u1' }, 'other-secret'), 'invalid signature'],
94
+ ])('should accept %s as anonymous and emit unauthorized', async (_, token, message) => {
95
+ await initApp();
96
+ const result = await connect(token());
97
+ (0, vitest_1.expect)(result.connected).toBe(true);
98
+ if ('socket' in result) {
99
+ sockets.push(result.socket);
100
+ (0, vitest_1.expect)(result.unauthorized).toStrictEqual({ reason: 'invalid-token', message });
101
+ }
102
+ (0, vitest_1.expect)(onConnection).toHaveBeenCalledWith(vitest_1.expect.anything(), undefined);
103
+ });
104
+ (0, vitest_1.it)('should not emit unauthorized for a valid token', async () => {
105
+ await initApp();
106
+ const result = await connect(validToken());
107
+ (0, vitest_1.expect)(result.connected).toBe(true);
108
+ if ('socket' in result) {
109
+ sockets.push(result.socket);
110
+ (0, vitest_1.expect)(result.unauthorized).toBeUndefined();
111
+ }
112
+ (0, vitest_1.expect)(onConnection).toHaveBeenCalledWith(vitest_1.expect.anything(), vitest_1.expect.objectContaining({ id: 'u1' }));
113
+ });
114
+ });
115
+ (0, vitest_1.describe)('rejectInvalidToken: true', () => {
116
+ vitest_1.it.each([
117
+ ['a malformed token', () => 'not-a-jwt', 'Unauthorized: jwt malformed'],
118
+ ['an expired token', expiredToken, 'Unauthorized: jwt expired'],
119
+ ])('should refuse %s with a connect_error', async (_, token, message) => {
120
+ await initApp(true);
121
+ const result = await connect(token());
122
+ (0, vitest_1.expect)(result.connected).toBe(false);
123
+ if ('error' in result) {
124
+ (0, vitest_1.expect)(result.error.message).toBe(message);
125
+ }
126
+ (0, vitest_1.expect)(onConnection).not.toHaveBeenCalled();
127
+ });
128
+ (0, vitest_1.it)('should accept a valid token with its user', async () => {
129
+ await initApp(true);
130
+ const result = await connect(validToken());
131
+ (0, vitest_1.expect)(result.connected).toBe(true);
132
+ if ('socket' in result) {
133
+ sockets.push(result.socket);
134
+ (0, vitest_1.expect)(result.unauthorized).toBeUndefined();
135
+ }
136
+ (0, vitest_1.expect)(onConnection).toHaveBeenCalledWith(vitest_1.expect.anything(), vitest_1.expect.objectContaining({ id: 'u1' }));
137
+ });
138
+ (0, vitest_1.it)('should still accept a socket without any token as anonymous', async () => {
139
+ await initApp(true);
140
+ const result = await connect();
141
+ (0, vitest_1.expect)(result.connected).toBe(true);
142
+ if ('socket' in result) {
143
+ sockets.push(result.socket);
144
+ (0, vitest_1.expect)(result.unauthorized).toBeUndefined();
145
+ }
146
+ (0, vitest_1.expect)(onConnection).toHaveBeenCalledWith(vitest_1.expect.anything(), undefined);
147
+ });
148
+ });
149
+ });
150
+ //# sourceMappingURL=websockets-invalid-token.e2e-spec.js.map