@tsed/socketio 7.18.3-rc.1 → 7.18.3

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.
Files changed (89) hide show
  1. package/.eslintignore +13 -0
  2. package/.eslintrc.js +1 -0
  3. package/jest.config.js +9 -6
  4. package/lib/cjs/SocketIOModule.js.map +1 -1
  5. package/lib/cjs/class/SocketHandlersBuilder.js.map +1 -1
  6. package/lib/cjs/class/SocketProviderMetadata.js.map +1 -1
  7. package/lib/cjs/constants/constants.js.map +1 -1
  8. package/lib/cjs/decorators/args.js.map +1 -1
  9. package/lib/cjs/decorators/broadcast.js.map +1 -1
  10. package/lib/cjs/decorators/broadcastOthers.js.map +1 -1
  11. package/lib/cjs/decorators/emit.js.map +1 -1
  12. package/lib/cjs/decorators/input.js.map +1 -1
  13. package/lib/cjs/decorators/inputAndBroadcast.js.map +1 -1
  14. package/lib/cjs/decorators/inputAndBroadcastOthers.js.map +1 -1
  15. package/lib/cjs/decorators/inputAndEmit.js.map +1 -1
  16. package/lib/cjs/decorators/io.js.map +1 -1
  17. package/lib/cjs/decorators/nsp.js.map +1 -1
  18. package/lib/cjs/decorators/socket.js.map +1 -1
  19. package/lib/cjs/decorators/socketErr.js.map +1 -1
  20. package/lib/cjs/decorators/socketEventName.js.map +1 -1
  21. package/lib/cjs/decorators/socketFilter.js.map +1 -1
  22. package/lib/cjs/decorators/socketMiddleware.js.map +1 -1
  23. package/lib/cjs/decorators/socketMiddlewareError.js.map +1 -1
  24. package/lib/cjs/decorators/socketNsp.js.map +1 -1
  25. package/lib/cjs/decorators/socketReturns.js.map +1 -1
  26. package/lib/cjs/decorators/socketService.js.map +1 -1
  27. package/lib/cjs/decorators/socketSession.js.map +1 -1
  28. package/lib/cjs/decorators/socketUseAfter.js.map +1 -1
  29. package/lib/cjs/decorators/socketUseBefore.js.map +1 -1
  30. package/lib/cjs/index.js.map +1 -1
  31. package/lib/cjs/interfaces/OnNamespaceInit.js.map +1 -1
  32. package/lib/cjs/interfaces/SocketFilters.js.map +1 -1
  33. package/lib/cjs/interfaces/SocketHandlerMetadata.js.map +1 -1
  34. package/lib/cjs/interfaces/SocketInjectableNsp.js.map +1 -1
  35. package/lib/cjs/interfaces/SocketParamMetadata.js.map +1 -1
  36. package/lib/cjs/interfaces/SocketProviderTypes.js.map +1 -1
  37. package/lib/cjs/interfaces/SocketReturnsTypes.js.map +1 -1
  38. package/lib/cjs/interfaces/interfaces.js.map +1 -1
  39. package/lib/cjs/registries/NspSessionRegistry.js.map +1 -1
  40. package/lib/cjs/services/SocketIOServer.js.map +1 -1
  41. package/lib/cjs/services/SocketIOService.js.map +1 -1
  42. package/lib/esm/SocketIOModule.js.map +1 -1
  43. package/lib/esm/class/SocketHandlersBuilder.js.map +1 -1
  44. package/lib/esm/class/SocketProviderMetadata.js.map +1 -1
  45. package/lib/esm/constants/constants.js.map +1 -1
  46. package/lib/esm/decorators/args.js.map +1 -1
  47. package/lib/esm/decorators/broadcast.js.map +1 -1
  48. package/lib/esm/decorators/broadcastOthers.js.map +1 -1
  49. package/lib/esm/decorators/emit.js.map +1 -1
  50. package/lib/esm/decorators/input.js.map +1 -1
  51. package/lib/esm/decorators/inputAndBroadcast.js.map +1 -1
  52. package/lib/esm/decorators/inputAndBroadcastOthers.js.map +1 -1
  53. package/lib/esm/decorators/inputAndEmit.js.map +1 -1
  54. package/lib/esm/decorators/io.js.map +1 -1
  55. package/lib/esm/decorators/nsp.js.map +1 -1
  56. package/lib/esm/decorators/socket.js.map +1 -1
  57. package/lib/esm/decorators/socketErr.js.map +1 -1
  58. package/lib/esm/decorators/socketEventName.js.map +1 -1
  59. package/lib/esm/decorators/socketFilter.js.map +1 -1
  60. package/lib/esm/decorators/socketMiddleware.js.map +1 -1
  61. package/lib/esm/decorators/socketMiddlewareError.js.map +1 -1
  62. package/lib/esm/decorators/socketNsp.js.map +1 -1
  63. package/lib/esm/decorators/socketReturns.js.map +1 -1
  64. package/lib/esm/decorators/socketService.js.map +1 -1
  65. package/lib/esm/decorators/socketSession.js.map +1 -1
  66. package/lib/esm/decorators/socketUseAfter.js.map +1 -1
  67. package/lib/esm/decorators/socketUseBefore.js.map +1 -1
  68. package/lib/esm/index.js.map +1 -1
  69. package/lib/esm/interfaces/OnNamespaceInit.js.map +1 -1
  70. package/lib/esm/interfaces/SocketFilters.js.map +1 -1
  71. package/lib/esm/interfaces/SocketHandlerMetadata.js.map +1 -1
  72. package/lib/esm/interfaces/SocketInjectableNsp.js.map +1 -1
  73. package/lib/esm/interfaces/SocketParamMetadata.js.map +1 -1
  74. package/lib/esm/interfaces/SocketProviderTypes.js.map +1 -1
  75. package/lib/esm/interfaces/SocketReturnsTypes.js.map +1 -1
  76. package/lib/esm/interfaces/interfaces.js.map +1 -1
  77. package/lib/esm/registries/NspSessionRegistry.js.map +1 -1
  78. package/lib/esm/services/SocketIOServer.js.map +1 -1
  79. package/lib/esm/services/SocketIOService.js.map +1 -1
  80. package/lib/tsconfig.esm.tsbuildinfo +1 -0
  81. package/lib/tsconfig.tsbuildinfo +1 -0
  82. package/lib/types/decorators/nsp.d.ts +2 -2
  83. package/lib/types/decorators/socket.d.ts +1 -1
  84. package/lib/types/decorators/socketNsp.d.ts +1 -1
  85. package/lib/types/decorators/socketSession.d.ts +1 -1
  86. package/lib/types/services/SocketIOServer.d.ts +1 -1
  87. package/package.json +24 -22
  88. package/tsconfig.esm.json +54 -0
  89. package/tsconfig.compile.esm.json +0 -12
package/.eslintignore ADDED
@@ -0,0 +1,13 @@
1
+ node_modules
2
+ docs
3
+ docs-references
4
+ lib
5
+ dist
6
+ coverage
7
+ .nyc_output
8
+ *-lock.json
9
+ *.lock
10
+ benchmarks.*
11
+ **/generated
12
+
13
+ **/*.js
package/.eslintrc.js ADDED
@@ -0,0 +1 @@
1
+ module.exports = require("@tsed/eslint/node.js");
package/jest.config.js CHANGED
@@ -1,14 +1,17 @@
1
1
  // For a detailed explanation regarding each configuration property, visit:
2
2
  // https://jestjs.io/docs/en/configuration.html
3
-
4
3
  module.exports = {
5
- ...require("@tsed/jest-config")(__dirname, "socketio"),
4
+ ...require("@tsed/jest-config"),
5
+ roots: ["<rootDir>/src", "<rootDir>/test"],
6
+ moduleNameMapper: {
7
+ "^@tsed/socketio$": "<rootDir>/src/index.ts"
8
+ },
6
9
  coverageThreshold: {
7
10
  global: {
8
- statements: 100,
9
- branches: 93.87,
10
- functions: 98.95,
11
- lines: 100
11
+ statements: 99.59,
12
+ branches: 94.5,
13
+ functions: 100,
14
+ lines: 99.59
12
15
  }
13
16
  }
14
17
  };
@@ -1 +1 @@
1
- {"version":3,"file":"SocketIOModule.js","sourceRoot":"","sources":["../../src/SocketIOModule.ts"],"names":[],"mappings":"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","sourcesContent":["import {$log, AfterListen, Constant, InjectorService, Module, OnDestroy, Provider} from \"@tsed/common\";\nimport {nameOf} from \"@tsed/core\";\nimport {Server, ServerOptions} from \"socket.io\";\nimport {SocketProviderMetadata} from \"./class/SocketProviderMetadata\"; // tslint:disable-line: no-unused-variable\nimport {PROVIDER_TYPE_SOCKET_SERVICE} from \"./constants/constants\";\nimport {IO} from \"./decorators/io\";\nimport {SocketIOService} from \"./services/SocketIOService\";\nimport Http from \"http\";\nimport Https from \"https\";\nimport {Inject} from \"@tsed/di\";\n\n/**\n * @ignore\n */\n@Module()\nexport class SocketIOModule implements AfterListen, OnDestroy {\n @Constant(\"logger.disableRoutesSummary\", false)\n protected disableRoutesSummary: boolean;\n\n @Constant(\"socketIO\", {})\n protected settings: Partial<ServerOptions>;\n\n @Inject()\n protected injector: InjectorService;\n\n @Inject(Http.Server)\n protected httpServer: Http.Server | null;\n\n @Inject(Https.Server)\n protected httpsServer: Https.Server | null;\n\n @IO()\n private io: Server;\n\n @Inject()\n private socketIOService: SocketIOService;\n\n $afterListen() {\n if (this.httpServer) {\n this.io.attach(this.httpServer, {...this.settings});\n }\n\n if (this.httpsServer) {\n this.io.attach(this.httpsServer, {...this.settings});\n }\n\n if (this.settings.adapter) {\n this.io.adapter(this.settings.adapter);\n }\n\n this.getWebsocketServices().forEach((provider) => this.socketIOService.addSocketProvider(provider));\n\n if (!this.disableRoutesSummary) {\n this.printSocketEvents();\n }\n\n return this.injector.emit(\"$afterSocketListen\");\n }\n\n $onDestroy() {\n return this.io?.close && this.io?.engine && new Promise((resolve) => this.io.close(() => resolve(undefined)));\n }\n\n /**\n *\n * @returns {Provider<any>[]}\n */\n protected getWebsocketServices(): Provider<any>[] {\n return Array.from(this.injector.getProviders(PROVIDER_TYPE_SOCKET_SERVICE));\n }\n\n /**\n *\n */\n protected printSocketEvents() {\n const list = this.getWebsocketServices().reduce((acc: any[], provider) => {\n const socketProvider = new SocketProviderMetadata(provider.store.get(\"socketIO\"));\n\n if (socketProvider.namespace) {\n socketProvider.getHandlers().forEach((handler) => {\n acc.push({\n namespace: socketProvider.namespace,\n inputEvent: handler.eventName,\n outputEvent: (handler.returns && handler.returns.eventName) || \"\",\n outputType: (handler.returns && handler.returns.type) || \"\",\n name: `${nameOf(provider.useClass)}.${handler.methodClassName}`\n });\n });\n }\n\n return acc;\n }, []);\n\n this.injector.logger.info(\"Socket events mounted:\");\n\n const str = $log.drawTable(list, {\n padding: 1,\n header: {\n namespace: \"Namespace\",\n inputEvent: \"Input event\",\n outputEvent: \"Output event\",\n outputType: \"Output type\",\n name: \"Class method\"\n }\n });\n\n this.injector.logger.info(\"\\n\" + str.trim());\n\n this.injector.logger.info(\"Socket server started...\");\n }\n}\n"]}
1
+ {"version":3,"file":"SocketIOModule.js","sourceRoot":"","sources":["../../src/SocketIOModule.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SocketHandlersBuilder.js","sourceRoot":"","sources":["../../../src/class/SocketHandlersBuilder.ts"],"names":[],"mappings":"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","sourcesContent":["import {InjectorService, Provider} from \"@tsed/di\";\nimport {Store} from \"@tsed/core\";\nimport {$log} from \"@tsed/logger\";\nimport {deserialize} from \"@tsed/json-mapper\";\nimport {Namespace, Socket} from \"socket.io\";\nimport {SocketFilters} from \"../interfaces/SocketFilters\";\nimport {SocketHandlerMetadata} from \"../interfaces/SocketHandlerMetadata\";\nimport {SocketInjectableNsp} from \"../interfaces/SocketInjectableNsp\";\nimport {SocketParamMetadata} from \"../interfaces/SocketParamMetadata\";\nimport {SocketProviderTypes} from \"../interfaces/SocketProviderTypes\";\nimport {SocketReturnsTypes} from \"../interfaces/SocketReturnsTypes\";\nimport {getNspSession} from \"../registries/NspSessionRegistry\";\nimport {SocketProviderMetadata} from \"./SocketProviderMetadata\";\n\n/**\n * @ignore\n */\nexport class SocketHandlersBuilder {\n private socketProviderMetadata: SocketProviderMetadata;\n\n constructor(private provider: Provider, private injector: InjectorService) {\n this.socketProviderMetadata = new SocketProviderMetadata(this.provider.store.get(\"socketIO\"));\n }\n\n /**\n *\n * @param {SocketHandlerMetadata} handlerMetadata\n * @param scope\n * @returns {(data) => void}\n */\n private static bindResponseMiddleware(handlerMetadata: SocketHandlerMetadata, scope: any) {\n const {returns} = handlerMetadata;\n\n return (response: any): void => {\n if (returns) {\n switch (returns.type) {\n case SocketReturnsTypes.BROADCAST:\n scope.nsp.emit(returns.eventName, response);\n break;\n case SocketReturnsTypes.BROADCAST_OTHERS:\n scope.socket.broadcast.emit(returns.eventName, response);\n break;\n case SocketReturnsTypes.EMIT:\n scope.socket.emit(returns.eventName, response);\n break;\n }\n }\n };\n }\n\n /**\n *\n * @returns {any}\n */\n public build(nsps: Map<string | RegExp, Namespace>) {\n const instance = this.injector.get(this.provider.token);\n const {injectNamespaces, namespace} = this.socketProviderMetadata;\n const nsp = nsps.get(namespace);\n\n instance.$onConnection && this.socketProviderMetadata.createHook(\"$onConnection\", \"connection\");\n instance.$onDisconnect && this.socketProviderMetadata.createHook(\"$onDisconnect\", \"disconnect\");\n\n instance._nspSession = getNspSession(namespace);\n\n injectNamespaces.forEach((setting: SocketInjectableNsp) => {\n instance[setting.propertyKey] = nsps.get(setting.nsp || namespace);\n });\n\n instance[\"nsp\"] = nsp;\n\n if (instance.$onNamespaceInit) {\n instance.$onNamespaceInit(nsp);\n }\n\n return this;\n }\n\n /**\n *\n * @param {Socket} socket\n * @param {Namespace} nsp\n */\n public onConnection(socket: Socket, nsp: Namespace) {\n const {socketProviderMetadata} = this;\n const instance = this.injector.get(this.provider.token);\n\n this.buildHandlers(socket, nsp);\n this.createSession(socket);\n\n if (instance.$onConnection) {\n this.invoke(instance, socketProviderMetadata.$onConnection, {socket, nsp});\n }\n }\n\n public onDisconnect(socket: Socket, nsp: Namespace) {\n const instance = this.injector.get(this.provider.token);\n const {socketProviderMetadata} = this;\n\n if (instance.$onDisconnect) {\n this.invoke(instance, socketProviderMetadata.$onDisconnect, {socket, nsp});\n }\n\n this.destroySession(socket);\n }\n\n /**\n *\n * @param {Socket} socket\n */\n private createSession(socket: Socket) {\n const instance = this.injector.get(this.provider.token);\n instance._nspSession.set(socket.id, new Map());\n }\n\n /**\n *\n * @param {Socket} socket\n */\n private destroySession(socket: Socket) {\n const instance = this.injector.get(this.provider.token);\n instance._nspSession.delete(socket.id);\n }\n\n private buildHandlers(socket: Socket, nsp: Namespace) {\n const {socketProviderMetadata} = this;\n\n socketProviderMetadata.getHandlers().forEach((handler) => {\n const {eventName} = handler;\n\n if (eventName) {\n socket.on(eventName, (...args) => {\n this.runQueue(handler, args, socket, nsp);\n });\n }\n });\n }\n\n private async runQueue(handlerMetadata: SocketHandlerMetadata, args: any[], socket: Socket, nsp: Namespace) {\n let promise: any = Promise.resolve(args);\n const instance = this.injector.get(this.provider.token);\n const {useBefore, useAfter} = this.socketProviderMetadata;\n const scope = {\n args,\n socket,\n nsp,\n eventName: handlerMetadata.eventName\n };\n\n promise = promise.then(() => this.deserialize(handlerMetadata, scope));\n\n if (useBefore) {\n useBefore.forEach((target: any) => (promise = this.bindMiddleware(target, scope, promise)));\n }\n\n if (handlerMetadata.useBefore) {\n handlerMetadata.useBefore.forEach((target) => (promise = this.bindMiddleware(target, scope, promise)));\n }\n\n promise = promise\n .then(() => this.invoke(instance, handlerMetadata, scope))\n .then(SocketHandlersBuilder.bindResponseMiddleware(handlerMetadata, scope));\n\n if (handlerMetadata.useAfter) {\n handlerMetadata.useAfter.forEach((target) => (promise = this.bindMiddleware(target, scope, promise)));\n }\n\n if (useAfter) {\n useAfter.forEach((target: any) => (promise = this.bindMiddleware(target, scope, promise)));\n }\n\n return promise.catch((er: any) => {\n /* istanbul ignore next */\n $log.error(handlerMetadata.eventName, er);\n /* istanbul ignore next */\n process.exit(-1);\n });\n }\n\n private deserialize(handlerMetadata: SocketHandlerMetadata, scope: any) {\n const {parameters} = handlerMetadata;\n Object.keys(parameters || []).forEach((index: any) => {\n const {filter, useMapper, mapIndex, type, collectionType} = parameters![index];\n let value = scope.args[mapIndex!];\n\n if (filter === SocketFilters.ARGS && useMapper) {\n value = deserialize(value, {\n useAlias: true,\n type,\n collectionType\n });\n scope.args[mapIndex!] = value;\n }\n });\n }\n\n private bindMiddleware(target: any, scope: any, promise: Promise<any>): Promise<any> {\n const instance = this.injector.get(target);\n\n if (instance) {\n const handlerMetadata: SocketProviderMetadata = new SocketProviderMetadata(Store.from(instance).get(\"socketIO\"));\n\n if (handlerMetadata.type === SocketProviderTypes.MIDDLEWARE) {\n if (handlerMetadata.error) {\n return promise.catch((error: any) => this.invoke(instance, handlerMetadata.useHandler, {error, ...scope}));\n }\n\n return promise\n .then(() => this.invoke(instance, handlerMetadata.useHandler, scope))\n .then((result: any) => {\n if (result) {\n scope.args = [].concat(result);\n }\n });\n }\n }\n\n return promise;\n }\n\n private async invoke(instance: any, handlerMetadata: SocketHandlerMetadata, scope: any): Promise<any> {\n const {methodClassName, parameters} = handlerMetadata;\n\n return await instance[methodClassName](...this.buildParameters(parameters!, scope));\n }\n\n private buildParameters(parameters: {[key: number]: SocketParamMetadata}, scope: any): any[] {\n return Object.keys(parameters || []).map((index: any) => {\n const param: SocketParamMetadata = parameters[index];\n\n switch (param.filter) {\n case SocketFilters.ARGS:\n if (param.mapIndex !== undefined) {\n return scope.args[param.mapIndex];\n }\n\n return scope.args;\n\n case SocketFilters.EVENT_NAME:\n return scope.eventName;\n\n case SocketFilters.SOCKET:\n return scope.socket;\n\n case SocketFilters.NSP:\n return scope.nsp;\n\n case SocketFilters.ERR:\n return scope.error;\n\n case SocketFilters.SESSION:\n const instance = this.injector.get(this.provider.token);\n return instance._nspSession.get(scope.socket.id);\n\n case SocketFilters.SOCKET_NSP:\n return scope.socket.nsp;\n }\n });\n }\n}\n"]}
1
+ {"version":3,"file":"SocketHandlersBuilder.js","sourceRoot":"","sources":["../../../src/class/SocketHandlersBuilder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SocketProviderMetadata.js","sourceRoot":"","sources":["../../../src/class/SocketProviderMetadata.ts"],"names":[],"mappings":";;;AAIA,MAAa,sBAAsB;IAC1B,IAAI,CAAsB;IAC1B,SAAS,CAAkB;IAC3B,KAAK,GAAY,KAAK,CAAC;IACvB,gBAAgB,GAA0B,EAAE,CAAC;IAC7C,SAAS,GAAU,EAAE,CAAC;IACtB,QAAQ,GAAU,EAAE,CAAC;IACrB,QAAQ,GAA0C,EAAE,CAAC;IAE5D,YAAY,UAA2C,EAAE;QACvD,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,OAAO,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1D,OAAO,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC/E,OAAO,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1D,OAAO,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvD,OAAO,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,GAAG,CAAC,GAAW;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,QAA+B;QAC9C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;IAChC,CAAC;IAED,WAAW;QACT,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;aACjC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;aACzE,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,UAAU,CAAC,IAAY,EAAE,SAAiB;QACxC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;YACb,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACzB,SAAS;YACT,eAAe,EAAE,IAAI;SACtB,CAAC,CAAC;IACL,CAAC;CACF;AApDD,wDAoDC","sourcesContent":["import {SocketHandlerMetadata} from \"../interfaces/SocketHandlerMetadata\";\nimport {SocketInjectableNsp} from \"../interfaces/SocketInjectableNsp\";\nimport {SocketProviderTypes} from \"../interfaces/SocketProviderTypes\";\n\nexport class SocketProviderMetadata {\n public type: SocketProviderTypes;\n public namespace: string | RegExp;\n public error: boolean = false;\n public injectNamespaces: SocketInjectableNsp[] = [];\n public useBefore: any[] = [];\n public useAfter: any[] = [];\n public handlers: Record<string, SocketHandlerMetadata> = {};\n\n constructor(options: Partial<SocketProviderMetadata> = {}) {\n options.type && (this.type = options.type);\n options.namespace && (this.namespace = options.namespace);\n options.error && (this.error = options.error);\n options.injectNamespaces && (this.injectNamespaces = options.injectNamespaces);\n options.useBefore && (this.useBefore = options.useBefore);\n options.useAfter && (this.useAfter = options.useAfter);\n options.handlers && (this.handlers = options.handlers);\n }\n\n get useHandler() {\n return this.get(\"use\");\n }\n\n get $onConnection() {\n return this.get(\"$onConnection\");\n }\n\n get $onDisconnect() {\n return this.get(\"$onDisconnect\");\n }\n\n get(key: string): SocketHandlerMetadata {\n return this.handlers[key];\n }\n\n set(key: string, metadata: SocketHandlerMetadata): void {\n this.handlers[key] = metadata;\n }\n\n getHandlers() {\n return Object.entries(this.handlers)\n .filter(([key]) => [\"$onConnection\", \"$onDisconnect\"].indexOf(key) === -1)\n .map(([, handler]) => handler);\n }\n\n createHook(hook: string, eventName: string): void {\n this.set(hook, {\n ...(this.get(hook) || {}),\n eventName,\n methodClassName: hook\n });\n }\n}\n"]}
1
+ {"version":3,"file":"SocketProviderMetadata.js","sourceRoot":"","sources":["../../../src/class/SocketProviderMetadata.ts"],"names":[],"mappings":";;;AAIA,MAAa,sBAAsB;IAC1B,IAAI,CAAsB;IAC1B,SAAS,CAAkB;IAC3B,KAAK,GAAY,KAAK,CAAC;IACvB,gBAAgB,GAA0B,EAAE,CAAC;IAC7C,SAAS,GAAU,EAAE,CAAC;IACtB,QAAQ,GAAU,EAAE,CAAC;IACrB,QAAQ,GAA0C,EAAE,CAAC;IAE5D,YAAY,UAA2C,EAAE;QACvD,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,OAAO,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1D,OAAO,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC/E,OAAO,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1D,OAAO,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvD,OAAO,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,GAAG,CAAC,GAAW;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,QAA+B;QAC9C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;IAChC,CAAC;IAED,WAAW;QACT,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;aACjC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;aACzE,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,UAAU,CAAC,IAAY,EAAE,SAAiB;QACxC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;YACb,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACzB,SAAS;YACT,eAAe,EAAE,IAAI;SACtB,CAAC,CAAC;IACL,CAAC;CACF;AApDD,wDAoDC"}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/constants/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,4BAA4B,GAAG,eAAe,CAAC","sourcesContent":["export const PROVIDER_TYPE_SOCKET_SERVICE = \"socketService\";\n"]}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/constants/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,4BAA4B,GAAG,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"args.js","sourceRoot":"","sources":["../../../src/decorators/args.ts"],"names":[],"mappings":";;;AAAA,qCAAyD;AACzD,+DAA0D;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,SAAgB,IAAI,CAAC,QAAiB,EAAE,OAAa;IACnD,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa,EAAE,EAAE;QACzD,MAAM,KAAK,GAAG,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,eAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC;QAChE,MAAM,KAAK,GAAG;YACZ,MAAM,EAAE,6BAAa,CAAC,IAAI;YAC1B,SAAS,EAAE,KAAK;SACjB,CAAC;QAEF,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC1B,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;gBACnB,QAAQ;gBACR,SAAS,EAAE,IAAI;gBACf,IAAI,EAAE,OAAO,IAAI,IAAI;gBACrB,cAAc,EAAE,IAAA,mBAAY,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;aACtD,CAAC,CAAC;SACJ;QAED,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE;YACtB,QAAQ,EAAE;gBACR,CAAC,WAAW,CAAC,EAAE;oBACb,UAAU,EAAE;wBACV,CAAC,KAAK,CAAC,EAAE,KAAK;qBACf;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AA5BD,oBA4BC","sourcesContent":["import {isCollection, Metadata, Store} from \"@tsed/core\";\nimport {SocketFilters} from \"../interfaces/SocketFilters\";\n\n/**\n * Inject the list of arguments in the decorated parameter.\n *\n * `@Args` accept an index parameter to pick up directly the item in the arguments list.\n *\n * ### Example\n *\n * ```typescript\n * @SocketService(\"/nsp\")\n * export class MyWS {\n *\n * @Input(\"event\")\n * myMethod(@Args() arguments: any[]) {\n *\n * }\n *\n * @Input(\"event2\")\n * myMethod2(@Args(0) data: any) {\n *\n * }\n * }\n * ```\n *\n * @decorator\n * @param mapIndex\n * @param useType\n */\nexport function Args(mapIndex?: number, useType?: any): any {\n return (target: any, propertyKey: string, index: number) => {\n const store = Store.from(target);\n const type = Metadata.getParamTypes(target, propertyKey)[index];\n const param = {\n filter: SocketFilters.ARGS,\n useMapper: false\n };\n\n if (mapIndex !== undefined) {\n Object.assign(param, {\n mapIndex,\n useMapper: true,\n type: useType || type,\n collectionType: isCollection(type) ? type : undefined\n });\n }\n\n store.merge(\"socketIO\", {\n handlers: {\n [propertyKey]: {\n parameters: {\n [index]: param\n }\n }\n }\n });\n };\n}\n"]}
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../../src/decorators/args.ts"],"names":[],"mappings":";;;AAAA,qCAAyD;AACzD,+DAA0D;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,SAAgB,IAAI,CAAC,QAAiB,EAAE,OAAa;IACnD,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa,EAAE,EAAE;QACzD,MAAM,KAAK,GAAG,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,eAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC;QAChE,MAAM,KAAK,GAAG;YACZ,MAAM,EAAE,6BAAa,CAAC,IAAI;YAC1B,SAAS,EAAE,KAAK;SACjB,CAAC;QAEF,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC1B,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;gBACnB,QAAQ;gBACR,SAAS,EAAE,IAAI;gBACf,IAAI,EAAE,OAAO,IAAI,IAAI;gBACrB,cAAc,EAAE,IAAA,mBAAY,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;aACtD,CAAC,CAAC;SACJ;QAED,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE;YACtB,QAAQ,EAAE;gBACR,CAAC,WAAW,CAAC,EAAE;oBACb,UAAU,EAAE;wBACV,CAAC,KAAK,CAAC,EAAE,KAAK;qBACf;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AA5BD,oBA4BC"}
@@ -1 +1 @@
1
- {"version":3,"file":"broadcast.js","sourceRoot":"","sources":["../../../src/decorators/broadcast.ts"],"names":[],"mappings":";;;AAAA,yEAAoE;AACpE,mDAA8C;AAE9C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,SAAS,CAAC,SAAiB;IACzC,OAAO,IAAA,6BAAa,EAAC,SAAS,EAAE,uCAAkB,CAAC,SAAS,CAAC,CAAC;AAChE,CAAC;AAFD,8BAEC","sourcesContent":["import {SocketReturnsTypes} from \"../interfaces/SocketReturnsTypes\";\nimport {SocketReturns} from \"./socketReturns\";\n\n/**\n * Broadcast the response for all client registered in the same namespace.\n *\n * With the `@Broadcast` decorator, the method will accept a return type (Promise or not).\n *\n * ### Example\n *\n * ```typescript\n * @SocketService(\"/nsp\")\n * export class MyWS {\n *\n * @Input(\"event\")\n * @Broadcast(\"returnEvent\")\n * async myMethod(@Args(0) data: any, @Nsp socket): Promise<any> {\n * return Promise.resolve({data})\n * }\n * }\n * ```\n *\n * @decorator\n * @param eventName\n */\nexport function Broadcast(eventName: string) {\n return SocketReturns(eventName, SocketReturnsTypes.BROADCAST);\n}\n"]}
1
+ {"version":3,"file":"broadcast.js","sourceRoot":"","sources":["../../../src/decorators/broadcast.ts"],"names":[],"mappings":";;;AAAA,yEAAoE;AACpE,mDAA8C;AAE9C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,SAAS,CAAC,SAAiB;IACzC,OAAO,IAAA,6BAAa,EAAC,SAAS,EAAE,uCAAkB,CAAC,SAAS,CAAC,CAAC;AAChE,CAAC;AAFD,8BAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"broadcastOthers.js","sourceRoot":"","sources":["../../../src/decorators/broadcastOthers.ts"],"names":[],"mappings":";;;AAAA,yEAAoE;AACpE,mDAA8C;AAE9C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,eAAe,CAAC,SAAiB;IAC/C,OAAO,IAAA,6BAAa,EAAC,SAAS,EAAE,uCAAkB,CAAC,gBAAgB,CAAC,CAAC;AACvE,CAAC;AAFD,0CAEC","sourcesContent":["import {SocketReturnsTypes} from \"../interfaces/SocketReturnsTypes\";\nimport {SocketReturns} from \"./socketReturns\";\n\n/**\n * Broadcast the response for all client registered in the same namespace except to the current client.\n *\n * With the `@BroadcastOthers` decorator, the method will accept a return type (Promise or not).\n *\n * ### Example\n *\n * ```typescript\n * @SocketService(\"/nsp\")\n * export class MyWS {\n *\n * @Input(\"event\")\n * @BroadcastOthers(\"returnEvent\")\n * async myMethod(@Args(0) data: any, @Nsp socket): Promise<any> {\n * return Promise.resolve({data})\n * }\n * }\n * ```\n *\n * @decorator\n * @param eventName\n */\nexport function BroadcastOthers(eventName: string) {\n return SocketReturns(eventName, SocketReturnsTypes.BROADCAST_OTHERS);\n}\n"]}
1
+ {"version":3,"file":"broadcastOthers.js","sourceRoot":"","sources":["../../../src/decorators/broadcastOthers.ts"],"names":[],"mappings":";;;AAAA,yEAAoE;AACpE,mDAA8C;AAE9C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,eAAe,CAAC,SAAiB;IAC/C,OAAO,IAAA,6BAAa,EAAC,SAAS,EAAE,uCAAkB,CAAC,gBAAgB,CAAC,CAAC;AACvE,CAAC;AAFD,0CAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"emit.js","sourceRoot":"","sources":["../../../src/decorators/emit.ts"],"names":[],"mappings":";;;AAAA,yEAAoE;AACpE,mDAA8C;AAE9C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,IAAI,CAAC,SAAiB;IACpC,OAAO,IAAA,6BAAa,EAAC,SAAS,EAAE,uCAAkB,CAAC,IAAI,CAAC,CAAC;AAC3D,CAAC;AAFD,oBAEC","sourcesContent":["import {SocketReturnsTypes} from \"../interfaces/SocketReturnsTypes\";\nimport {SocketReturns} from \"./socketReturns\";\n\n/**\n * Emit the response to the client.\n *\n * With the `@Emit` decorator, the method will accept a return type (Promise or not).\n *\n * ### Example\n *\n * ```typescript\n * @SocketService(\"/nsp\")\n * export class MyWS {\n *\n * @Input(\"event\")\n * @Emit(\"returnEvent\")\n * async myMethod(@Args(0) data: any, @Nsp socket): Promise<any> {\n * return Promise.resolve({data})\n * }\n * }\n * ```\n *\n * @decorator\n * @param eventName\n */\nexport function Emit(eventName: string) {\n return SocketReturns(eventName, SocketReturnsTypes.EMIT);\n}\n"]}
1
+ {"version":3,"file":"emit.js","sourceRoot":"","sources":["../../../src/decorators/emit.ts"],"names":[],"mappings":";;;AAAA,yEAAoE;AACpE,mDAA8C;AAE9C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,IAAI,CAAC,SAAiB;IACpC,OAAO,IAAA,6BAAa,EAAC,SAAS,EAAE,uCAAkB,CAAC,IAAI,CAAC,CAAC;AAC3D,CAAC;AAFD,oBAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"input.js","sourceRoot":"","sources":["../../../src/decorators/input.ts"],"names":[],"mappings":";;;AAAA,qCAAiC;AAEjC;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,KAAK,CAAC,SAAiB;IACrC,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;YACnC,QAAQ,EAAE;gBACR,CAAC,WAAW,CAAC,EAAE;oBACb,SAAS;oBACT,eAAe,EAAE,WAAW;iBAC7B;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAXD,sBAWC","sourcesContent":["import {Store} from \"@tsed/core\";\n\n/**\n * Attach the decorated method to the socket event.\n *\n * ### Example\n *\n * ```typescript\n * @SocketService(\"/nsp\")\n * export class MyWS {\n *\n * @Input(\"event\")\n * myMethod(@Args(0) data: any, @Nsp socket) {\n *\n * }\n * }\n * ```\n *\n * @decorator\n * @param eventName\n */\nexport function Input(eventName: string) {\n return (target: any, propertyKey: string, descriptor: PropertyDescriptor) => {\n Store.from(target).merge(\"socketIO\", {\n handlers: {\n [propertyKey]: {\n eventName,\n methodClassName: propertyKey\n }\n }\n });\n };\n}\n"]}
1
+ {"version":3,"file":"input.js","sourceRoot":"","sources":["../../../src/decorators/input.ts"],"names":[],"mappings":";;;AAAA,qCAAiC;AAEjC;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,KAAK,CAAC,SAAiB;IACrC,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;YACnC,QAAQ,EAAE;gBACR,CAAC,WAAW,CAAC,EAAE;oBACb,SAAS;oBACT,eAAe,EAAE,WAAW;iBAC7B;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAXD,sBAWC"}
@@ -1 +1 @@
1
- {"version":3,"file":"inputAndBroadcast.js","sourceRoot":"","sources":["../../../src/decorators/inputAndBroadcast.ts"],"names":[],"mappings":";;;AAAA,2CAAsC;AACtC,mCAA8B;AAE9B;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,iBAAiB,CAAC,SAAiB;IACjD,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,IAAA,aAAK,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QAClD,IAAA,qBAAS,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;IACxD,CAAC,CAAC;AACJ,CAAC;AALD,8CAKC","sourcesContent":["import {Broadcast} from \"./broadcast\";\nimport {Input} from \"./input\";\n\n/**\n * Attach the decorated method to the socket event and broadcast the response to all clients.\n *\n * ### Example\n *\n * ```typescript\n * @SocketService(\"/nsp\")\n * export class MyWS {\n *\n * @InputAndBroadcast(\"event\")\n * async myMethod(@Args(0) data: any, @Nsp socket) {\n * return {data: \"data\"};\n * }\n * }\n * ```\n *\n * @decorator\n * @param eventName\n */\nexport function InputAndBroadcast(eventName: string) {\n return (target: any, propertyKey: string, descriptor: PropertyDescriptor) => {\n Input(eventName)(target, propertyKey, descriptor);\n Broadcast(eventName)(target, propertyKey, descriptor);\n };\n}\n"]}
1
+ {"version":3,"file":"inputAndBroadcast.js","sourceRoot":"","sources":["../../../src/decorators/inputAndBroadcast.ts"],"names":[],"mappings":";;;AAAA,2CAAsC;AACtC,mCAA8B;AAE9B;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,iBAAiB,CAAC,SAAiB;IACjD,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,IAAA,aAAK,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QAClD,IAAA,qBAAS,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;IACxD,CAAC,CAAC;AACJ,CAAC;AALD,8CAKC"}
@@ -1 +1 @@
1
- {"version":3,"file":"inputAndBroadcastOthers.js","sourceRoot":"","sources":["../../../src/decorators/inputAndBroadcastOthers.ts"],"names":[],"mappings":";;;AAAA,uDAAkD;AAClD,mCAA8B;AAE9B;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,uBAAuB,CAAC,SAAiB;IACvD,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,IAAA,aAAK,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QAClD,IAAA,iCAAe,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;IAC9D,CAAC,CAAC;AACJ,CAAC;AALD,0DAKC","sourcesContent":["import {BroadcastOthers} from \"./broadcastOthers\";\nimport {Input} from \"./input\";\n\n/**\n * Attach the decorated method to the socket event and broadcast the response to all clients with the exception of the connected customer.\n *\n * ### Example\n *\n * ```typescript\n * @SocketService(\"/nsp\")\n * export class MyWS {\n *\n * @InputAndBroadcastOthers(\"event\")\n * async myMethod(@Args(0) data: any, @Nsp socket) {\n * return {data: \"data\"};\n * }\n * }\n * ```\n *\n * @decorator\n * @param eventName\n */\nexport function InputAndBroadcastOthers(eventName: string) {\n return (target: any, propertyKey: string, descriptor: PropertyDescriptor) => {\n Input(eventName)(target, propertyKey, descriptor);\n BroadcastOthers(eventName)(target, propertyKey, descriptor);\n };\n}\n"]}
1
+ {"version":3,"file":"inputAndBroadcastOthers.js","sourceRoot":"","sources":["../../../src/decorators/inputAndBroadcastOthers.ts"],"names":[],"mappings":";;;AAAA,uDAAkD;AAClD,mCAA8B;AAE9B;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,uBAAuB,CAAC,SAAiB;IACvD,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,IAAA,aAAK,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QAClD,IAAA,iCAAe,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;IAC9D,CAAC,CAAC;AACJ,CAAC;AALD,0DAKC"}
@@ -1 +1 @@
1
- {"version":3,"file":"inputAndEmit.js","sourceRoot":"","sources":["../../../src/decorators/inputAndEmit.ts"],"names":[],"mappings":";;;AAAA,iCAA4B;AAC5B,mCAA8B;AAE9B;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,YAAY,CAAC,SAAiB;IAC5C,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,IAAA,aAAK,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QAClD,IAAA,WAAI,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;IACnD,CAAC,CAAC;AACJ,CAAC;AALD,oCAKC","sourcesContent":["import {Emit} from \"./emit\";\nimport {Input} from \"./input\";\n\n/**\n * Attach the decorated method to the socket event and emit the response to the client.\n *\n * ### Example\n *\n * ```typescript\n * @SocketService(\"/nsp\")\n * export class MyWS {\n *\n * @InputAndEmit(\"event\")\n * async myMethod(@Args(0) data: any, @Nsp socket) {\n * return {data: \"data\"};\n * }\n * }\n * ```\n *\n * @decorator\n * @param eventName\n */\nexport function InputAndEmit(eventName: string) {\n return (target: any, propertyKey: string, descriptor: PropertyDescriptor) => {\n Input(eventName)(target, propertyKey, descriptor);\n Emit(eventName)(target, propertyKey, descriptor);\n };\n}\n"]}
1
+ {"version":3,"file":"inputAndEmit.js","sourceRoot":"","sources":["../../../src/decorators/inputAndEmit.ts"],"names":[],"mappings":";;;AAAA,iCAA4B;AAC5B,mCAA8B;AAE9B;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,YAAY,CAAC,SAAiB;IAC5C,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,IAAA,aAAK,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QAClD,IAAA,WAAI,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;IACnD,CAAC,CAAC;AACJ,CAAC;AALD,oCAKC"}
@@ -1 +1 @@
1
- {"version":3,"file":"io.js","sourceRoot":"","sources":["../../../src/decorators/io.ts"],"names":[],"mappings":";;;AAAA,iCAAgC;AAEhC,+DAAkD;AAqBlD,SAAgB,EAAE,CAAC,MAAkB,EAAE,SAAkB,EAAE,UAAuD;IAChH,IAAI,MAAM,EAAE;QACV,OAAO,IAAA,WAAM,EAAC,uBAAM,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;KACtD;IACD,OAAO,IAAA,WAAM,EAAC,uBAAM,CAAC,CAAC;AACxB,CAAC;AALD,gBAKC","sourcesContent":["import {Inject} from \"@tsed/di\";\nimport {Type} from \"@tsed/core\";\nimport {Server} from \"../services/SocketIOServer\";\n\n/**\n * Inject the [SocketIO.Server](https://socket.io/docs/server-api/) instance in the decorated parameter.\n *\n * ### Example\n *\n * ```typescript\n * @SocketService(\"/nsp\")\n * export class MyWS {\n * constructor(@IO private io: Server) {}\n * }\n * ```\n *\n * @param target\n * @param targetKey\n * @param descriptor\n * @decorator\n */\nexport function IO(): (...args: any[]) => any;\nexport function IO(target: Type<any>, targetKey: string, descriptor: TypedPropertyDescriptor<Function> | number): any;\nexport function IO(target?: Type<any>, targetKey?: string, descriptor?: TypedPropertyDescriptor<Function> | number): any {\n if (target) {\n return Inject(Server)(target, targetKey, descriptor);\n }\n return Inject(Server);\n}\n"]}
1
+ {"version":3,"file":"io.js","sourceRoot":"","sources":["../../../src/decorators/io.ts"],"names":[],"mappings":";;;AAAA,iCAAgC;AAEhC,+DAAkD;AAqBlD,SAAgB,EAAE,CAAC,MAAkB,EAAE,SAAkB,EAAE,UAAuD;IAChH,IAAI,MAAM,EAAE;QACV,OAAO,IAAA,WAAM,EAAC,uBAAM,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;KACtD;IACD,OAAO,IAAA,WAAM,EAAC,uBAAM,CAAC,CAAC;AACxB,CAAC;AALD,gBAKC"}
@@ -1 +1 @@
1
- {"version":3,"file":"nsp.js","sourceRoot":"","sources":["../../../src/decorators/nsp.ts"],"names":[],"mappings":";;;AAAA,qCAA4E;AAE5E,+DAA0D;AAC1D,iDAA4C;AAK5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,SAAgB,GAAG,CAAC,MAAW,EAAE,WAAoB,EAAE,KAAc;IACnE,OAAO,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AAC/C,CAAC;AAFD,kBAEC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,SAAgB,SAAS,CAAC,MAAW,EAAE,WAAoB,EAAE,KAAc;IACzE,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,IAAA,eAAQ,EAAC,MAAM,CAAC,EAAE;QAClD,MAAM,GAAG,GAAG,MAAyB,CAAC;QAEtC,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,EAAE;YAC1C,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;gBACnC,gBAAgB,EAAE,CAAC,EAAC,WAAW,EAAE,GAAG,EAAC,CAAC;aACvC,CAAC,CAAC;QACL,CAAC,CAAC;KACH;IAED,IAAI,IAAA,sBAAe,EAAC,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,KAAK,qBAAc,CAAC,IAAI,EAAE;QACzE,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;YACnC,gBAAgB,EAAE,CAAC,EAAC,WAAW,EAAC,CAAC;SAClC,CAAC,CAAC;QAEH,OAAO;KACR;IAED,OAAO,IAAA,2BAAY,EAAC,6BAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAY,EAAE,KAAM,CAAC,CAAC;AACvE,CAAC;AApBD,8BAoBC","sourcesContent":["import {decoratorTypeOf, DecoratorTypes, Store, isRegExp} from \"@tsed/core\";\nimport {Namespace as NamespaceType} from \"socket.io\";\nimport {SocketFilters} from \"../interfaces/SocketFilters\";\nimport {SocketFilter} from \"./socketFilter\";\n\nexport type Namespace = NamespaceType;\nexport type Nsp = NamespaceType;\n\n/**\n * Inject the [SocketIO.Namespace](https://socket.io/docs/rooms-and-namespaces/#namespaces) instance in the decorated parameter.\n * Note that when using dynamic namespaces, when injecting a parameter, you may want to consider using @SocketNsp instead.\n *\n * ### Example\n *\n * ```typescript\n * import {Nsp, SocketService, Input} from \"@tsed/socketio\";\n *\n * @SocketService(\"/nsp\")\n * export class MyWS {\n *\n * @Nsp\n * nsp: SocketIO.Namespace; // will inject SocketIO.Namespace (not available on constructor)\n *\n * @Nsp(\"/my-other-namespace\")\n * nspOther: SocketIO.Namespace; // communication between two namespace\n *\n * @Nsp(/regexp/)\n * nspDynamic: SocketIO.Namespace; // will inject a dynamic namespace (not available on constructor)\n *\n * @Input(\"event\")\n * myMethod(@Nsp namespace: SocketIO.Namespace) {\n *\n * }\n * }\n * ```\n *\n * @param target\n * @param {string} propertyKey\n * @param {number} index\n * @decorator\n */\nexport function Nsp(target: any, propertyKey?: string, index?: number): any {\n return Namespace(target, propertyKey, index);\n}\n\n/**\n * Inject the [SocketIO.Namespace](https://socket.io/docs/rooms-and-namespaces/#namespaces) instance in the decorated parameter.\n * Note that when using dynamic namespaces, when injecting a parameter, you may want to consider using @SocketNsp instead.\n *\n * ### Example\n *\n * ```typescript\n * import {Namespace, SocketService, Input} from \"@tsed/socketio\";\n *\n * @SocketService(\"/nsp\")\n * export class MyWS {\n *\n * @Namespace\n * nsp: SocketIO.Namespace; // will inject SocketIO.Namespace (not available on constructor)\n *\n * @Namespace(\"/my-other-namespace\")\n * nspOther: SocketIO.Namespace; // communication between two namespace\n *\n * @Namespace(/regexp/)\n * nspDynamic: SocketIO.Namespace; // will inject a dynamic namespace (not available on constructor)\n *\n * @Input(\"event\")\n * myMethod(@Namespace namespace: Namespace) {\n *\n * }\n * }\n * ```\n *\n * @param target\n * @param {string} propertyKey\n * @param {number} index\n * @alias {Nsp}\n * @decorator\n */\nexport function Namespace(target: any, propertyKey?: string, index?: number): any {\n if (typeof target === \"string\" || isRegExp(target)) {\n const nsp = target as string | RegExp;\n\n return (target: any, propertyKey: string) => {\n Store.from(target).merge(\"socketIO\", {\n injectNamespaces: [{propertyKey, nsp}]\n });\n };\n }\n\n if (decoratorTypeOf([target, propertyKey, index]) === DecoratorTypes.PROP) {\n Store.from(target).merge(\"socketIO\", {\n injectNamespaces: [{propertyKey}]\n });\n\n return;\n }\n\n return SocketFilter(SocketFilters.NSP)(target, propertyKey!, index!);\n}\n"]}
1
+ {"version":3,"file":"nsp.js","sourceRoot":"","sources":["../../../src/decorators/nsp.ts"],"names":[],"mappings":";;;AAAA,qCAA4E;AAE5E,+DAA0D;AAC1D,iDAA4C;AAK5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,SAAgB,GAAG,CAAC,MAAW,EAAE,WAAoB,EAAE,KAAc;IACnE,OAAO,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AAC/C,CAAC;AAFD,kBAEC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,SAAgB,SAAS,CAAC,MAAW,EAAE,WAAoB,EAAE,KAAc;IACzE,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,IAAA,eAAQ,EAAC,MAAM,CAAC,EAAE;QAClD,MAAM,GAAG,GAAG,MAAyB,CAAC;QAEtC,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,EAAE;YAC1C,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;gBACnC,gBAAgB,EAAE,CAAC,EAAC,WAAW,EAAE,GAAG,EAAC,CAAC;aACvC,CAAC,CAAC;QACL,CAAC,CAAC;KACH;IAED,IAAI,IAAA,sBAAe,EAAC,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,KAAK,qBAAc,CAAC,IAAI,EAAE;QACzE,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;YACnC,gBAAgB,EAAE,CAAC,EAAC,WAAW,EAAC,CAAC;SAClC,CAAC,CAAC;QAEH,OAAO;KACR;IAED,OAAO,IAAA,2BAAY,EAAC,6BAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAY,EAAE,KAAM,CAAC,CAAC;AACvE,CAAC;AApBD,8BAoBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"socket.js","sourceRoot":"","sources":["../../../src/decorators/socket.ts"],"names":[],"mappings":";;;AACA,+DAA0D;AAC1D,iDAA4C;AAI5C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,MAAM,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa;IACpE,OAAO,IAAA,2BAAY,EAAC,6BAAa,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AACxE,CAAC;AAFD,wBAEC","sourcesContent":["import {Socket as SocketType} from \"socket.io\";\nimport {SocketFilters} from \"../interfaces/SocketFilters\";\nimport {SocketFilter} from \"./socketFilter\";\n\nexport type Socket = SocketType;\n\n/**\n * Inject the Socket instance in the decorated parameter.\n *\n * ### Example\n *\n * ```typescript\n * @SocketService(\"/nsp\")\n * export class MyWS {\n *\n * @Input(\"event\")\n * myMethod(@Socket socket) {\n *\n * }\n * }\n * ```\n *\n * @experimental\n * @param target\n * @param {string} propertyKey\n * @param {number} index\n * @decorator\n */\nexport function Socket(target: any, propertyKey: string, index: number): any {\n return SocketFilter(SocketFilters.SOCKET)(target, propertyKey, index);\n}\n"]}
1
+ {"version":3,"file":"socket.js","sourceRoot":"","sources":["../../../src/decorators/socket.ts"],"names":[],"mappings":";;;AACA,+DAA0D;AAC1D,iDAA4C;AAI5C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,MAAM,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa;IACpE,OAAO,IAAA,2BAAY,EAAC,6BAAa,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AACxE,CAAC;AAFD,wBAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"socketErr.js","sourceRoot":"","sources":["../../../src/decorators/socketErr.ts"],"names":[],"mappings":";;;AAAA,+DAA0D;AAC1D,iDAA4C;AAE5C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAgB,SAAS,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa;IACvE,OAAO,IAAA,2BAAY,EAAC,6BAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AACrE,CAAC;AAFD,8BAEC","sourcesContent":["import {SocketFilters} from \"../interfaces/SocketFilters\";\nimport {SocketFilter} from \"./socketFilter\";\n\n/**\n * Inject the error in the parameters\n *\n * ### Example\n *\n * ```typescript\n * @SocketMiddlewareError()\n * export class MyMiddleware {\n *\n * myMethod(@SocketErr err: any, @Args() arguments: any[]) {\n *\n * }\n * }\n * ```\n *\n * @decorator\n * @param target\n * @param propertyKey\n * @param index\n */\nexport function SocketErr(target: any, propertyKey: string, index: number): any {\n return SocketFilter(SocketFilters.ERR)(target, propertyKey, index);\n}\n"]}
1
+ {"version":3,"file":"socketErr.js","sourceRoot":"","sources":["../../../src/decorators/socketErr.ts"],"names":[],"mappings":";;;AAAA,+DAA0D;AAC1D,iDAA4C;AAE5C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAgB,SAAS,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa;IACvE,OAAO,IAAA,2BAAY,EAAC,6BAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AACrE,CAAC;AAFD,8BAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"socketEventName.js","sourceRoot":"","sources":["../../../src/decorators/socketEventName.ts"],"names":[],"mappings":";;;AAAA,+DAA0D;AAC1D,iDAA4C;AAE5C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAgB,eAAe,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa;IAC7E,OAAO,IAAA,2BAAY,EAAC,6BAAa,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAFD,0CAEC","sourcesContent":["import {SocketFilters} from \"../interfaces/SocketFilters\";\nimport {SocketFilter} from \"./socketFilter\";\n\n/**\n * Inject the Socket instance in the decorated parameter.\n *\n * ### Example\n *\n * ```typescript\n * @SocketMiddleware(\"/nsp\")\n * export class MyMiddleware {\n * use(@SocketEventName eventName: string) {\n *\n * }\n * }\n * ```\n *\n * @experimental\n * @param target\n * @param {string} propertyKey\n * @param {number} index\n * @decorator\n */\nexport function SocketEventName(target: any, propertyKey: string, index: number): any {\n return SocketFilter(SocketFilters.EVENT_NAME)(target, propertyKey, index);\n}\n"]}
1
+ {"version":3,"file":"socketEventName.js","sourceRoot":"","sources":["../../../src/decorators/socketEventName.ts"],"names":[],"mappings":";;;AAAA,+DAA0D;AAC1D,iDAA4C;AAE5C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAgB,eAAe,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa;IAC7E,OAAO,IAAA,2BAAY,EAAC,6BAAa,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAFD,0CAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"socketFilter.js","sourceRoot":"","sources":["../../../src/decorators/socketFilter.ts"],"names":[],"mappings":";;;AAAA,qCAAiC;AAGjC;;;;;;GAMG;AACH,SAAgB,YAAY,CAAC,MAAqB,EAAE,QAAiB;IACnE,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa,EAAE,EAAE;QACzD,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;YACnC,QAAQ,EAAE;gBACR,CAAC,WAAW,CAAC,EAAE;oBACb,UAAU,EAAE;wBACV,CAAC,KAAK,CAAC,EAAE;4BACP,MAAM;4BACN,QAAQ;yBACT;qBACF;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAfD,oCAeC","sourcesContent":["import {Store} from \"@tsed/core\";\nimport {SocketFilters} from \"../interfaces/SocketFilters\";\n\n/**\n *\n * @param {SocketFilters} filter\n * @param {number} mapIndex\n * @returns {(target: any, propertyKey: string, index: number) => Store}\n * @decorator\n */\nexport function SocketFilter(filter: SocketFilters, mapIndex?: number) {\n return (target: any, propertyKey: string, index: number) => {\n Store.from(target).merge(\"socketIO\", {\n handlers: {\n [propertyKey]: {\n parameters: {\n [index]: {\n filter,\n mapIndex\n }\n }\n }\n }\n });\n };\n}\n"]}
1
+ {"version":3,"file":"socketFilter.js","sourceRoot":"","sources":["../../../src/decorators/socketFilter.ts"],"names":[],"mappings":";;;AAAA,qCAAiC;AAGjC;;;;;;GAMG;AACH,SAAgB,YAAY,CAAC,MAAqB,EAAE,QAAiB;IACnE,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa,EAAE,EAAE;QACzD,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;YACnC,QAAQ,EAAE;gBACR,CAAC,WAAW,CAAC,EAAE;oBACb,UAAU,EAAE;wBACV,CAAC,KAAK,CAAC,EAAE;4BACP,MAAM;4BACN,QAAQ;yBACT;qBACF;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAfD,oCAeC"}
@@ -1 +1 @@
1
- {"version":3,"file":"socketMiddleware.js","sourceRoot":"","sources":["../../../src/decorators/socketMiddleware.ts"],"names":[],"mappings":";;;AAAA,qEAAsD;AACtD,qCAAuC;AACvC,2EAAsE;AAEtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,SAAgB,gBAAgB;IAC9B,OAAO,CAAC,MAAiB,EAAE,EAAE;QAC3B,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;YACnC,IAAI,EAAE,yCAAmB,CAAC,UAAU;YACpC,QAAQ,EAAE;gBACR,GAAG,EAAE;oBACH,eAAe,EAAE,KAAK;iBACvB;aACF;SACF,CAAC,CAAC;QAEH,OAAO,IAAA,iCAAU,GAAE,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC,CAAC;AACJ,CAAC;AAbD,4CAaC","sourcesContent":["import {Middleware} from \"@tsed/platform-middlewares\";\nimport {Store, Type} from \"@tsed/core\";\nimport {SocketProviderTypes} from \"../interfaces/SocketProviderTypes\";\n\n/**\n * Declare a new SocketMiddleware.\n *\n * ### Example\n *\n * A middleware can be also used on a `SocketService` either on a class or on a method.\n *\n * Here an example of a middleware:\n *\n * ```typescript\n * @SocketMiddleware()\n * export class UserConverterSocketMiddleware {\n * constructor(private converterService: ConverterService) {\n * }\n * async use(@Args() args: any[]) {\n *\n * let [user] = args;\n * // update Arguments\n * user = this.converterService.deserialize(user, User);\n *\n * return [user];\n * }\n * }\n * ```\n * > The user instance will be forwarded to the next middleware and to your decorated method.\n *\n * Then:\n *\n * ```typescript\n * import {SocketService, SocketUseAfter, SocketUseBefore, Emit, Input, Args} from \"@tsed/socketio\";\n * import {UserConverterSocketMiddleware} from \"../middlewares\";\n * import {User} from \"../models/User\";\n *\n * @SocketService(\"/my-namespace\")\n * @SocketUseBefore(UserConverterSocketMiddleware) // global version\n * export class MySocketService {\n *\n * @Input(\"eventName\")\n * @Emit(\"responseEventName\") // or Broadcast or BroadcastOthers\n * @SocketUseBefore(UserConverterSocketMiddleware)\n * async myMethod(@Args(0) user: User) {\n *\n * console.log(user);\n *\n * return user;\n * }\n * }\n * ```\n *\n * @returns {Function}\n * @decorator\n * @experimental\n */\nexport function SocketMiddleware(): Function {\n return (target: Type<any>) => {\n Store.from(target).merge(\"socketIO\", {\n type: SocketProviderTypes.MIDDLEWARE,\n handlers: {\n use: {\n methodClassName: \"use\"\n }\n }\n });\n\n return Middleware()(target);\n };\n}\n"]}
1
+ {"version":3,"file":"socketMiddleware.js","sourceRoot":"","sources":["../../../src/decorators/socketMiddleware.ts"],"names":[],"mappings":";;;AAAA,qEAAsD;AACtD,qCAAuC;AACvC,2EAAsE;AAEtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,SAAgB,gBAAgB;IAC9B,OAAO,CAAC,MAAiB,EAAE,EAAE;QAC3B,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;YACnC,IAAI,EAAE,yCAAmB,CAAC,UAAU;YACpC,QAAQ,EAAE;gBACR,GAAG,EAAE;oBACH,eAAe,EAAE,KAAK;iBACvB;aACF;SACF,CAAC,CAAC;QAEH,OAAO,IAAA,iCAAU,GAAE,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC,CAAC;AACJ,CAAC;AAbD,4CAaC"}
@@ -1 +1 @@
1
- {"version":3,"file":"socketMiddlewareError.js","sourceRoot":"","sources":["../../../src/decorators/socketMiddlewareError.ts"],"names":[],"mappings":";;;AAAA,qEAAsD;AACtD,qCAAuC;AACvC,2EAAsE;AAEtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,SAAgB,qBAAqB;IACnC,OAAO,CAAC,MAAiB,EAAE,EAAE;QAC3B,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;YACnC,IAAI,EAAE,yCAAmB,CAAC,UAAU;YACpC,KAAK,EAAE,IAAI;YAEX,QAAQ,EAAE;gBACR,GAAG,EAAE;oBACH,eAAe,EAAE,KAAK;iBACvB;aACF;SACF,CAAC,CAAC;QAEH,OAAO,IAAA,iCAAU,GAAE,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC,CAAC;AACJ,CAAC;AAfD,sDAeC","sourcesContent":["import {Middleware} from \"@tsed/platform-middlewares\";\nimport {Store, Type} from \"@tsed/core\";\nimport {SocketProviderTypes} from \"../interfaces/SocketProviderTypes\";\n\n/**\n * Declare a new SocketMiddlewareError.\n *\n * ### Example\n *\n * A middleware can be also used on a `SocketService` either on a class or on a method.\n *\n * Here an example of a middleware:\n *\n * ```typescript\n * import {SocketMiddlewareError, SocketErr, Socket, Args} from \"@tsed/socketio\";\n *\n * @SocketMiddlewareError()\n * export class ErrorHandlerSocketMiddleware {\n * async use(@SocketEventName, @SocketErr err: any, @Socket socket: SocketIO.Socket) {\n * console.error(err);\n * socket.emit(\"error\", {message: \"An error has occured\"})\n * }\n * }\n * ```\n *\n * Then:\n *\n * ```typescript\n * import {SocketService, SocketUseAfter, SocketUseBefore, Emit, Input, Args} from \"@tsed/socketio\";\n * import {ErrorHandlerSocketMiddleware} from \"../middlewares\";\n * import {User} from \"../models/User\";\n *\n * @SocketService(\"/my-namespace\")\n * @SocketUseAfter(ErrorHandlerSocketMiddleware) // global version\n * export class MySocketService {\n *\n * @Input(\"eventName\")\n * @Emit(\"responseEventName\") // or Broadcast or BroadcastOthers\n * @SocketUseAfter(ErrorHandlerSocketMiddleware)\n * async myMethod(@Args(0) userName: User) {\n *\n * console.log(user);\n * throw new Error(\"Error\");\n *\n * return user;\n * }\n * }\n * ```\n *\n * @returns {Function}\n * @decorator\n * @experimental\n */\nexport function SocketMiddlewareError(): Function {\n return (target: Type<any>) => {\n Store.from(target).merge(\"socketIO\", {\n type: SocketProviderTypes.MIDDLEWARE,\n error: true,\n\n handlers: {\n use: {\n methodClassName: \"use\"\n }\n }\n });\n\n return Middleware()(target);\n };\n}\n"]}
1
+ {"version":3,"file":"socketMiddlewareError.js","sourceRoot":"","sources":["../../../src/decorators/socketMiddlewareError.ts"],"names":[],"mappings":";;;AAAA,qEAAsD;AACtD,qCAAuC;AACvC,2EAAsE;AAEtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,SAAgB,qBAAqB;IACnC,OAAO,CAAC,MAAiB,EAAE,EAAE;QAC3B,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;YACnC,IAAI,EAAE,yCAAmB,CAAC,UAAU;YACpC,KAAK,EAAE,IAAI;YAEX,QAAQ,EAAE;gBACR,GAAG,EAAE;oBACH,eAAe,EAAE,KAAK;iBACvB;aACF;SACF,CAAC,CAAC;QAEH,OAAO,IAAA,iCAAU,GAAE,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC,CAAC;AACJ,CAAC;AAfD,sDAeC"}
@@ -1 +1 @@
1
- {"version":3,"file":"socketNsp.js","sourceRoot":"","sources":["../../../src/decorators/socketNsp.ts"],"names":[],"mappings":";;;AACA,+DAA0D;AAC1D,iDAA4C;AAI5C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,SAAgB,SAAS,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa;IACvE,OAAO,IAAA,2BAAY,EAAC,6BAAa,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAFD,8BAEC","sourcesContent":["import {Namespace} from \"./nsp\";\nimport {SocketFilters} from \"../interfaces/SocketFilters\";\nimport {SocketFilter} from \"./socketFilter\";\n\nexport type SocketNsp = Namespace;\n\n/**\n * Inject the [SocketIO.Namespace](https://socket.io/docs/rooms-and-namespaces/#namespaces) instance in the decorated parameter.\n * This namespace may differ from the default namespace when using dynamic namespaces.\n *\n * ### Example\n *\n * ```typescript\n * @SocketService(/nsp-.+/)\n * export class MyWS {\n *\n * @Input(\"event\")\n * myMethod(@SocketNsp nsp: SocketNsp) {\n *\n * }\n * }\n * ```\n *\n * @experimental\n * @param target\n * @param {string} propertyKey\n * @param {number} index\n * @decorator\n */\nexport function SocketNsp(target: any, propertyKey: string, index: number): any {\n return SocketFilter(SocketFilters.SOCKET_NSP)(target, propertyKey, index);\n}\n"]}
1
+ {"version":3,"file":"socketNsp.js","sourceRoot":"","sources":["../../../src/decorators/socketNsp.ts"],"names":[],"mappings":";;;AACA,+DAA0D;AAC1D,iDAA4C;AAI5C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,SAAgB,SAAS,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa;IACvE,OAAO,IAAA,2BAAY,EAAC,6BAAa,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC;AAFD,8BAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"socketReturns.js","sourceRoot":"","sources":["../../../src/decorators/socketReturns.ts"],"names":[],"mappings":";;;AAAA,qCAAiC;AAGjC;;;;;;GAMG;AACH,SAAgB,aAAa,CAAC,SAAiB,EAAE,IAAwB;IACvE,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;YACnC,QAAQ,EAAE;gBACR,CAAC,WAAW,CAAC,EAAE;oBACb,OAAO,EAAE;wBACP,SAAS;wBACT,IAAI;qBACL;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAbD,sCAaC","sourcesContent":["import {Store} from \"@tsed/core\";\nimport {SocketReturnsTypes} from \"../interfaces/SocketReturnsTypes\";\n\n/**\n *\n * @param {string} eventName\n * @param {SocketReturnsTypes} type\n * @returns {(target: any, propertyKey: string, descriptor: PropertyDescriptor) => void}\n * @decorator\n */\nexport function SocketReturns(eventName: string, type: SocketReturnsTypes) {\n return (target: any, propertyKey: string, descriptor: PropertyDescriptor) => {\n Store.from(target).merge(\"socketIO\", {\n handlers: {\n [propertyKey]: {\n returns: {\n eventName,\n type\n }\n }\n }\n });\n };\n}\n"]}
1
+ {"version":3,"file":"socketReturns.js","sourceRoot":"","sources":["../../../src/decorators/socketReturns.ts"],"names":[],"mappings":";;;AAAA,qCAAiC;AAGjC;;;;;;GAMG;AACH,SAAgB,aAAa,CAAC,SAAiB,EAAE,IAAwB;IACvE,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;YACnC,QAAQ,EAAE;gBACR,CAAC,WAAW,CAAC,EAAE;oBACb,OAAO,EAAE;wBACP,SAAS;wBACT,IAAI;qBACL;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAbD,sCAaC"}
@@ -1 +1 @@
1
- {"version":3,"file":"socketService.js","sourceRoot":"","sources":["../../../src/decorators/socketService.ts"],"names":[],"mappings":";;;AAAA,qCAAqD;AACrD,iCAAoC;AACpC,2EAAsE;AACtE,sDAAoE;AAEpE;;;;;;;;;GASG;AACH,SAAgB,aAAa,CAAC,YAA6B,GAAG;IAC5D,OAAO,IAAA,oBAAa,EAClB,IAAA,iBAAU,EAAC,UAAU,EAAE,EAAC,SAAS,EAAE,IAAI,EAAE,yCAAmB,CAAC,OAAO,EAAC,CAAC,EACtE,IAAA,eAAU,EAAC;QACT,IAAI,EAAE,wCAA4B;KACnC,CAAC,CACH,CAAC;AACJ,CAAC;AAPD,sCAOC","sourcesContent":["import {StoreMerge, useDecorators} from \"@tsed/core\";\nimport {Injectable} from \"@tsed/di\";\nimport {SocketProviderTypes} from \"../interfaces/SocketProviderTypes\";\nimport {PROVIDER_TYPE_SOCKET_SERVICE} from \"../constants/constants\";\n\n/**\n * The decorators `@SocketService()` declare a new socket service (and service) can be injected in other service or controller on there `constructor`.\n * All services annotated with `@SocketService()` are constructed one time.\n *\n * > `@SocketService()` use the `reflect-metadata` to collect and inject service on controllers or other services.\n *\n * @param namespace\n * @returns {Function}\n * @decorator\n */\nexport function SocketService(namespace: string | RegExp = \"/\") {\n return useDecorators(\n StoreMerge(\"socketIO\", {namespace, type: SocketProviderTypes.SERVICE}),\n Injectable({\n type: PROVIDER_TYPE_SOCKET_SERVICE\n })\n );\n}\n"]}
1
+ {"version":3,"file":"socketService.js","sourceRoot":"","sources":["../../../src/decorators/socketService.ts"],"names":[],"mappings":";;;AAAA,qCAAqD;AACrD,iCAAoC;AACpC,2EAAsE;AACtE,sDAAoE;AAEpE;;;;;;;;;GASG;AACH,SAAgB,aAAa,CAAC,YAA6B,GAAG;IAC5D,OAAO,IAAA,oBAAa,EAClB,IAAA,iBAAU,EAAC,UAAU,EAAE,EAAC,SAAS,EAAE,IAAI,EAAE,yCAAmB,CAAC,OAAO,EAAC,CAAC,EACtE,IAAA,eAAU,EAAC;QACT,IAAI,EAAE,wCAA4B;KACnC,CAAC,CACH,CAAC;AACJ,CAAC;AAPD,sCAOC"}
@@ -1 +1 @@
1
- {"version":3,"file":"socketSession.js","sourceRoot":"","sources":["../../../src/decorators/socketSession.ts"],"names":[],"mappings":";;;AAAA,+DAA0D;AAC1D,iDAA4C;AAI5C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAgB,aAAa,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa;IAC3E,OAAO,IAAA,2BAAY,EAAC,6BAAa,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AACzE,CAAC;AAFD,sCAEC","sourcesContent":["import {SocketFilters} from \"../interfaces/SocketFilters\";\nimport {SocketFilter} from \"./socketFilter\";\n\nexport type SocketSession = Map<string, any>;\n\n/**\n * Inject the Socket instance in the decorated parameter.\n *\n * ### Example\n *\n * ```typescript\n * @SocketService(\"/nsp\")\n * export class MyWS {\n *\n * @Input(\"event\")\n * myMethod(@SocketSession session: Map) {\n * console.log(session);\n * }\n * }\n * ```\n *\n * @param target\n * @param {string} propertyKey\n * @param {number} index\n * @decorator\n */\nexport function SocketSession(target: any, propertyKey: string, index: number): any {\n return SocketFilter(SocketFilters.SESSION)(target, propertyKey, index);\n}\n"]}
1
+ {"version":3,"file":"socketSession.js","sourceRoot":"","sources":["../../../src/decorators/socketSession.ts"],"names":[],"mappings":";;;AAAA,+DAA0D;AAC1D,iDAA4C;AAI5C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAgB,aAAa,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa;IAC3E,OAAO,IAAA,2BAAY,EAAC,6BAAa,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AACzE,CAAC;AAFD,sCAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"socketUseAfter.js","sourceRoot":"","sources":["../../../src/decorators/socketUseAfter.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AAEvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,SAAgB,cAAc,CAAC,GAAG,WAAwB;IACxD,OAAO,CAAC,MAAW,EAAE,WAAoB,EAAE,UAA+B,EAAE,EAAE;QAC5E,IAAI,WAAW,EAAE;YACf,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;gBACnC,QAAQ,EAAE;oBACR,CAAC,WAAW,CAAC,EAAE;wBACb,QAAQ,EAAE,WAAW;qBACtB;iBACF;aACF,CAAC,CAAC;SACJ;aAAM;YACL,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;gBACnC,QAAQ,EAAE,WAAW;aACtB,CAAC,CAAC;SACJ;IACH,CAAC,CAAC;AACJ,CAAC;AAhBD,wCAgBC","sourcesContent":["import {Store, Type} from \"@tsed/core\";\n\n/**\n * Attach a Socket Middleware to a method or a class.\n *\n * ### Example\n *\n * A middleware can be also used on a `SocketService` either on a class or on a method.\n *\n * Here an example of a middleware:\n *\n * ```typescript\n * import {SocketMiddlewareError, SocketErr, Socket, Args} from \"@tsed/socketio\";\n *\n * @SocketMiddlewareError()\n * export class ErrorHandlerSocketMiddleware {\n * async use(@SocketErr() err: any, @Socket socket: SocketIO.Socket) {\n * console.error(err);\n * socket.emit(\"error\", {message: \"An error has occured\"})\n * }\n * }\n * ```\n *\n * Then:\n *\n * ```typescript\n * import {SocketService, SocketUseAfter, SocketUseBefore, Emit, Input, Args} from \"@tsed/socketio\";\n * import {ErrorHandlerSocketMiddleware} from \"../middlewares\";\n * import {User} from \"../models/User\";\n *\n * @SocketService(\"/my-namespace\")\n * @SocketUseAfter(ErrorHandlerSocketMiddleware) // global version\n * export class MySocketService {\n *\n * @Input(\"eventName\")\n * @Emit(\"responseEventName\") // or Broadcast or BroadcastOthers\n * @SocketUseAfter(ErrorHandlerSocketMiddleware)\n * async myMethod(@Args(0) userName: User) {\n *\n * console.log(user);\n * throw new Error(\"Error\");\n *\n * return user;\n * }\n * }\n * ```\n *\n * @returns {(target: any, propertyKey?: string, descriptor?: PropertyDescriptor) => void}\n * @decorator\n * @experimental\n * @param middlewares\n */\nexport function SocketUseAfter(...middlewares: Type<any>[]) {\n return (target: any, propertyKey?: string, descriptor?: PropertyDescriptor) => {\n if (propertyKey) {\n Store.from(target).merge(\"socketIO\", {\n handlers: {\n [propertyKey]: {\n useAfter: middlewares\n }\n }\n });\n } else {\n Store.from(target).merge(\"socketIO\", {\n useAfter: middlewares\n });\n }\n };\n}\n"]}
1
+ {"version":3,"file":"socketUseAfter.js","sourceRoot":"","sources":["../../../src/decorators/socketUseAfter.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AAEvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,SAAgB,cAAc,CAAC,GAAG,WAAwB;IACxD,OAAO,CAAC,MAAW,EAAE,WAAoB,EAAE,UAA+B,EAAE,EAAE;QAC5E,IAAI,WAAW,EAAE;YACf,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;gBACnC,QAAQ,EAAE;oBACR,CAAC,WAAW,CAAC,EAAE;wBACb,QAAQ,EAAE,WAAW;qBACtB;iBACF;aACF,CAAC,CAAC;SACJ;aAAM;YACL,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;gBACnC,QAAQ,EAAE,WAAW;aACtB,CAAC,CAAC;SACJ;IACH,CAAC,CAAC;AACJ,CAAC;AAhBD,wCAgBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"socketUseBefore.js","sourceRoot":"","sources":["../../../src/decorators/socketUseBefore.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AAEvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,SAAgB,eAAe,CAAC,GAAG,WAAwB;IACzD,OAAO,CAAC,MAAW,EAAE,WAAoB,EAAE,UAA+B,EAAE,EAAE;QAC5E,IAAI,WAAW,EAAE;YACf,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;gBACnC,QAAQ,EAAE;oBACR,CAAC,WAAW,CAAC,EAAE;wBACb,SAAS,EAAE,WAAW;qBACvB;iBACF;aACF,CAAC,CAAC;SACJ;aAAM;YACL,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;gBACnC,SAAS,EAAE,WAAW;aACvB,CAAC,CAAC;SACJ;IACH,CAAC,CAAC;AACJ,CAAC;AAhBD,0CAgBC","sourcesContent":["import {Store, Type} from \"@tsed/core\";\n\n/**\n * Attach a Socket Middleware to a method or a class.\n *\n * ### Example\n *\n * A middleware can be also used on a `SocketService` either on a class or on a method.\n *\n * Here an example of a middleware:\n *\n * ```typescript\n * @SocketMiddleware()\n * export class UserConverterSocketMiddleware {\n * constructor(private converterService: ConverterService) {\n * }\n * async use(@Args() args: any[]) {\n *\n * let [user] = args;\n * // update Arguments\n * user = ConverterService.deserialize(user, User);\n *\n * return [user];\n * }\n * }\n * ```\n * > The user instance will be forwarded to the next middleware and to your decorated method.\n *\n * Then:\n *\n * ```typescript\n * import {SocketService, SocketUseAfter, SocketUseBefore, Emit, Input, Args} from \"@tsed/socketio\";\n * import {UserConverterSocketMiddleware} from \"../middlewares\";\n * import {User} from \"../models/User\";\n *\n * @SocketService(\"/my-namespace\")\n * @SocketUseBefore(UserConverterSocketMiddleware) // global version\n * export class MySocketService {\n *\n * @Input(\"eventName\")\n * @Emit(\"responseEventName\") // or Broadcast or BroadcastOthers\n * @SocketUseBefore(UserConverterSocketMiddleware)\n * async myMethod(@Args(0) user: User) {\n *\n * console.log(user);\n *\n * return user;\n * }\n * }\n * ```\n *\n * @returns {(target: any, propertyKey?: string, descriptor?: PropertyDescriptor) => void}\n * @decorator\n * @experimental\n * @param middlewares\n */\nexport function SocketUseBefore(...middlewares: Type<any>[]) {\n return (target: any, propertyKey?: string, descriptor?: PropertyDescriptor) => {\n if (propertyKey) {\n Store.from(target).merge(\"socketIO\", {\n handlers: {\n [propertyKey]: {\n useBefore: middlewares\n }\n }\n });\n } else {\n Store.from(target).merge(\"socketIO\", {\n useBefore: middlewares\n });\n }\n };\n}\n"]}
1
+ {"version":3,"file":"socketUseBefore.js","sourceRoot":"","sources":["../../../src/decorators/socketUseBefore.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AAEvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,SAAgB,eAAe,CAAC,GAAG,WAAwB;IACzD,OAAO,CAAC,MAAW,EAAE,WAAoB,EAAE,UAA+B,EAAE,EAAE;QAC5E,IAAI,WAAW,EAAE;YACf,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;gBACnC,QAAQ,EAAE;oBACR,CAAC,WAAW,CAAC,EAAE;wBACb,SAAS,EAAE,WAAW;qBACvB;iBACF;aACF,CAAC,CAAC;SACJ;aAAM;YACL,YAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE;gBACnC,SAAS,EAAE,WAAW;aACvB,CAAC,CAAC;SACJ;IACH,CAAC,CAAC;AACJ,CAAC;AAhBD,0CAgBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,2DAAiC;AACjC,wEAA8C;AAC9C,yEAA+C;AAC/C,gEAAsC;AACtC,4DAAkC;AAClC,iEAAuC;AACvC,uEAA6C;AAC7C,4DAAkC;AAClC,6DAAmC;AACnC,yEAA+C;AAC/C,+EAAqD;AACrD,oEAA0C;AAC1C,0DAAgC;AAChC,2DAAiC;AACjC,8DAAoC;AACpC,iEAAuC;AACvC,uEAA6C;AAC7C,oEAA0C;AAC1C,wEAA8C;AAC9C,6EAAmD;AACnD,iEAAuC;AACvC,qEAA2C;AAC3C,qEAA2C;AAC3C,qEAA2C;AAC3C,sEAA4C;AAC5C,uEAA6C;AAC7C,uEAA6C;AAC7C,qEAA2C;AAC3C,6EAAmD;AACnD,2EAAiD;AACjD,2EAAiD;AACjD,2EAAiD;AACjD,0EAAgD;AAChD,kEAAwC;AACxC,0EAAgD;AAChD,oEAA0C;AAC1C,qEAA2C","sourcesContent":["/**\n * @file Automatically generated by barrelsby.\n */\n\nexport * from \"./SocketIOModule\";\nexport * from \"./class/SocketHandlersBuilder\";\nexport * from \"./class/SocketProviderMetadata\";\nexport * from \"./constants/constants\";\nexport * from \"./decorators/args\";\nexport * from \"./decorators/broadcast\";\nexport * from \"./decorators/broadcastOthers\";\nexport * from \"./decorators/emit\";\nexport * from \"./decorators/input\";\nexport * from \"./decorators/inputAndBroadcast\";\nexport * from \"./decorators/inputAndBroadcastOthers\";\nexport * from \"./decorators/inputAndEmit\";\nexport * from \"./decorators/io\";\nexport * from \"./decorators/nsp\";\nexport * from \"./decorators/socket\";\nexport * from \"./decorators/socketErr\";\nexport * from \"./decorators/socketEventName\";\nexport * from \"./decorators/socketFilter\";\nexport * from \"./decorators/socketMiddleware\";\nexport * from \"./decorators/socketMiddlewareError\";\nexport * from \"./decorators/socketNsp\";\nexport * from \"./decorators/socketReturns\";\nexport * from \"./decorators/socketService\";\nexport * from \"./decorators/socketSession\";\nexport * from \"./decorators/socketUseAfter\";\nexport * from \"./decorators/socketUseBefore\";\nexport * from \"./interfaces/OnNamespaceInit\";\nexport * from \"./interfaces/SocketFilters\";\nexport * from \"./interfaces/SocketHandlerMetadata\";\nexport * from \"./interfaces/SocketInjectableNsp\";\nexport * from \"./interfaces/SocketParamMetadata\";\nexport * from \"./interfaces/SocketProviderTypes\";\nexport * from \"./interfaces/SocketReturnsTypes\";\nexport * from \"./interfaces/interfaces\";\nexport * from \"./registries/NspSessionRegistry\";\nexport * from \"./services/SocketIOServer\";\nexport * from \"./services/SocketIOService\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,2DAAiC;AACjC,wEAA8C;AAC9C,yEAA+C;AAC/C,gEAAsC;AACtC,4DAAkC;AAClC,iEAAuC;AACvC,uEAA6C;AAC7C,4DAAkC;AAClC,6DAAmC;AACnC,yEAA+C;AAC/C,+EAAqD;AACrD,oEAA0C;AAC1C,0DAAgC;AAChC,2DAAiC;AACjC,8DAAoC;AACpC,iEAAuC;AACvC,uEAA6C;AAC7C,oEAA0C;AAC1C,wEAA8C;AAC9C,6EAAmD;AACnD,iEAAuC;AACvC,qEAA2C;AAC3C,qEAA2C;AAC3C,qEAA2C;AAC3C,sEAA4C;AAC5C,uEAA6C;AAC7C,uEAA6C;AAC7C,qEAA2C;AAC3C,6EAAmD;AACnD,2EAAiD;AACjD,2EAAiD;AACjD,2EAAiD;AACjD,0EAAgD;AAChD,kEAAwC;AACxC,0EAAgD;AAChD,oEAA0C;AAC1C,qEAA2C"}
@@ -1 +1 @@
1
- {"version":3,"file":"OnNamespaceInit.js","sourceRoot":"","sources":["../../../src/interfaces/OnNamespaceInit.ts"],"names":[],"mappings":"","sourcesContent":["import {Namespace} from \"socket.io\";\n\n/**\n *\n */\nexport interface OnNamespaceInit {\n $onNamespaceInit(nsp: Namespace): void;\n}\n"]}
1
+ {"version":3,"file":"OnNamespaceInit.js","sourceRoot":"","sources":["../../../src/interfaces/OnNamespaceInit.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"SocketFilters.js","sourceRoot":"","sources":["../../../src/interfaces/SocketFilters.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,aAQX;AARD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,kCAAiB,CAAA;IACjB,yCAAwB,CAAA;IACxB,4BAAW,CAAA;IACX,oCAAmB,CAAA;IACnB,8BAAa,CAAA;IACb,0CAAyB,CAAA;AAC3B,CAAC,EARW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAQxB","sourcesContent":["/**\n * @ignore\n */\nexport enum SocketFilters {\n ARGS = \"args\",\n SOCKET = \"socket\",\n EVENT_NAME = \"eventName\",\n NSP = \"nsp\",\n SESSION = \"session\",\n ERR = \"error\",\n SOCKET_NSP = \"socket_nsp\"\n}\n"]}
1
+ {"version":3,"file":"SocketFilters.js","sourceRoot":"","sources":["../../../src/interfaces/SocketFilters.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,aAQX;AARD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,kCAAiB,CAAA;IACjB,yCAAwB,CAAA;IACxB,4BAAW,CAAA;IACX,oCAAmB,CAAA;IACnB,8BAAa,CAAA;IACb,0CAAyB,CAAA;AAC3B,CAAC,EARW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAQxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"SocketHandlerMetadata.js","sourceRoot":"","sources":["../../../src/interfaces/SocketHandlerMetadata.ts"],"names":[],"mappings":"","sourcesContent":["import {SocketParamMetadata} from \"./SocketParamMetadata\";\nimport {SocketReturnsTypes} from \"./SocketReturnsTypes\";\n\n/**\n *\n */\nexport interface SocketHandlerMetadata {\n eventName?: string;\n methodClassName: string;\n useBefore?: any[];\n useAfter?: any[];\n parameters?: {[key: number]: SocketParamMetadata};\n returns?: {\n type: SocketReturnsTypes;\n eventName: string;\n };\n}\n"]}
1
+ {"version":3,"file":"SocketHandlerMetadata.js","sourceRoot":"","sources":["../../../src/interfaces/SocketHandlerMetadata.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"SocketInjectableNsp.js","sourceRoot":"","sources":["../../../src/interfaces/SocketInjectableNsp.ts"],"names":[],"mappings":"","sourcesContent":["export interface SocketInjectableNsp {\n propertyKey: string;\n nsp?: string | RegExp;\n}\n"]}
1
+ {"version":3,"file":"SocketInjectableNsp.js","sourceRoot":"","sources":["../../../src/interfaces/SocketInjectableNsp.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"SocketParamMetadata.js","sourceRoot":"","sources":["../../../src/interfaces/SocketParamMetadata.ts"],"names":[],"mappings":"","sourcesContent":["import {MetadataTypes} from \"@tsed/core\";\nimport {SocketFilters} from \"./SocketFilters\";\n\nexport interface SocketParamMetadata extends Partial<MetadataTypes> {\n filter: SocketFilters;\n mapIndex?: number;\n useMapper?: boolean;\n}\n"]}
1
+ {"version":3,"file":"SocketParamMetadata.js","sourceRoot":"","sources":["../../../src/interfaces/SocketParamMetadata.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"SocketProviderTypes.js","sourceRoot":"","sources":["../../../src/interfaces/SocketProviderTypes.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;IACnB,gDAAyB,CAAA;AAC3B,CAAC,EAHW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAG9B","sourcesContent":["/**\n *\n */\nexport enum SocketProviderTypes {\n SERVICE = \"service\",\n MIDDLEWARE = \"middleware\"\n}\n"]}
1
+ {"version":3,"file":"SocketProviderTypes.js","sourceRoot":"","sources":["../../../src/interfaces/SocketProviderTypes.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;IACnB,gDAAyB,CAAA;AAC3B,CAAC,EAHW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAG9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"SocketReturnsTypes.js","sourceRoot":"","sources":["../../../src/interfaces/SocketReturnsTypes.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC5B,6CAAuB,CAAA;IACvB,0DAAoC,CAAA;IACpC,mCAAa,CAAA;AACf,CAAC,EAJW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAI7B","sourcesContent":["/**\n * @ignore\n */\nexport enum SocketReturnsTypes {\n BROADCAST = \"broadcast\",\n BROADCAST_OTHERS = \"broadcastOthers\",\n EMIT = \"emit\"\n}\n"]}
1
+ {"version":3,"file":"SocketReturnsTypes.js","sourceRoot":"","sources":["../../../src/interfaces/SocketReturnsTypes.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC5B,6CAAuB,CAAA;IACvB,0DAAoC,CAAA;IACpC,mCAAa,CAAA;AACf,CAAC,EAJW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAI7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/interfaces/interfaces.ts"],"names":[],"mappings":"","sourcesContent":["import SocketIO from \"socket.io\";\n\ndeclare global {\n namespace TsED {\n interface Configuration {\n socketIO: Partial<SocketIO.ServerOptions>;\n }\n }\n}\n"]}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/interfaces/interfaces.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"NspSessionRegistry.js","sourceRoot":"","sources":["../../../src/registries/NspSessionRegistry.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,MAAM,QAAQ,GAA2C,IAAI,GAAG,EAAE,CAAC;AAEnE,SAAgB,aAAa,CAAC,YAA6B,GAAG;IAC5D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;QAC5B,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;KACpC;IAED,OAAO,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACjC,CAAC;AAND,sCAMC","sourcesContent":["/**\n *\n * @type {Map<any, any>}\n */\nconst SESSIONS: Map<string | RegExp, Map<string, any>> = new Map();\n\nexport function getNspSession(namespace: string | RegExp = \"/\") {\n if (!SESSIONS.has(namespace)) {\n SESSIONS.set(namespace, new Map());\n }\n\n return SESSIONS.get(namespace);\n}\n"]}
1
+ {"version":3,"file":"NspSessionRegistry.js","sourceRoot":"","sources":["../../../src/registries/NspSessionRegistry.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,MAAM,QAAQ,GAA2C,IAAI,GAAG,EAAE,CAAC;AAEnE,SAAgB,aAAa,CAAC,YAA6B,GAAG;IAC5D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;QAC5B,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;KACpC;IAED,OAAO,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACjC,CAAC;AAND,sCAMC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SocketIOServer.js","sourceRoot":"","sources":["../../../src/services/SocketIOServer.ts"],"names":[],"mappings":";;;AAAA,iCAA0C;AAC1C,yCAAiC;AAOzB,uFAPA,kBAAM,OAOA;AAHd,0CAA0C;AAC7B,QAAA,cAAc,GAAG,kBAAM,CAAC;AAIrC,IAAA,qBAAgB,EAAC;IACf,OAAO,EAAE,kBAAM;IACf,UAAU;QACR,OAAO,IAAI,kBAAM,EAAE,CAAC;IACtB,CAAC;CACF,CAAC,CAAC","sourcesContent":["import {registerProvider} from \"@tsed/di\";\nimport {Server} from \"socket.io\";\n\nexport type SocketIOServer = Server;\n\n// tslint:disable-next-line: variable-name\nexport const SocketIOServer = Server;\n\nexport {Server};\n\nregisterProvider({\n provide: Server,\n useFactory() {\n return new Server();\n }\n});\n"]}
1
+ {"version":3,"file":"SocketIOServer.js","sourceRoot":"","sources":["../../../src/services/SocketIOServer.ts"],"names":[],"mappings":";;;AAAA,iCAA0C;AAC1C,yCAAiC;AAOzB,uFAPA,kBAAM,OAOA;AAHd,0CAA0C;AAC7B,QAAA,cAAc,GAAG,kBAAM,CAAC;AAIrC,IAAA,qBAAgB,EAAC;IACf,OAAO,EAAE,kBAAM;IACf,UAAU;QACR,OAAO,IAAI,kBAAM,EAAE,CAAC;IACtB,CAAC;CACF,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SocketIOService.js","sourceRoot":"","sources":["../../../src/services/SocketIOService.ts"],"names":[],"mappings":";;;;AAAA,yCAAgE;AAChE,4DAAsC,CAAC,0CAA0C;AACjF,0EAAqE;AACrE,4EAAuE;AACvE,yCAAoC;AAEpC;;GAEG;AAEH,IAAa,eAAe,GAA5B,MAAa,eAAe;IAON;IAAuC;IAN3D;;;OAGG;IACK,UAAU,GAAoE,IAAI,GAAG,EAAE,CAAC;IAEhG,YAAoB,QAAyB,EAAc,EAAmB;QAA1D,aAAQ,GAAR,QAAQ,CAAiB;QAAc,OAAE,GAAF,EAAE,CAAiB;IAAG,CAAC;IAElF;;;;OAIG;IACI,MAAM,CAAC,YAA6B,GAAG;QAC5C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YACnC,MAAM,IAAI,GAAG,EAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,EAAE,EAAC,CAAC;YAEzD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAErC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE;gBACnC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAA8B,EAAE,EAAE;oBACxD,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;gBACzC,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE;oBAC3B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAA8B,EAAE,EAAE;wBACxD,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;oBACzC,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;IACzC,CAAC;IAED;;;OAGG;IACI,iBAAiB,CAAC,QAAuB;QAC9C,MAAM,QAAQ,GAA2B,IAAI,+CAAsB,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QAEpG,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;QAEvB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACrC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,IAAI,6CAAqB,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE/E,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;CACF,CAAA;AAtDY,eAAe;IAD3B,IAAA,gBAAO,GAAE;IAQwC,mBAAA,OAAE,CAAA;6CAApB,wBAAe,EAAkB,QAAQ,CAAC,MAAM;GAPnE,eAAe,CAsD3B;AAtDY,0CAAe","sourcesContent":["import {InjectorService, Provider, Service} from \"@tsed/common\";\nimport * as SocketIO from \"socket.io\"; // tslint:disable-line: no-unused-variable\nimport {SocketHandlersBuilder} from \"../class/SocketHandlersBuilder\";\nimport {SocketProviderMetadata} from \"../class/SocketProviderMetadata\";\nimport {IO} from \"../decorators/io\";\n\n/**\n *\n */\n@Service()\nexport class SocketIOService {\n /**\n *\n * @type {Map<any, any>}\n */\n private namespaces: Map<string | RegExp, {nsp: SocketIO.Namespace; instances: any}> = new Map();\n\n constructor(private injector: InjectorService, @IO private io: SocketIO.Server) {}\n\n /**\n *\n * @param {string} namespace\n * @returns {SocketIO.Namespace}\n */\n public getNsp(namespace: string | RegExp = \"/\"): {nsp: SocketIO.Namespace; instances: any[]} {\n if (!this.namespaces.has(namespace)) {\n const conf = {nsp: this.io.of(namespace), instances: []};\n\n this.namespaces.set(namespace, conf);\n\n conf.nsp.on(\"connection\", (socket) => {\n conf.instances.forEach((builder: SocketHandlersBuilder) => {\n builder.onConnection(socket, conf.nsp);\n });\n\n socket.on(\"disconnect\", () => {\n conf.instances.forEach((builder: SocketHandlersBuilder) => {\n builder.onDisconnect(socket, conf.nsp);\n });\n });\n });\n }\n\n return this.namespaces.get(namespace)!;\n }\n\n /**\n *\n * @param {Provider<any>} provider\n */\n public addSocketProvider(provider: Provider<any>) {\n const wsConfig: SocketProviderMetadata = new SocketProviderMetadata(provider.store.get(\"socketIO\"));\n\n const nspConfig = this.getNsp(wsConfig.namespace);\n const nsps = new Map();\n\n this.namespaces.forEach((value, nsp) => {\n nsps.set(nsp, value.nsp);\n });\n\n const builder = new SocketHandlersBuilder(provider, this.injector).build(nsps);\n\n nspConfig.instances.push(builder);\n }\n}\n"]}
1
+ {"version":3,"file":"SocketIOService.js","sourceRoot":"","sources":["../../../src/services/SocketIOService.ts"],"names":[],"mappings":";;;;AAAA,yCAAgE;AAChE,4DAAsC,CAAC,0CAA0C;AACjF,0EAAqE;AACrE,4EAAuE;AACvE,yCAAoC;AAEpC;;GAEG;AAEI,IAAM,eAAe,GAArB,MAAM,eAAe;IAON;IAAuC;IAN3D;;;OAGG;IACK,UAAU,GAAoE,IAAI,GAAG,EAAE,CAAC;IAEhG,YAAoB,QAAyB,EAAc,EAAmB;QAA1D,aAAQ,GAAR,QAAQ,CAAiB;QAAc,OAAE,GAAF,EAAE,CAAiB;IAAG,CAAC;IAElF;;;;OAIG;IACI,MAAM,CAAC,YAA6B,GAAG;QAC5C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YACnC,MAAM,IAAI,GAAG,EAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,EAAE,EAAC,CAAC;YAEzD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAErC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE;gBACnC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAA8B,EAAE,EAAE;oBACxD,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;gBACzC,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE;oBAC3B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAA8B,EAAE,EAAE;wBACxD,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;oBACzC,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;IACzC,CAAC;IAED;;;OAGG;IACI,iBAAiB,CAAC,QAAuB;QAC9C,MAAM,QAAQ,GAA2B,IAAI,+CAAsB,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QAEpG,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;QAEvB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACrC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,IAAI,6CAAqB,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE/E,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;CACF,CAAA;AAtDY,eAAe;IAD3B,IAAA,gBAAO,GAAE;IAQwC,mBAAA,OAAE,CAAA;6CAApB,wBAAe,EAAkB,QAAQ,CAAC,MAAM;GAPnE,eAAe,CAsD3B;AAtDY,0CAAe"}
@@ -1 +1 @@
1
- {"version":3,"file":"SocketIOModule.js","sourceRoot":"","sources":["../../src/SocketIOModule.ts"],"names":[],"mappings":"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","sourcesContent":["import {$log, AfterListen, Constant, InjectorService, Module, OnDestroy, Provider} from \"@tsed/common\";\nimport {nameOf} from \"@tsed/core\";\nimport {Server, ServerOptions} from \"socket.io\";\nimport {SocketProviderMetadata} from \"./class/SocketProviderMetadata\"; // tslint:disable-line: no-unused-variable\nimport {PROVIDER_TYPE_SOCKET_SERVICE} from \"./constants/constants\";\nimport {IO} from \"./decorators/io\";\nimport {SocketIOService} from \"./services/SocketIOService\";\nimport Http from \"http\";\nimport Https from \"https\";\nimport {Inject} from \"@tsed/di\";\n\n/**\n * @ignore\n */\n@Module()\nexport class SocketIOModule implements AfterListen, OnDestroy {\n @Constant(\"logger.disableRoutesSummary\", false)\n protected disableRoutesSummary: boolean;\n\n @Constant(\"socketIO\", {})\n protected settings: Partial<ServerOptions>;\n\n @Inject()\n protected injector: InjectorService;\n\n @Inject(Http.Server)\n protected httpServer: Http.Server | null;\n\n @Inject(Https.Server)\n protected httpsServer: Https.Server | null;\n\n @IO()\n private io: Server;\n\n @Inject()\n private socketIOService: SocketIOService;\n\n $afterListen() {\n if (this.httpServer) {\n this.io.attach(this.httpServer, {...this.settings});\n }\n\n if (this.httpsServer) {\n this.io.attach(this.httpsServer, {...this.settings});\n }\n\n if (this.settings.adapter) {\n this.io.adapter(this.settings.adapter);\n }\n\n this.getWebsocketServices().forEach((provider) => this.socketIOService.addSocketProvider(provider));\n\n if (!this.disableRoutesSummary) {\n this.printSocketEvents();\n }\n\n return this.injector.emit(\"$afterSocketListen\");\n }\n\n $onDestroy() {\n return this.io?.close && this.io?.engine && new Promise((resolve) => this.io.close(() => resolve(undefined)));\n }\n\n /**\n *\n * @returns {Provider<any>[]}\n */\n protected getWebsocketServices(): Provider<any>[] {\n return Array.from(this.injector.getProviders(PROVIDER_TYPE_SOCKET_SERVICE));\n }\n\n /**\n *\n */\n protected printSocketEvents() {\n const list = this.getWebsocketServices().reduce((acc: any[], provider) => {\n const socketProvider = new SocketProviderMetadata(provider.store.get(\"socketIO\"));\n\n if (socketProvider.namespace) {\n socketProvider.getHandlers().forEach((handler) => {\n acc.push({\n namespace: socketProvider.namespace,\n inputEvent: handler.eventName,\n outputEvent: (handler.returns && handler.returns.eventName) || \"\",\n outputType: (handler.returns && handler.returns.type) || \"\",\n name: `${nameOf(provider.useClass)}.${handler.methodClassName}`\n });\n });\n }\n\n return acc;\n }, []);\n\n this.injector.logger.info(\"Socket events mounted:\");\n\n const str = $log.drawTable(list, {\n padding: 1,\n header: {\n namespace: \"Namespace\",\n inputEvent: \"Input event\",\n outputEvent: \"Output event\",\n outputType: \"Output type\",\n name: \"Class method\"\n }\n });\n\n this.injector.logger.info(\"\\n\" + str.trim());\n\n this.injector.logger.info(\"Socket server started...\");\n }\n}\n"]}
1
+ {"version":3,"file":"SocketIOModule.js","sourceRoot":"","sources":["../../src/SocketIOModule.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SocketHandlersBuilder.js","sourceRoot":"","sources":["../../../src/class/SocketHandlersBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,EAAC,MAAM,YAAY,CAAC;AACjC,OAAO,EAAC,IAAI,EAAC,MAAM,cAAc,CAAC;AAClC,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAE9C,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAI1D,OAAO,EAAC,mBAAmB,EAAC,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAC,kBAAkB,EAAC,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAC,aAAa,EAAC,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAC,sBAAsB,EAAC,MAAM,0BAA0B,CAAC;AAEhE;;GAEG;AACH,MAAM,OAAO,qBAAqB;IAGZ;IAA4B;IAFxC,sBAAsB,CAAyB;IAEvD,YAAoB,QAAkB,EAAU,QAAyB;QAArD,aAAQ,GAAR,QAAQ,CAAU;QAAU,aAAQ,GAAR,QAAQ,CAAiB;QACvE,IAAI,CAAC,sBAAsB,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;IAChG,CAAC;IAED;;;;;OAKG;IACK,MAAM,CAAC,sBAAsB,CAAC,eAAsC,EAAE,KAAU;QACtF,MAAM,EAAC,OAAO,EAAC,GAAG,eAAe,CAAC;QAElC,OAAO,CAAC,QAAa,EAAQ,EAAE;YAC7B,IAAI,OAAO,EAAE;gBACX,QAAQ,OAAO,CAAC,IAAI,EAAE;oBACpB,KAAK,kBAAkB,CAAC,SAAS;wBAC/B,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;wBAC5C,MAAM;oBACR,KAAK,kBAAkB,CAAC,gBAAgB;wBACtC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;wBACzD,MAAM;oBACR,KAAK,kBAAkB,CAAC,IAAI;wBAC1B,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;wBAC/C,MAAM;iBACT;aACF;QACH,CAAC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,IAAqC;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACxD,MAAM,EAAC,gBAAgB,EAAE,SAAS,EAAC,GAAG,IAAI,CAAC,sBAAsB,CAAC;QAClE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAEhC,QAAQ,CAAC,aAAa,IAAI,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QAChG,QAAQ,CAAC,aAAa,IAAI,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QAEhG,QAAQ,CAAC,WAAW,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;QAEhD,gBAAgB,CAAC,OAAO,CAAC,CAAC,OAA4B,EAAE,EAAE;YACxD,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,SAAS,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC;QAEtB,IAAI,QAAQ,CAAC,gBAAgB,EAAE;YAC7B,QAAQ,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;SAChC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACI,YAAY,CAAC,MAAc,EAAE,GAAc;QAChD,MAAM,EAAC,sBAAsB,EAAC,GAAG,IAAI,CAAC;QACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAExD,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAE3B,IAAI,QAAQ,CAAC,aAAa,EAAE;YAC1B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,sBAAsB,CAAC,aAAa,EAAE,EAAC,MAAM,EAAE,GAAG,EAAC,CAAC,CAAC;SAC5E;IACH,CAAC;IAEM,YAAY,CAAC,MAAc,EAAE,GAAc;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACxD,MAAM,EAAC,sBAAsB,EAAC,GAAG,IAAI,CAAC;QAEtC,IAAI,QAAQ,CAAC,aAAa,EAAE;YAC1B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,sBAAsB,CAAC,aAAa,EAAE,EAAC,MAAM,EAAE,GAAG,EAAC,CAAC,CAAC;SAC5E;QAED,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACK,aAAa,CAAC,MAAc;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACxD,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;IACjD,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,MAAc;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACxD,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC;IAEO,aAAa,CAAC,MAAc,EAAE,GAAc;QAClD,MAAM,EAAC,sBAAsB,EAAC,GAAG,IAAI,CAAC;QAEtC,sBAAsB,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACvD,MAAM,EAAC,SAAS,EAAC,GAAG,OAAO,CAAC;YAE5B,IAAI,SAAS,EAAE;gBACb,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE;oBAC/B,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC5C,CAAC,CAAC,CAAC;aACJ;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,eAAsC,EAAE,IAAW,EAAE,MAAc,EAAE,GAAc;QACxG,IAAI,OAAO,GAAQ,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACxD,MAAM,EAAC,SAAS,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAC,sBAAsB,CAAC;QAC1D,MAAM,KAAK,GAAG;YACZ,IAAI;YACJ,MAAM;YACN,GAAG;YACH,SAAS,EAAE,eAAe,CAAC,SAAS;SACrC,CAAC;QAEF,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC;QAEvE,IAAI,SAAS,EAAE;YACb,SAAS,CAAC,OAAO,CAAC,CAAC,MAAW,EAAE,EAAE,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;SAC7F;QAED,IAAI,eAAe,CAAC,SAAS,EAAE;YAC7B,eAAe,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;SACxG;QAED,OAAO,GAAG,OAAO;aACd,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;aACzD,IAAI,CAAC,qBAAqB,CAAC,sBAAsB,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC;QAE9E,IAAI,eAAe,CAAC,QAAQ,EAAE;YAC5B,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;SACvG;QAED,IAAI,QAAQ,EAAE;YACZ,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAW,EAAE,EAAE,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;SAC5F;QAED,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAO,EAAE,EAAE;YAC/B,0BAA0B;YAC1B,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC1C,0BAA0B;YAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,WAAW,CAAC,eAAsC,EAAE,KAAU;QACpE,MAAM,EAAC,UAAU,EAAC,GAAG,eAAe,CAAC;QACrC,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,KAAU,EAAE,EAAE;YACnD,MAAM,EAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAC,GAAG,UAAW,CAAC,KAAK,CAAC,CAAC;YAC/E,IAAI,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,QAAS,CAAC,CAAC;YAElC,IAAI,MAAM,KAAK,aAAa,CAAC,IAAI,IAAI,SAAS,EAAE;gBAC9C,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE;oBACzB,QAAQ,EAAE,IAAI;oBACd,IAAI;oBACJ,cAAc;iBACf,CAAC,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,QAAS,CAAC,GAAG,KAAK,CAAC;aAC/B;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,cAAc,CAAC,MAAW,EAAE,KAAU,EAAE,OAAqB;QACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAE3C,IAAI,QAAQ,EAAE;YACZ,MAAM,eAAe,GAA2B,IAAI,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;YAEjH,IAAI,eAAe,CAAC,IAAI,KAAK,mBAAmB,CAAC,UAAU,EAAE;gBAC3D,IAAI,eAAe,CAAC,KAAK,EAAE;oBACzB,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,UAAU,EAAE,EAAC,KAAK,EAAE,GAAG,KAAK,EAAC,CAAC,CAAC,CAAC;iBAC5G;gBAED,OAAO,OAAO;qBACX,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;qBACpE,IAAI,CAAC,CAAC,MAAW,EAAE,EAAE;oBACpB,IAAI,MAAM,EAAE;wBACV,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;qBAChC;gBACH,CAAC,CAAC,CAAC;aACN;SACF;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,QAAa,EAAE,eAAsC,EAAE,KAAU;QACpF,MAAM,EAAC,eAAe,EAAE,UAAU,EAAC,GAAG,eAAe,CAAC;QAEtD,OAAO,MAAM,QAAQ,CAAC,eAAe,CAAC,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,UAAW,EAAE,KAAK,CAAC,CAAC,CAAC;IACtF,CAAC;IAEO,eAAe,CAAC,UAAgD,EAAE,KAAU;QAClF,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE;YACtD,MAAM,KAAK,GAAwB,UAAU,CAAC,KAAK,CAAC,CAAC;YAErD,QAAQ,KAAK,CAAC,MAAM,EAAE;gBACpB,KAAK,aAAa,CAAC,IAAI;oBACrB,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE;wBAChC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;qBACnC;oBAED,OAAO,KAAK,CAAC,IAAI,CAAC;gBAEpB,KAAK,aAAa,CAAC,UAAU;oBAC3B,OAAO,KAAK,CAAC,SAAS,CAAC;gBAEzB,KAAK,aAAa,CAAC,MAAM;oBACvB,OAAO,KAAK,CAAC,MAAM,CAAC;gBAEtB,KAAK,aAAa,CAAC,GAAG;oBACpB,OAAO,KAAK,CAAC,GAAG,CAAC;gBAEnB,KAAK,aAAa,CAAC,GAAG;oBACpB,OAAO,KAAK,CAAC,KAAK,CAAC;gBAErB,KAAK,aAAa,CAAC,OAAO;oBACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBACxD,OAAO,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAEnD,KAAK,aAAa,CAAC,UAAU;oBAC3B,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;aAC3B;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF","sourcesContent":["import {InjectorService, Provider} from \"@tsed/di\";\nimport {Store} from \"@tsed/core\";\nimport {$log} from \"@tsed/logger\";\nimport {deserialize} from \"@tsed/json-mapper\";\nimport {Namespace, Socket} from \"socket.io\";\nimport {SocketFilters} from \"../interfaces/SocketFilters\";\nimport {SocketHandlerMetadata} from \"../interfaces/SocketHandlerMetadata\";\nimport {SocketInjectableNsp} from \"../interfaces/SocketInjectableNsp\";\nimport {SocketParamMetadata} from \"../interfaces/SocketParamMetadata\";\nimport {SocketProviderTypes} from \"../interfaces/SocketProviderTypes\";\nimport {SocketReturnsTypes} from \"../interfaces/SocketReturnsTypes\";\nimport {getNspSession} from \"../registries/NspSessionRegistry\";\nimport {SocketProviderMetadata} from \"./SocketProviderMetadata\";\n\n/**\n * @ignore\n */\nexport class SocketHandlersBuilder {\n private socketProviderMetadata: SocketProviderMetadata;\n\n constructor(private provider: Provider, private injector: InjectorService) {\n this.socketProviderMetadata = new SocketProviderMetadata(this.provider.store.get(\"socketIO\"));\n }\n\n /**\n *\n * @param {SocketHandlerMetadata} handlerMetadata\n * @param scope\n * @returns {(data) => void}\n */\n private static bindResponseMiddleware(handlerMetadata: SocketHandlerMetadata, scope: any) {\n const {returns} = handlerMetadata;\n\n return (response: any): void => {\n if (returns) {\n switch (returns.type) {\n case SocketReturnsTypes.BROADCAST:\n scope.nsp.emit(returns.eventName, response);\n break;\n case SocketReturnsTypes.BROADCAST_OTHERS:\n scope.socket.broadcast.emit(returns.eventName, response);\n break;\n case SocketReturnsTypes.EMIT:\n scope.socket.emit(returns.eventName, response);\n break;\n }\n }\n };\n }\n\n /**\n *\n * @returns {any}\n */\n public build(nsps: Map<string | RegExp, Namespace>) {\n const instance = this.injector.get(this.provider.token);\n const {injectNamespaces, namespace} = this.socketProviderMetadata;\n const nsp = nsps.get(namespace);\n\n instance.$onConnection && this.socketProviderMetadata.createHook(\"$onConnection\", \"connection\");\n instance.$onDisconnect && this.socketProviderMetadata.createHook(\"$onDisconnect\", \"disconnect\");\n\n instance._nspSession = getNspSession(namespace);\n\n injectNamespaces.forEach((setting: SocketInjectableNsp) => {\n instance[setting.propertyKey] = nsps.get(setting.nsp || namespace);\n });\n\n instance[\"nsp\"] = nsp;\n\n if (instance.$onNamespaceInit) {\n instance.$onNamespaceInit(nsp);\n }\n\n return this;\n }\n\n /**\n *\n * @param {Socket} socket\n * @param {Namespace} nsp\n */\n public onConnection(socket: Socket, nsp: Namespace) {\n const {socketProviderMetadata} = this;\n const instance = this.injector.get(this.provider.token);\n\n this.buildHandlers(socket, nsp);\n this.createSession(socket);\n\n if (instance.$onConnection) {\n this.invoke(instance, socketProviderMetadata.$onConnection, {socket, nsp});\n }\n }\n\n public onDisconnect(socket: Socket, nsp: Namespace) {\n const instance = this.injector.get(this.provider.token);\n const {socketProviderMetadata} = this;\n\n if (instance.$onDisconnect) {\n this.invoke(instance, socketProviderMetadata.$onDisconnect, {socket, nsp});\n }\n\n this.destroySession(socket);\n }\n\n /**\n *\n * @param {Socket} socket\n */\n private createSession(socket: Socket) {\n const instance = this.injector.get(this.provider.token);\n instance._nspSession.set(socket.id, new Map());\n }\n\n /**\n *\n * @param {Socket} socket\n */\n private destroySession(socket: Socket) {\n const instance = this.injector.get(this.provider.token);\n instance._nspSession.delete(socket.id);\n }\n\n private buildHandlers(socket: Socket, nsp: Namespace) {\n const {socketProviderMetadata} = this;\n\n socketProviderMetadata.getHandlers().forEach((handler) => {\n const {eventName} = handler;\n\n if (eventName) {\n socket.on(eventName, (...args) => {\n this.runQueue(handler, args, socket, nsp);\n });\n }\n });\n }\n\n private async runQueue(handlerMetadata: SocketHandlerMetadata, args: any[], socket: Socket, nsp: Namespace) {\n let promise: any = Promise.resolve(args);\n const instance = this.injector.get(this.provider.token);\n const {useBefore, useAfter} = this.socketProviderMetadata;\n const scope = {\n args,\n socket,\n nsp,\n eventName: handlerMetadata.eventName\n };\n\n promise = promise.then(() => this.deserialize(handlerMetadata, scope));\n\n if (useBefore) {\n useBefore.forEach((target: any) => (promise = this.bindMiddleware(target, scope, promise)));\n }\n\n if (handlerMetadata.useBefore) {\n handlerMetadata.useBefore.forEach((target) => (promise = this.bindMiddleware(target, scope, promise)));\n }\n\n promise = promise\n .then(() => this.invoke(instance, handlerMetadata, scope))\n .then(SocketHandlersBuilder.bindResponseMiddleware(handlerMetadata, scope));\n\n if (handlerMetadata.useAfter) {\n handlerMetadata.useAfter.forEach((target) => (promise = this.bindMiddleware(target, scope, promise)));\n }\n\n if (useAfter) {\n useAfter.forEach((target: any) => (promise = this.bindMiddleware(target, scope, promise)));\n }\n\n return promise.catch((er: any) => {\n /* istanbul ignore next */\n $log.error(handlerMetadata.eventName, er);\n /* istanbul ignore next */\n process.exit(-1);\n });\n }\n\n private deserialize(handlerMetadata: SocketHandlerMetadata, scope: any) {\n const {parameters} = handlerMetadata;\n Object.keys(parameters || []).forEach((index: any) => {\n const {filter, useMapper, mapIndex, type, collectionType} = parameters![index];\n let value = scope.args[mapIndex!];\n\n if (filter === SocketFilters.ARGS && useMapper) {\n value = deserialize(value, {\n useAlias: true,\n type,\n collectionType\n });\n scope.args[mapIndex!] = value;\n }\n });\n }\n\n private bindMiddleware(target: any, scope: any, promise: Promise<any>): Promise<any> {\n const instance = this.injector.get(target);\n\n if (instance) {\n const handlerMetadata: SocketProviderMetadata = new SocketProviderMetadata(Store.from(instance).get(\"socketIO\"));\n\n if (handlerMetadata.type === SocketProviderTypes.MIDDLEWARE) {\n if (handlerMetadata.error) {\n return promise.catch((error: any) => this.invoke(instance, handlerMetadata.useHandler, {error, ...scope}));\n }\n\n return promise\n .then(() => this.invoke(instance, handlerMetadata.useHandler, scope))\n .then((result: any) => {\n if (result) {\n scope.args = [].concat(result);\n }\n });\n }\n }\n\n return promise;\n }\n\n private async invoke(instance: any, handlerMetadata: SocketHandlerMetadata, scope: any): Promise<any> {\n const {methodClassName, parameters} = handlerMetadata;\n\n return await instance[methodClassName](...this.buildParameters(parameters!, scope));\n }\n\n private buildParameters(parameters: {[key: number]: SocketParamMetadata}, scope: any): any[] {\n return Object.keys(parameters || []).map((index: any) => {\n const param: SocketParamMetadata = parameters[index];\n\n switch (param.filter) {\n case SocketFilters.ARGS:\n if (param.mapIndex !== undefined) {\n return scope.args[param.mapIndex];\n }\n\n return scope.args;\n\n case SocketFilters.EVENT_NAME:\n return scope.eventName;\n\n case SocketFilters.SOCKET:\n return scope.socket;\n\n case SocketFilters.NSP:\n return scope.nsp;\n\n case SocketFilters.ERR:\n return scope.error;\n\n case SocketFilters.SESSION:\n const instance = this.injector.get(this.provider.token);\n return instance._nspSession.get(scope.socket.id);\n\n case SocketFilters.SOCKET_NSP:\n return scope.socket.nsp;\n }\n });\n }\n}\n"]}
1
+ {"version":3,"file":"SocketHandlersBuilder.js","sourceRoot":"","sources":["../../../src/class/SocketHandlersBuilder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SocketProviderMetadata.js","sourceRoot":"","sources":["../../../src/class/SocketProviderMetadata.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,sBAAsB;IAC1B,IAAI,CAAsB;IAC1B,SAAS,CAAkB;IAC3B,KAAK,GAAY,KAAK,CAAC;IACvB,gBAAgB,GAA0B,EAAE,CAAC;IAC7C,SAAS,GAAU,EAAE,CAAC;IACtB,QAAQ,GAAU,EAAE,CAAC;IACrB,QAAQ,GAA0C,EAAE,CAAC;IAE5D,YAAY,UAA2C,EAAE;QACvD,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,OAAO,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1D,OAAO,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC/E,OAAO,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1D,OAAO,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvD,OAAO,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,GAAG,CAAC,GAAW;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,QAA+B;QAC9C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;IAChC,CAAC;IAED,WAAW;QACT,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;aACjC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;aACzE,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,UAAU,CAAC,IAAY,EAAE,SAAiB;QACxC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;YACb,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACzB,SAAS;YACT,eAAe,EAAE,IAAI;SACtB,CAAC,CAAC;IACL,CAAC;CACF","sourcesContent":["import {SocketHandlerMetadata} from \"../interfaces/SocketHandlerMetadata\";\nimport {SocketInjectableNsp} from \"../interfaces/SocketInjectableNsp\";\nimport {SocketProviderTypes} from \"../interfaces/SocketProviderTypes\";\n\nexport class SocketProviderMetadata {\n public type: SocketProviderTypes;\n public namespace: string | RegExp;\n public error: boolean = false;\n public injectNamespaces: SocketInjectableNsp[] = [];\n public useBefore: any[] = [];\n public useAfter: any[] = [];\n public handlers: Record<string, SocketHandlerMetadata> = {};\n\n constructor(options: Partial<SocketProviderMetadata> = {}) {\n options.type && (this.type = options.type);\n options.namespace && (this.namespace = options.namespace);\n options.error && (this.error = options.error);\n options.injectNamespaces && (this.injectNamespaces = options.injectNamespaces);\n options.useBefore && (this.useBefore = options.useBefore);\n options.useAfter && (this.useAfter = options.useAfter);\n options.handlers && (this.handlers = options.handlers);\n }\n\n get useHandler() {\n return this.get(\"use\");\n }\n\n get $onConnection() {\n return this.get(\"$onConnection\");\n }\n\n get $onDisconnect() {\n return this.get(\"$onDisconnect\");\n }\n\n get(key: string): SocketHandlerMetadata {\n return this.handlers[key];\n }\n\n set(key: string, metadata: SocketHandlerMetadata): void {\n this.handlers[key] = metadata;\n }\n\n getHandlers() {\n return Object.entries(this.handlers)\n .filter(([key]) => [\"$onConnection\", \"$onDisconnect\"].indexOf(key) === -1)\n .map(([, handler]) => handler);\n }\n\n createHook(hook: string, eventName: string): void {\n this.set(hook, {\n ...(this.get(hook) || {}),\n eventName,\n methodClassName: hook\n });\n }\n}\n"]}
1
+ {"version":3,"file":"SocketProviderMetadata.js","sourceRoot":"","sources":["../../../src/class/SocketProviderMetadata.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,sBAAsB;IAC1B,IAAI,CAAsB;IAC1B,SAAS,CAAkB;IAC3B,KAAK,GAAY,KAAK,CAAC;IACvB,gBAAgB,GAA0B,EAAE,CAAC;IAC7C,SAAS,GAAU,EAAE,CAAC;IACtB,QAAQ,GAAU,EAAE,CAAC;IACrB,QAAQ,GAA0C,EAAE,CAAC;IAE5D,YAAY,UAA2C,EAAE;QACvD,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,OAAO,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1D,OAAO,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC/E,OAAO,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1D,OAAO,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvD,OAAO,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,GAAG,CAAC,GAAW;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,QAA+B;QAC9C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;IAChC,CAAC;IAED,WAAW;QACT,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;aACjC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;aACzE,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,UAAU,CAAC,IAAY,EAAE,SAAiB;QACxC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;YACb,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACzB,SAAS;YACT,eAAe,EAAE,IAAI;SACtB,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/constants/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,4BAA4B,GAAG,eAAe,CAAC","sourcesContent":["export const PROVIDER_TYPE_SOCKET_SERVICE = \"socketService\";\n"]}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/constants/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,4BAA4B,GAAG,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"args.js","sourceRoot":"","sources":["../../../src/decorators/args.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAC,MAAM,YAAY,CAAC;AACzD,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,UAAU,IAAI,CAAC,QAAiB,EAAE,OAAa;IACnD,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa,EAAE,EAAE;QACzD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC;QAChE,MAAM,KAAK,GAAG;YACZ,MAAM,EAAE,aAAa,CAAC,IAAI;YAC1B,SAAS,EAAE,KAAK;SACjB,CAAC;QAEF,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC1B,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;gBACnB,QAAQ;gBACR,SAAS,EAAE,IAAI;gBACf,IAAI,EAAE,OAAO,IAAI,IAAI;gBACrB,cAAc,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;aACtD,CAAC,CAAC;SACJ;QAED,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE;YACtB,QAAQ,EAAE;gBACR,CAAC,WAAW,CAAC,EAAE;oBACb,UAAU,EAAE;wBACV,CAAC,KAAK,CAAC,EAAE,KAAK;qBACf;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC","sourcesContent":["import {isCollection, Metadata, Store} from \"@tsed/core\";\nimport {SocketFilters} from \"../interfaces/SocketFilters\";\n\n/**\n * Inject the list of arguments in the decorated parameter.\n *\n * `@Args` accept an index parameter to pick up directly the item in the arguments list.\n *\n * ### Example\n *\n * ```typescript\n * @SocketService(\"/nsp\")\n * export class MyWS {\n *\n * @Input(\"event\")\n * myMethod(@Args() arguments: any[]) {\n *\n * }\n *\n * @Input(\"event2\")\n * myMethod2(@Args(0) data: any) {\n *\n * }\n * }\n * ```\n *\n * @decorator\n * @param mapIndex\n * @param useType\n */\nexport function Args(mapIndex?: number, useType?: any): any {\n return (target: any, propertyKey: string, index: number) => {\n const store = Store.from(target);\n const type = Metadata.getParamTypes(target, propertyKey)[index];\n const param = {\n filter: SocketFilters.ARGS,\n useMapper: false\n };\n\n if (mapIndex !== undefined) {\n Object.assign(param, {\n mapIndex,\n useMapper: true,\n type: useType || type,\n collectionType: isCollection(type) ? type : undefined\n });\n }\n\n store.merge(\"socketIO\", {\n handlers: {\n [propertyKey]: {\n parameters: {\n [index]: param\n }\n }\n }\n });\n };\n}\n"]}
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../../src/decorators/args.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAC,MAAM,YAAY,CAAC;AACzD,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,UAAU,IAAI,CAAC,QAAiB,EAAE,OAAa;IACnD,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,KAAa,EAAE,EAAE;QACzD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC;QAChE,MAAM,KAAK,GAAG;YACZ,MAAM,EAAE,aAAa,CAAC,IAAI;YAC1B,SAAS,EAAE,KAAK;SACjB,CAAC;QAEF,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC1B,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;gBACnB,QAAQ;gBACR,SAAS,EAAE,IAAI;gBACf,IAAI,EAAE,OAAO,IAAI,IAAI;gBACrB,cAAc,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;aACtD,CAAC,CAAC;SACJ;QAED,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE;YACtB,QAAQ,EAAE;gBACR,CAAC,WAAW,CAAC,EAAE;oBACb,UAAU,EAAE;wBACV,CAAC,KAAK,CAAC,EAAE,KAAK;qBACf;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}