@webiny/api-websockets 6.0.0-beta.0 → 6.0.0-rc.0

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 (125) hide show
  1. package/README.md +10 -9
  2. package/context/WebsocketsContext.d.ts +10 -8
  3. package/context/WebsocketsContext.js +44 -33
  4. package/context/WebsocketsContext.js.map +1 -1
  5. package/context/abstractions/IWebsocketsContext.d.ts +12 -11
  6. package/context/abstractions/IWebsocketsContext.js +1 -5
  7. package/context/abstractions/IWebsocketsContext.js.map +1 -1
  8. package/context/index.d.ts +2 -3
  9. package/context/index.js +11 -42
  10. package/context/index.js.map +1 -1
  11. package/features/WebsocketService/abstractions.d.ts +9 -0
  12. package/features/WebsocketService/abstractions.js +4 -0
  13. package/features/WebsocketService/abstractions.js.map +1 -0
  14. package/features/WebsocketService/errors.d.ts +19 -0
  15. package/features/WebsocketService/errors.js +36 -0
  16. package/features/WebsocketService/errors.js.map +1 -0
  17. package/features/WebsocketService/index.d.ts +1 -0
  18. package/features/WebsocketService/index.js +3 -0
  19. package/features/WebsocketService/index.js.map +1 -0
  20. package/graphql/checkPermissions.d.ts +1 -1
  21. package/graphql/checkPermissions.js +6 -11
  22. package/graphql/checkPermissions.js.map +1 -1
  23. package/graphql/createResolvers.d.ts +2 -3
  24. package/graphql/createResolvers.js +41 -32
  25. package/graphql/createResolvers.js.map +1 -1
  26. package/graphql/createTypeDefs.js +2 -11
  27. package/graphql/createTypeDefs.js.map +1 -1
  28. package/graphql/index.d.ts +1 -1
  29. package/graphql/index.js +7 -14
  30. package/graphql/index.js.map +1 -1
  31. package/graphql/utils.js +5 -13
  32. package/graphql/utils.js.map +1 -1
  33. package/handler/handler.d.ts +1 -1
  34. package/handler/handler.js +45 -48
  35. package/handler/handler.js.map +1 -1
  36. package/handler/headers.d.ts +1 -2
  37. package/handler/headers.js +1 -13
  38. package/handler/headers.js.map +1 -1
  39. package/handler/register.js +5 -7
  40. package/handler/register.js.map +1 -1
  41. package/handler/types.d.ts +6 -9
  42. package/handler/types.js +2 -8
  43. package/handler/types.js.map +1 -1
  44. package/index.d.ts +9 -9
  45. package/index.js +11 -98
  46. package/index.js.map +1 -1
  47. package/package.json +28 -36
  48. package/plugins/WebsocketsActionPlugin.d.ts +3 -3
  49. package/plugins/WebsocketsActionPlugin.js +3 -11
  50. package/plugins/WebsocketsActionPlugin.js.map +1 -1
  51. package/plugins/WebsocketsRoutePlugin.d.ts +6 -7
  52. package/plugins/WebsocketsRoutePlugin.js +3 -11
  53. package/plugins/WebsocketsRoutePlugin.js.map +1 -1
  54. package/plugins/abstrations/IWebsocketsActionPlugin.d.ts +3 -4
  55. package/plugins/abstrations/IWebsocketsActionPlugin.js +1 -5
  56. package/plugins/abstrations/IWebsocketsActionPlugin.js.map +1 -1
  57. package/plugins/index.d.ts +3 -3
  58. package/plugins/index.js +2 -38
  59. package/plugins/index.js.map +1 -1
  60. package/registry/WebsocketsConnectionRegistry.d.ts +3 -3
  61. package/registry/WebsocketsConnectionRegistry.js +34 -59
  62. package/registry/WebsocketsConnectionRegistry.js.map +1 -1
  63. package/registry/abstractions/IWebsocketsConnectionRegistry.d.ts +2 -4
  64. package/registry/abstractions/IWebsocketsConnectionRegistry.js +1 -5
  65. package/registry/abstractions/IWebsocketsConnectionRegistry.js.map +1 -1
  66. package/registry/entity.d.ts +3 -108
  67. package/registry/entity.js +18 -33
  68. package/registry/entity.js.map +1 -1
  69. package/registry/index.d.ts +2 -2
  70. package/registry/index.js +1 -27
  71. package/registry/index.js.map +1 -1
  72. package/response/WebsocketsResponse.d.ts +1 -1
  73. package/response/WebsocketsResponse.js +1 -8
  74. package/response/WebsocketsResponse.js.map +1 -1
  75. package/response/abstractions/IWebsocketsResponse.d.ts +1 -1
  76. package/response/abstractions/IWebsocketsResponse.js +1 -5
  77. package/response/abstractions/IWebsocketsResponse.js.map +1 -1
  78. package/response/index.d.ts +2 -2
  79. package/response/index.js +1 -27
  80. package/response/index.js.map +1 -1
  81. package/runner/WebsocketsRunner.d.ts +6 -6
  82. package/runner/WebsocketsRunner.js +10 -23
  83. package/runner/WebsocketsRunner.js.map +1 -1
  84. package/runner/abstractions/IWebsocketsRunner.d.ts +2 -2
  85. package/runner/abstractions/IWebsocketsRunner.js +1 -5
  86. package/runner/abstractions/IWebsocketsRunner.js.map +1 -1
  87. package/runner/index.d.ts +2 -2
  88. package/runner/index.js +1 -27
  89. package/runner/index.js.map +1 -1
  90. package/runner/routes/connect.d.ts +1 -1
  91. package/runner/routes/connect.js +9 -19
  92. package/runner/routes/connect.js.map +1 -1
  93. package/runner/routes/default.d.ts +1 -1
  94. package/runner/routes/default.js +4 -17
  95. package/runner/routes/default.js.map +1 -1
  96. package/runner/routes/disconnect.d.ts +1 -1
  97. package/runner/routes/disconnect.js +4 -11
  98. package/runner/routes/disconnect.js.map +1 -1
  99. package/runner/routes/index.d.ts +1 -1
  100. package/runner/routes/index.js +5 -12
  101. package/runner/routes/index.js.map +1 -1
  102. package/transport/WebsocketsTransport.d.ts +2 -2
  103. package/transport/WebsocketsTransport.js +5 -12
  104. package/transport/WebsocketsTransport.js.map +1 -1
  105. package/transport/abstractions/IWebsocketsTransport.d.ts +4 -4
  106. package/transport/abstractions/IWebsocketsTransport.js +1 -5
  107. package/transport/abstractions/IWebsocketsTransport.js.map +1 -1
  108. package/transport/index.d.ts +2 -2
  109. package/transport/index.js +1 -27
  110. package/transport/index.js.map +1 -1
  111. package/types.d.ts +5 -5
  112. package/types.js +1 -5
  113. package/types.js.map +1 -1
  114. package/utils/middleware.d.ts +2 -2
  115. package/utils/middleware.js +1 -8
  116. package/utils/middleware.js.map +1 -1
  117. package/validator/WebsocketsEventValidator.d.ts +2 -2
  118. package/validator/WebsocketsEventValidator.js +25 -34
  119. package/validator/WebsocketsEventValidator.js.map +1 -1
  120. package/validator/abstractions/IWebsocketsEventValidator.d.ts +2 -2
  121. package/validator/abstractions/IWebsocketsEventValidator.js +1 -5
  122. package/validator/abstractions/IWebsocketsEventValidator.js.map +1 -1
  123. package/validator/index.d.ts +2 -2
  124. package/validator/index.js +1 -27
  125. package/validator/index.js.map +1 -1
@@ -1,9 +1,9 @@
1
- import { IWebsocketsEventData, IWebsocketsIncomingEvent } from "../handler/types";
2
- import { Context } from "../types";
3
- import { IWebsocketsEventValidator } from "../validator";
4
- import { IWebsocketsRunner, IWebsocketsRunnerResponse } from "./abstractions/IWebsocketsRunner";
5
- import { IWebsocketsConnectionRegistry } from "../registry";
6
- import { IWebsocketsResponse } from "../response";
1
+ import type { IWebsocketsEventData, IWebsocketsIncomingEvent } from "../handler/types.js";
2
+ import type { Context } from "../types.js";
3
+ import type { IWebsocketsEventValidator } from "../validator/index.js";
4
+ import type { IWebsocketsRunner, IWebsocketsRunnerResponse } from "./abstractions/IWebsocketsRunner.js";
5
+ import type { IWebsocketsConnectionRegistry } from "../registry/index.js";
6
+ import type { IWebsocketsResponse } from "../response/index.js";
7
7
  export declare class WebsocketsRunner implements IWebsocketsRunner {
8
8
  private readonly context;
9
9
  private readonly registry;
@@ -1,15 +1,8 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.WebsocketsRunner = void 0;
8
- var _error = _interopRequireDefault(require("@webiny/error"));
9
- var _types = require("../handler/types");
10
- var _plugins = require("../plugins");
11
- var _middleware = require("../utils/middleware");
12
- class WebsocketsRunner {
1
+ import WebinyError from "@webiny/error";
2
+ import { WebsocketsEventRequestContextEventType } from "../handler/types.js";
3
+ import { WebsocketsRoutePlugin } from "../plugins/index.js";
4
+ import { middleware } from "../utils/middleware.js";
5
+ export class WebsocketsRunner {
13
6
  constructor(context, registry, validator, response) {
14
7
  this.context = context;
15
8
  this.registry = registry;
@@ -94,11 +87,11 @@ class WebsocketsRunner {
94
87
  }
95
88
  }
96
89
  getRoutePlugins(route) {
97
- const plugins = this.context.plugins.byType(_plugins.WebsocketsRoutePlugin.type).filter(plugin => {
90
+ const plugins = this.context.plugins.byType(WebsocketsRoutePlugin.type).filter(plugin => {
98
91
  return plugin.route === route;
99
92
  });
100
93
  if (plugins.length === 0) {
101
- throw new _error.default(`There are no plugins for the route: ${route}.`, "NO_ROUTE_PLUGINS", {
94
+ throw new WebinyError(`There are no plugins for the route: ${route}.`, "NO_ROUTE_PLUGINS", {
102
95
  route
103
96
  });
104
97
  }
@@ -113,22 +106,17 @@ class WebsocketsRunner {
113
106
  const tenant = this.context.tenancy.getCurrentTenant();
114
107
  return tenant?.id || null;
115
108
  };
116
- const getLocale = () => {
117
- const locale = this.context.i18n.getCurrentLocale("content");
118
- return locale?.code || null;
119
- };
120
109
  const getIdentity = () => {
121
110
  const identity = this.context.security.getIdentity();
122
111
  return identity || null;
123
112
  };
124
- const action = (0, _middleware.middleware)(plugins.map(plugin => {
113
+ const action = middleware(plugins.map(plugin => {
125
114
  return async (params, next) => {
126
115
  return plugin.run({
127
116
  registry: params.registry,
128
117
  event: params.event,
129
118
  context: params.context,
130
119
  getTenant,
131
- getLocale,
132
120
  getIdentity,
133
121
  response: this.response,
134
122
  next
@@ -162,7 +150,7 @@ class WebsocketsRunner {
162
150
  result,
163
151
  messageId
164
152
  } = params;
165
- if (eventType !== _types.WebsocketsEventRequestContextEventType.message) {
153
+ if (eventType !== WebsocketsEventRequestContextEventType.message) {
166
154
  return;
167
155
  } else if (!connectionId || !domainName || !stage) {
168
156
  const message = "No connectionId, domainName or stage.";
@@ -172,7 +160,7 @@ class WebsocketsRunner {
172
160
  stage
173
161
  };
174
162
  console.error(message, JSON.stringify(data));
175
- throw new _error.default(message, "GENERAL_ERROR", data);
163
+ throw new WebinyError(message, "GENERAL_ERROR", data);
176
164
  }
177
165
  const connection = {
178
166
  connectionId,
@@ -186,6 +174,5 @@ class WebsocketsRunner {
186
174
  await this.context.websockets.sendToConnections([connection], dataToSend);
187
175
  }
188
176
  }
189
- exports.WebsocketsRunner = WebsocketsRunner;
190
177
 
191
178
  //# sourceMappingURL=WebsocketsRunner.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_error","_interopRequireDefault","require","_types","_plugins","_middleware","WebsocketsRunner","constructor","context","registry","validator","response","run","input","event","validate","ex","result","error","message","code","data","stack","connectionId","domainName","stage","eventType","requestContext","messageId","body","JSON","stringify","json","parse","respond","executeRoute","routeKey","getRoutePlugins","route","plugins","byType","WebsocketsRoutePlugin","type","filter","plugin","length","WebinyError","reverse","getTenant","tenant","tenancy","getCurrentTenant","id","getLocale","locale","i18n","getCurrentLocale","getIdentity","identity","security","action","middleware","map","params","next","statusCode","WebsocketsEventRequestContextEventType","console","connection","dataToSend","websockets","sendToConnections","exports"],"sources":["WebsocketsRunner.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport {\n IWebsocketsEvent,\n IWebsocketsEventData,\n IWebsocketsEventRequestContext,\n IWebsocketsIncomingEvent,\n WebsocketsEventRequestContextEventType,\n WebsocketsEventRoute\n} from \"~/handler/types\";\nimport { Context } from \"~/types\";\nimport { IWebsocketsEventValidator } from \"~/validator\";\nimport { IWebsocketsRunner, IWebsocketsRunnerResponse } from \"./abstractions/IWebsocketsRunner\";\nimport { IWebsocketsRoutePluginCallableParams, WebsocketsRoutePlugin } from \"~/plugins\";\nimport { middleware } from \"~/utils/middleware\";\nimport { IWebsocketsConnectionRegistry } from \"~/registry\";\nimport {\n IWebsocketsResponse,\n IWebsocketsResponseErrorResult,\n IWebsocketsResponseOkResult\n} from \"~/response\";\nimport { IWebsocketsTransportSendConnection } from \"~/transport\";\nimport { IWebsocketsIdentity } from \"~/context\";\n\ntype MiddlewareParams<C extends Context = Context> = Pick<\n IWebsocketsRoutePluginCallableParams<C>,\n \"context\" | \"event\" | \"registry\"\n>;\n\ninterface IWebsocketsRunnerRespondParams\n extends Pick<\n IWebsocketsEventRequestContext,\n \"connectionId\" | \"domainName\" | \"stage\" | \"eventType\"\n > {\n messageId?: string;\n result: IWebsocketsResponseOkResult | IWebsocketsResponseErrorResult;\n}\n\nexport class WebsocketsRunner implements IWebsocketsRunner {\n private readonly context: Context;\n private readonly registry: IWebsocketsConnectionRegistry;\n private readonly validator: IWebsocketsEventValidator;\n private readonly response: IWebsocketsResponse;\n\n public constructor(\n context: Context,\n registry: IWebsocketsConnectionRegistry,\n validator: IWebsocketsEventValidator,\n response: IWebsocketsResponse\n ) {\n this.context = context;\n this.registry = registry;\n this.validator = validator;\n this.response = response;\n }\n\n public async run<T extends IWebsocketsEventData = IWebsocketsEventData>(\n input: IWebsocketsIncomingEvent\n ): Promise<IWebsocketsRunnerResponse> {\n let event: IWebsocketsEvent<T> | undefined;\n try {\n event = await this.validator.validate<T>(input);\n } catch (ex) {\n const result = this.response.error({\n message: \"Validation failed.\",\n error: {\n message: ex.message,\n code: ex.code,\n data: ex.data,\n stack: ex.stack\n }\n });\n\n const { connectionId, domainName, stage, eventType } = input.requestContext || {};\n let messageId: string | undefined;\n try {\n const body =\n typeof input.body === \"string\" ? input.body : JSON.stringify(input.body || {});\n const json = JSON.parse(body);\n messageId = json.messageId;\n } catch {\n // Do nothing\n }\n if (!connectionId || !stage || !domainName || !eventType) {\n return result;\n }\n\n await this.respond({\n connectionId,\n domainName,\n stage,\n eventType,\n messageId,\n result\n });\n return result;\n }\n\n let result: IWebsocketsResponseOkResult | IWebsocketsResponseErrorResult;\n try {\n result = await this.executeRoute(event);\n } catch (ex) {\n result = this.response.error({\n message: `Route \"${event.requestContext.routeKey}\" action failed.`,\n error: {\n message: ex.message,\n code: ex.code,\n data: ex.data,\n stack: ex.stack\n }\n });\n }\n try {\n await this.respond({\n ...event.requestContext,\n messageId: event.body?.messageId,\n result\n });\n return result;\n } catch (ex) {\n return this.response.error({\n message: \"Failed to respond to the request.\",\n error: {\n message: ex.message,\n code: ex.code,\n data: {\n ...ex.data,\n result\n },\n stack: ex.stack\n }\n });\n }\n }\n\n private getRoutePlugins(route: WebsocketsEventRoute | string): WebsocketsRoutePlugin[] {\n const plugins = this.context.plugins\n .byType<WebsocketsRoutePlugin>(WebsocketsRoutePlugin.type)\n .filter(plugin => {\n return plugin.route === route;\n });\n if (plugins.length === 0) {\n throw new WebinyError(\n `There are no plugins for the route: ${route}.`,\n \"NO_ROUTE_PLUGINS\",\n {\n route\n }\n );\n }\n return plugins;\n }\n\n private async executeRoute(event: IWebsocketsEvent): Promise<IWebsocketsRunnerResponse> {\n /**\n * We will always fetch plugins in reverse order, so that users can override our default ones if necessary.\n */\n const plugins = this.getRoutePlugins(event.requestContext.routeKey).reverse();\n\n const getTenant = () => {\n const tenant = this.context.tenancy.getCurrentTenant();\n return tenant?.id || null;\n };\n const getLocale = (): string | null => {\n const locale = this.context.i18n.getCurrentLocale(\"content\");\n return locale?.code || null;\n };\n\n const getIdentity = (): IWebsocketsIdentity | null => {\n const identity = this.context.security.getIdentity();\n return identity || null;\n };\n\n const action = middleware<MiddlewareParams, IWebsocketsRunnerResponse>(\n plugins.map(plugin => {\n return async (params, next) => {\n return plugin.run({\n registry: params.registry,\n event: params.event,\n context: params.context,\n getTenant,\n getLocale,\n getIdentity,\n response: this.response,\n next\n });\n };\n })\n );\n\n const result = await action({\n event,\n registry: this.registry,\n context: this.context\n });\n if (result) {\n return result;\n }\n const message = \"No response from the route action.\";\n return this.response.error({\n message,\n error: {\n message,\n code: \"NO_RESPONSE\"\n },\n statusCode: 404\n });\n }\n\n private async respond(params: IWebsocketsRunnerRespondParams): Promise<void> {\n const { connectionId, domainName, stage, eventType, result, messageId } = params;\n if (eventType !== WebsocketsEventRequestContextEventType.message) {\n return;\n } else if (!connectionId || !domainName || !stage) {\n const message = \"No connectionId, domainName or stage.\";\n const data = {\n connectionId,\n domainName,\n stage\n };\n console.error(message, JSON.stringify(data));\n throw new WebinyError(message, \"GENERAL_ERROR\", data);\n }\n const connection: IWebsocketsTransportSendConnection = {\n connectionId,\n domainName,\n stage\n };\n\n const dataToSend = {\n ...result,\n messageId\n };\n await this.context.websockets.sendToConnections([connection], dataToSend);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["WebinyError","WebsocketsEventRequestContextEventType","WebsocketsRoutePlugin","middleware","WebsocketsRunner","constructor","context","registry","validator","response","run","input","event","validate","ex","result","error","message","code","data","stack","connectionId","domainName","stage","eventType","requestContext","messageId","body","JSON","stringify","json","parse","respond","executeRoute","routeKey","getRoutePlugins","route","plugins","byType","type","filter","plugin","length","reverse","getTenant","tenant","tenancy","getCurrentTenant","id","getIdentity","identity","security","action","map","params","next","statusCode","console","connection","dataToSend","websockets","sendToConnections"],"sources":["WebsocketsRunner.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport type {\n IWebsocketsEvent,\n IWebsocketsEventData,\n IWebsocketsEventRequestContext,\n IWebsocketsIncomingEvent,\n WebsocketsEventRoute\n} from \"~/handler/types.js\";\nimport { WebsocketsEventRequestContextEventType } from \"~/handler/types.js\";\nimport type { Context } from \"~/types.js\";\nimport type { IWebsocketsEventValidator } from \"~/validator/index.js\";\nimport type {\n IWebsocketsRunner,\n IWebsocketsRunnerResponse\n} from \"./abstractions/IWebsocketsRunner.js\";\nimport type { IWebsocketsRoutePluginCallableParams } from \"~/plugins/index.js\";\nimport { WebsocketsRoutePlugin } from \"~/plugins/index.js\";\nimport { middleware } from \"~/utils/middleware.js\";\nimport type { IWebsocketsConnectionRegistry } from \"~/registry/index.js\";\nimport type {\n IWebsocketsResponse,\n IWebsocketsResponseErrorResult,\n IWebsocketsResponseOkResult\n} from \"~/response/index.js\";\nimport type { IWebsocketsTransportSendConnection } from \"~/transport/index.js\";\nimport type { IWebsocketsIdentity } from \"~/context/index.js\";\n\ntype MiddlewareParams<C extends Context = Context> = Pick<\n IWebsocketsRoutePluginCallableParams<C>,\n \"context\" | \"event\" | \"registry\"\n>;\n\ninterface IWebsocketsRunnerRespondParams\n extends Pick<\n IWebsocketsEventRequestContext,\n \"connectionId\" | \"domainName\" | \"stage\" | \"eventType\"\n > {\n messageId?: string;\n result: IWebsocketsResponseOkResult | IWebsocketsResponseErrorResult;\n}\n\nexport class WebsocketsRunner implements IWebsocketsRunner {\n private readonly context: Context;\n private readonly registry: IWebsocketsConnectionRegistry;\n private readonly validator: IWebsocketsEventValidator;\n private readonly response: IWebsocketsResponse;\n\n public constructor(\n context: Context,\n registry: IWebsocketsConnectionRegistry,\n validator: IWebsocketsEventValidator,\n response: IWebsocketsResponse\n ) {\n this.context = context;\n this.registry = registry;\n this.validator = validator;\n this.response = response;\n }\n\n public async run<T extends IWebsocketsEventData = IWebsocketsEventData>(\n input: IWebsocketsIncomingEvent\n ): Promise<IWebsocketsRunnerResponse> {\n let event: IWebsocketsEvent<T> | undefined;\n try {\n event = await this.validator.validate<T>(input);\n } catch (ex) {\n const result = this.response.error({\n message: \"Validation failed.\",\n error: {\n message: ex.message,\n code: ex.code,\n data: ex.data,\n stack: ex.stack\n }\n });\n\n const { connectionId, domainName, stage, eventType } = input.requestContext || {};\n let messageId: string | undefined;\n try {\n const body =\n typeof input.body === \"string\" ? input.body : JSON.stringify(input.body || {});\n const json = JSON.parse(body);\n messageId = json.messageId;\n } catch {\n // Do nothing\n }\n if (!connectionId || !stage || !domainName || !eventType) {\n return result;\n }\n\n await this.respond({\n connectionId,\n domainName,\n stage,\n eventType,\n messageId,\n result\n });\n return result;\n }\n\n let result: IWebsocketsResponseOkResult | IWebsocketsResponseErrorResult;\n try {\n result = await this.executeRoute(event);\n } catch (ex) {\n result = this.response.error({\n message: `Route \"${event.requestContext.routeKey}\" action failed.`,\n error: {\n message: ex.message,\n code: ex.code,\n data: ex.data,\n stack: ex.stack\n }\n });\n }\n try {\n await this.respond({\n ...event.requestContext,\n messageId: event.body?.messageId,\n result\n });\n return result;\n } catch (ex) {\n return this.response.error({\n message: \"Failed to respond to the request.\",\n error: {\n message: ex.message,\n code: ex.code,\n data: {\n ...ex.data,\n result\n },\n stack: ex.stack\n }\n });\n }\n }\n\n private getRoutePlugins(route: WebsocketsEventRoute | string): WebsocketsRoutePlugin[] {\n const plugins = this.context.plugins\n .byType<WebsocketsRoutePlugin>(WebsocketsRoutePlugin.type)\n .filter(plugin => {\n return plugin.route === route;\n });\n if (plugins.length === 0) {\n throw new WebinyError(\n `There are no plugins for the route: ${route}.`,\n \"NO_ROUTE_PLUGINS\",\n {\n route\n }\n );\n }\n return plugins;\n }\n\n private async executeRoute(event: IWebsocketsEvent): Promise<IWebsocketsRunnerResponse> {\n /**\n * We will always fetch plugins in reverse order, so that users can override our default ones if necessary.\n */\n const plugins = this.getRoutePlugins(event.requestContext.routeKey).reverse();\n\n const getTenant = () => {\n const tenant = this.context.tenancy.getCurrentTenant();\n return tenant?.id || null;\n };\n\n const getIdentity = (): IWebsocketsIdentity | null => {\n const identity = this.context.security.getIdentity();\n return identity || null;\n };\n\n const action = middleware<MiddlewareParams, IWebsocketsRunnerResponse>(\n plugins.map(plugin => {\n return async (params, next) => {\n return plugin.run({\n registry: params.registry,\n event: params.event,\n context: params.context,\n getTenant,\n getIdentity,\n response: this.response,\n next\n });\n };\n })\n );\n\n const result = await action({\n event,\n registry: this.registry,\n context: this.context\n });\n if (result) {\n return result;\n }\n const message = \"No response from the route action.\";\n return this.response.error({\n message,\n error: {\n message,\n code: \"NO_RESPONSE\"\n },\n statusCode: 404\n });\n }\n\n private async respond(params: IWebsocketsRunnerRespondParams): Promise<void> {\n const { connectionId, domainName, stage, eventType, result, messageId } = params;\n if (eventType !== WebsocketsEventRequestContextEventType.message) {\n return;\n } else if (!connectionId || !domainName || !stage) {\n const message = \"No connectionId, domainName or stage.\";\n const data = {\n connectionId,\n domainName,\n stage\n };\n console.error(message, JSON.stringify(data));\n throw new WebinyError(message, \"GENERAL_ERROR\", data);\n }\n const connection: IWebsocketsTransportSendConnection = {\n connectionId,\n domainName,\n stage\n };\n\n const dataToSend = {\n ...result,\n messageId\n };\n await this.context.websockets.sendToConnections([connection], dataToSend);\n }\n}\n"],"mappings":"AAAA,OAAOA,WAAW,MAAM,eAAe;AAQvC,SAASC,sCAAsC;AAQ/C,SAASC,qBAAqB;AAC9B,SAASC,UAAU;AAwBnB,OAAO,MAAMC,gBAAgB,CAA8B;EAMhDC,WAAWA,CACdC,OAAgB,EAChBC,QAAuC,EACvCC,SAAoC,EACpCC,QAA6B,EAC/B;IACE,IAAI,CAACH,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,SAAS,GAAGA,SAAS;IAC1B,IAAI,CAACC,QAAQ,GAAGA,QAAQ;EAC5B;EAEA,MAAaC,GAAGA,CACZC,KAA+B,EACG;IAClC,IAAIC,KAAsC;IAC1C,IAAI;MACAA,KAAK,GAAG,MAAM,IAAI,CAACJ,SAAS,CAACK,QAAQ,CAAIF,KAAK,CAAC;IACnD,CAAC,CAAC,OAAOG,EAAE,EAAE;MACT,MAAMC,MAAM,GAAG,IAAI,CAACN,QAAQ,CAACO,KAAK,CAAC;QAC/BC,OAAO,EAAE,oBAAoB;QAC7BD,KAAK,EAAE;UACHC,OAAO,EAAEH,EAAE,CAACG,OAAO;UACnBC,IAAI,EAAEJ,EAAE,CAACI,IAAI;UACbC,IAAI,EAAEL,EAAE,CAACK,IAAI;UACbC,KAAK,EAAEN,EAAE,CAACM;QACd;MACJ,CAAC,CAAC;MAEF,MAAM;QAAEC,YAAY;QAAEC,UAAU;QAAEC,KAAK;QAAEC;MAAU,CAAC,GAAGb,KAAK,CAACc,cAAc,IAAI,CAAC,CAAC;MACjF,IAAIC,SAA6B;MACjC,IAAI;QACA,MAAMC,IAAI,GACN,OAAOhB,KAAK,CAACgB,IAAI,KAAK,QAAQ,GAAGhB,KAAK,CAACgB,IAAI,GAAGC,IAAI,CAACC,SAAS,CAAClB,KAAK,CAACgB,IAAI,IAAI,CAAC,CAAC,CAAC;QAClF,MAAMG,IAAI,GAAGF,IAAI,CAACG,KAAK,CAACJ,IAAI,CAAC;QAC7BD,SAAS,GAAGI,IAAI,CAACJ,SAAS;MAC9B,CAAC,CAAC,MAAM;QACJ;MAAA;MAEJ,IAAI,CAACL,YAAY,IAAI,CAACE,KAAK,IAAI,CAACD,UAAU,IAAI,CAACE,SAAS,EAAE;QACtD,OAAOT,MAAM;MACjB;MAEA,MAAM,IAAI,CAACiB,OAAO,CAAC;QACfX,YAAY;QACZC,UAAU;QACVC,KAAK;QACLC,SAAS;QACTE,SAAS;QACTX;MACJ,CAAC,CAAC;MACF,OAAOA,MAAM;IACjB;IAEA,IAAIA,MAAoE;IACxE,IAAI;MACAA,MAAM,GAAG,MAAM,IAAI,CAACkB,YAAY,CAACrB,KAAK,CAAC;IAC3C,CAAC,CAAC,OAAOE,EAAE,EAAE;MACTC,MAAM,GAAG,IAAI,CAACN,QAAQ,CAACO,KAAK,CAAC;QACzBC,OAAO,EAAE,UAAUL,KAAK,CAACa,cAAc,CAACS,QAAQ,kBAAkB;QAClElB,KAAK,EAAE;UACHC,OAAO,EAAEH,EAAE,CAACG,OAAO;UACnBC,IAAI,EAAEJ,EAAE,CAACI,IAAI;UACbC,IAAI,EAAEL,EAAE,CAACK,IAAI;UACbC,KAAK,EAAEN,EAAE,CAACM;QACd;MACJ,CAAC,CAAC;IACN;IACA,IAAI;MACA,MAAM,IAAI,CAACY,OAAO,CAAC;QACf,GAAGpB,KAAK,CAACa,cAAc;QACvBC,SAAS,EAAEd,KAAK,CAACe,IAAI,EAAED,SAAS;QAChCX;MACJ,CAAC,CAAC;MACF,OAAOA,MAAM;IACjB,CAAC,CAAC,OAAOD,EAAE,EAAE;MACT,OAAO,IAAI,CAACL,QAAQ,CAACO,KAAK,CAAC;QACvBC,OAAO,EAAE,mCAAmC;QAC5CD,KAAK,EAAE;UACHC,OAAO,EAAEH,EAAE,CAACG,OAAO;UACnBC,IAAI,EAAEJ,EAAE,CAACI,IAAI;UACbC,IAAI,EAAE;YACF,GAAGL,EAAE,CAACK,IAAI;YACVJ;UACJ,CAAC;UACDK,KAAK,EAAEN,EAAE,CAACM;QACd;MACJ,CAAC,CAAC;IACN;EACJ;EAEQe,eAAeA,CAACC,KAAoC,EAA2B;IACnF,MAAMC,OAAO,GAAG,IAAI,CAAC/B,OAAO,CAAC+B,OAAO,CAC/BC,MAAM,CAAwBpC,qBAAqB,CAACqC,IAAI,CAAC,CACzDC,MAAM,CAACC,MAAM,IAAI;MACd,OAAOA,MAAM,CAACL,KAAK,KAAKA,KAAK;IACjC,CAAC,CAAC;IACN,IAAIC,OAAO,CAACK,MAAM,KAAK,CAAC,EAAE;MACtB,MAAM,IAAI1C,WAAW,CACjB,uCAAuCoC,KAAK,GAAG,EAC/C,kBAAkB,EAClB;QACIA;MACJ,CACJ,CAAC;IACL;IACA,OAAOC,OAAO;EAClB;EAEA,MAAcJ,YAAYA,CAACrB,KAAuB,EAAsC;IACpF;AACR;AACA;IACQ,MAAMyB,OAAO,GAAG,IAAI,CAACF,eAAe,CAACvB,KAAK,CAACa,cAAc,CAACS,QAAQ,CAAC,CAACS,OAAO,CAAC,CAAC;IAE7E,MAAMC,SAAS,GAAGA,CAAA,KAAM;MACpB,MAAMC,MAAM,GAAG,IAAI,CAACvC,OAAO,CAACwC,OAAO,CAACC,gBAAgB,CAAC,CAAC;MACtD,OAAOF,MAAM,EAAEG,EAAE,IAAI,IAAI;IAC7B,CAAC;IAED,MAAMC,WAAW,GAAGA,CAAA,KAAkC;MAClD,MAAMC,QAAQ,GAAG,IAAI,CAAC5C,OAAO,CAAC6C,QAAQ,CAACF,WAAW,CAAC,CAAC;MACpD,OAAOC,QAAQ,IAAI,IAAI;IAC3B,CAAC;IAED,MAAME,MAAM,GAAGjD,UAAU,CACrBkC,OAAO,CAACgB,GAAG,CAACZ,MAAM,IAAI;MAClB,OAAO,OAAOa,MAAM,EAAEC,IAAI,KAAK;QAC3B,OAAOd,MAAM,CAAC/B,GAAG,CAAC;UACdH,QAAQ,EAAE+C,MAAM,CAAC/C,QAAQ;UACzBK,KAAK,EAAE0C,MAAM,CAAC1C,KAAK;UACnBN,OAAO,EAAEgD,MAAM,CAAChD,OAAO;UACvBsC,SAAS;UACTK,WAAW;UACXxC,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvB8C;QACJ,CAAC,CAAC;MACN,CAAC;IACL,CAAC,CACL,CAAC;IAED,MAAMxC,MAAM,GAAG,MAAMqC,MAAM,CAAC;MACxBxC,KAAK;MACLL,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBD,OAAO,EAAE,IAAI,CAACA;IAClB,CAAC,CAAC;IACF,IAAIS,MAAM,EAAE;MACR,OAAOA,MAAM;IACjB;IACA,MAAME,OAAO,GAAG,oCAAoC;IACpD,OAAO,IAAI,CAACR,QAAQ,CAACO,KAAK,CAAC;MACvBC,OAAO;MACPD,KAAK,EAAE;QACHC,OAAO;QACPC,IAAI,EAAE;MACV,CAAC;MACDsC,UAAU,EAAE;IAChB,CAAC,CAAC;EACN;EAEA,MAAcxB,OAAOA,CAACsB,MAAsC,EAAiB;IACzE,MAAM;MAAEjC,YAAY;MAAEC,UAAU;MAAEC,KAAK;MAAEC,SAAS;MAAET,MAAM;MAAEW;IAAU,CAAC,GAAG4B,MAAM;IAChF,IAAI9B,SAAS,KAAKvB,sCAAsC,CAACgB,OAAO,EAAE;MAC9D;IACJ,CAAC,MAAM,IAAI,CAACI,YAAY,IAAI,CAACC,UAAU,IAAI,CAACC,KAAK,EAAE;MAC/C,MAAMN,OAAO,GAAG,uCAAuC;MACvD,MAAME,IAAI,GAAG;QACTE,YAAY;QACZC,UAAU;QACVC;MACJ,CAAC;MACDkC,OAAO,CAACzC,KAAK,CAACC,OAAO,EAAEW,IAAI,CAACC,SAAS,CAACV,IAAI,CAAC,CAAC;MAC5C,MAAM,IAAInB,WAAW,CAACiB,OAAO,EAAE,eAAe,EAAEE,IAAI,CAAC;IACzD;IACA,MAAMuC,UAA8C,GAAG;MACnDrC,YAAY;MACZC,UAAU;MACVC;IACJ,CAAC;IAED,MAAMoC,UAAU,GAAG;MACf,GAAG5C,MAAM;MACTW;IACJ,CAAC;IACD,MAAM,IAAI,CAACpB,OAAO,CAACsD,UAAU,CAACC,iBAAiB,CAAC,CAACH,UAAU,CAAC,EAAEC,UAAU,CAAC;EAC7E;AACJ","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { IWebsocketsIncomingEvent } from "../../handler/types";
2
- import { GenericRecord } from "@webiny/api/types";
1
+ import type { IWebsocketsIncomingEvent } from "../../handler/types.js";
2
+ import type { GenericRecord } from "@webiny/api/types.js";
3
3
  export interface IWebsocketsResponseError {
4
4
  message: string;
5
5
  code: string;
@@ -1,7 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
1
+ export {};
6
2
 
7
3
  //# sourceMappingURL=IWebsocketsRunner.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["IWebsocketsRunner.ts"],"sourcesContent":["import { IWebsocketsIncomingEvent } from \"~/handler/types\";\nimport { GenericRecord } from \"@webiny/api/types\";\n\nexport interface IWebsocketsResponseError {\n message: string;\n code: string;\n data?: GenericRecord<string> | null;\n stack?: string;\n}\nexport interface IWebsocketsRunnerResponse {\n statusCode: number;\n message?: string;\n error?: IWebsocketsResponseError;\n}\n\nexport interface IWebsocketsRunner {\n run(params: IWebsocketsIncomingEvent): Promise<IWebsocketsRunnerResponse>;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["IWebsocketsRunner.ts"],"sourcesContent":["import type { IWebsocketsIncomingEvent } from \"~/handler/types.js\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\n\nexport interface IWebsocketsResponseError {\n message: string;\n code: string;\n data?: GenericRecord<string> | null;\n stack?: string;\n}\nexport interface IWebsocketsRunnerResponse {\n statusCode: number;\n message?: string;\n error?: IWebsocketsResponseError;\n}\n\nexport interface IWebsocketsRunner {\n run(params: IWebsocketsIncomingEvent): Promise<IWebsocketsRunnerResponse>;\n}\n"],"mappings":"","ignoreList":[]}
package/runner/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export * from "./abstractions/IWebsocketsRunner";
2
- export * from "./WebsocketsRunner";
1
+ export type * from "./abstractions/IWebsocketsRunner.js";
2
+ export * from "./WebsocketsRunner.js";
package/runner/index.js CHANGED
@@ -1,29 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- var _IWebsocketsRunner = require("./abstractions/IWebsocketsRunner");
7
- Object.keys(_IWebsocketsRunner).forEach(function (key) {
8
- if (key === "default" || key === "__esModule") return;
9
- if (key in exports && exports[key] === _IWebsocketsRunner[key]) return;
10
- Object.defineProperty(exports, key, {
11
- enumerable: true,
12
- get: function () {
13
- return _IWebsocketsRunner[key];
14
- }
15
- });
16
- });
17
- var _WebsocketsRunner = require("./WebsocketsRunner");
18
- Object.keys(_WebsocketsRunner).forEach(function (key) {
19
- if (key === "default" || key === "__esModule") return;
20
- if (key in exports && exports[key] === _WebsocketsRunner[key]) return;
21
- Object.defineProperty(exports, key, {
22
- enumerable: true,
23
- get: function () {
24
- return _WebsocketsRunner[key];
25
- }
26
- });
27
- });
1
+ export * from "./WebsocketsRunner.js";
28
2
 
29
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_IWebsocketsRunner","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_WebsocketsRunner"],"sources":["index.ts"],"sourcesContent":["export * from \"./abstractions/IWebsocketsRunner\";\nexport * from \"./WebsocketsRunner\";\n"],"mappings":";;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,kBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,kBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,kBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,iBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,iBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,iBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,iBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export type * from \"./abstractions/IWebsocketsRunner.js\";\nexport * from \"./WebsocketsRunner.js\";\n"],"mappings":"AACA","ignoreList":[]}
@@ -1 +1 @@
1
- export declare const createWebsocketsRouteConnectPlugin: () => import("../../plugins/WebsocketsRoutePlugin").WebsocketsRoutePlugin<import("../..").Context, import("..").IWebsocketsRunnerResponse, import("../../handler/types").IWebsocketsEventData>;
1
+ export declare const createWebsocketsRouteConnectPlugin: () => import("~/plugins/WebsocketsRoutePlugin.js").WebsocketsRoutePlugin<import("../..").Context, import("..").IWebsocketsRunnerResponse, import("~/handler/types.js").IWebsocketsEventData>;
@@ -1,48 +1,39 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createWebsocketsRouteConnectPlugin = void 0;
7
- var _types = require("../../handler/types");
8
- var _WebsocketsRoutePlugin = require("../../plugins/WebsocketsRoutePlugin");
1
+ import { WebsocketsEventRoute } from "../../handler/types.js";
2
+ import { createWebsocketsRoutePlugin } from "../../plugins/WebsocketsRoutePlugin.js";
9
3
  const getConnectedOn = connectedAt => {
10
4
  if (!connectedAt) {
11
5
  return new Date().toISOString();
12
6
  }
13
7
  return new Date(connectedAt).toISOString();
14
8
  };
15
- const createWebsocketsRouteConnectPlugin = () => {
16
- const plugin = (0, _WebsocketsRoutePlugin.createWebsocketsRoutePlugin)(_types.WebsocketsEventRoute.connect, async params => {
9
+ export const createWebsocketsRouteConnectPlugin = () => {
10
+ const plugin = createWebsocketsRoutePlugin(WebsocketsEventRoute.connect, async params => {
17
11
  const {
18
12
  registry,
19
13
  event,
20
14
  response,
21
15
  getTenant,
22
- getLocale,
23
16
  getIdentity
24
17
  } = params;
25
18
  const tenant = getTenant();
26
- const locale = getLocale();
27
19
  const identity = getIdentity();
28
20
  if (!tenant) {
29
21
  return response.error({
30
22
  message: "Missing tenant."
31
23
  });
32
- } else if (!locale) {
33
- return response.error({
34
- message: "Missing locale."
35
- });
36
24
  } else if (!identity) {
37
25
  return response.error({
38
26
  message: "Missing identity."
39
27
  });
40
28
  }
41
29
  await registry.register({
42
- identity,
30
+ identity: {
31
+ id: identity.id,
32
+ displayName: identity.displayName,
33
+ type: identity.type
34
+ },
43
35
  connectionId: event.requestContext.connectionId,
44
36
  tenant,
45
- locale,
46
37
  domainName: event.requestContext.domainName,
47
38
  stage: event.requestContext.stage,
48
39
  connectedOn: getConnectedOn(event.requestContext.connectedAt)
@@ -52,6 +43,5 @@ const createWebsocketsRouteConnectPlugin = () => {
52
43
  plugin.name = "websockets.route.connect.default";
53
44
  return plugin;
54
45
  };
55
- exports.createWebsocketsRouteConnectPlugin = createWebsocketsRouteConnectPlugin;
56
46
 
57
47
  //# sourceMappingURL=connect.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_types","require","_WebsocketsRoutePlugin","getConnectedOn","connectedAt","Date","toISOString","createWebsocketsRouteConnectPlugin","plugin","createWebsocketsRoutePlugin","WebsocketsEventRoute","connect","params","registry","event","response","getTenant","getLocale","getIdentity","tenant","locale","identity","error","message","register","connectionId","requestContext","domainName","stage","connectedOn","ok","name","exports"],"sources":["connect.ts"],"sourcesContent":["import { WebsocketsEventRoute } from \"~/handler/types\";\nimport { createWebsocketsRoutePlugin } from \"~/plugins/WebsocketsRoutePlugin\";\n\nconst getConnectedOn = (connectedAt?: number) => {\n if (!connectedAt) {\n return new Date().toISOString();\n }\n return new Date(connectedAt).toISOString();\n};\n\nexport const createWebsocketsRouteConnectPlugin = () => {\n const plugin = createWebsocketsRoutePlugin(WebsocketsEventRoute.connect, async params => {\n const { registry, event, response, getTenant, getLocale, getIdentity } = params;\n\n const tenant = getTenant();\n const locale = getLocale();\n const identity = getIdentity();\n if (!tenant) {\n return response.error({\n message: \"Missing tenant.\"\n });\n } else if (!locale) {\n return response.error({\n message: \"Missing locale.\"\n });\n } else if (!identity) {\n return response.error({\n message: \"Missing identity.\"\n });\n }\n\n await registry.register({\n identity,\n connectionId: event.requestContext.connectionId,\n tenant,\n locale,\n domainName: event.requestContext.domainName,\n stage: event.requestContext.stage,\n connectedOn: getConnectedOn(event.requestContext.connectedAt)\n });\n\n return response.ok();\n });\n plugin.name = \"websockets.route.connect.default\";\n return plugin;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AAEA,MAAME,cAAc,GAAIC,WAAoB,IAAK;EAC7C,IAAI,CAACA,WAAW,EAAE;IACd,OAAO,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;EACnC;EACA,OAAO,IAAID,IAAI,CAACD,WAAW,CAAC,CAACE,WAAW,CAAC,CAAC;AAC9C,CAAC;AAEM,MAAMC,kCAAkC,GAAGA,CAAA,KAAM;EACpD,MAAMC,MAAM,GAAG,IAAAC,kDAA2B,EAACC,2BAAoB,CAACC,OAAO,EAAE,MAAMC,MAAM,IAAI;IACrF,MAAM;MAAEC,QAAQ;MAAEC,KAAK;MAAEC,QAAQ;MAAEC,SAAS;MAAEC,SAAS;MAAEC;IAAY,CAAC,GAAGN,MAAM;IAE/E,MAAMO,MAAM,GAAGH,SAAS,CAAC,CAAC;IAC1B,MAAMI,MAAM,GAAGH,SAAS,CAAC,CAAC;IAC1B,MAAMI,QAAQ,GAAGH,WAAW,CAAC,CAAC;IAC9B,IAAI,CAACC,MAAM,EAAE;MACT,OAAOJ,QAAQ,CAACO,KAAK,CAAC;QAClBC,OAAO,EAAE;MACb,CAAC,CAAC;IACN,CAAC,MAAM,IAAI,CAACH,MAAM,EAAE;MAChB,OAAOL,QAAQ,CAACO,KAAK,CAAC;QAClBC,OAAO,EAAE;MACb,CAAC,CAAC;IACN,CAAC,MAAM,IAAI,CAACF,QAAQ,EAAE;MAClB,OAAON,QAAQ,CAACO,KAAK,CAAC;QAClBC,OAAO,EAAE;MACb,CAAC,CAAC;IACN;IAEA,MAAMV,QAAQ,CAACW,QAAQ,CAAC;MACpBH,QAAQ;MACRI,YAAY,EAAEX,KAAK,CAACY,cAAc,CAACD,YAAY;MAC/CN,MAAM;MACNC,MAAM;MACNO,UAAU,EAAEb,KAAK,CAACY,cAAc,CAACC,UAAU;MAC3CC,KAAK,EAAEd,KAAK,CAACY,cAAc,CAACE,KAAK;MACjCC,WAAW,EAAE1B,cAAc,CAACW,KAAK,CAACY,cAAc,CAACtB,WAAW;IAChE,CAAC,CAAC;IAEF,OAAOW,QAAQ,CAACe,EAAE,CAAC,CAAC;EACxB,CAAC,CAAC;EACFtB,MAAM,CAACuB,IAAI,GAAG,kCAAkC;EAChD,OAAOvB,MAAM;AACjB,CAAC;AAACwB,OAAA,CAAAzB,kCAAA,GAAAA,kCAAA","ignoreList":[]}
1
+ {"version":3,"names":["WebsocketsEventRoute","createWebsocketsRoutePlugin","getConnectedOn","connectedAt","Date","toISOString","createWebsocketsRouteConnectPlugin","plugin","connect","params","registry","event","response","getTenant","getIdentity","tenant","identity","error","message","register","id","displayName","type","connectionId","requestContext","domainName","stage","connectedOn","ok","name"],"sources":["connect.ts"],"sourcesContent":["import { WebsocketsEventRoute } from \"~/handler/types.js\";\nimport { createWebsocketsRoutePlugin } from \"~/plugins/WebsocketsRoutePlugin.js\";\n\nconst getConnectedOn = (connectedAt?: number) => {\n if (!connectedAt) {\n return new Date().toISOString();\n }\n return new Date(connectedAt).toISOString();\n};\n\nexport const createWebsocketsRouteConnectPlugin = () => {\n const plugin = createWebsocketsRoutePlugin(WebsocketsEventRoute.connect, async params => {\n const { registry, event, response, getTenant, getIdentity } = params;\n\n const tenant = getTenant();\n const identity = getIdentity();\n if (!tenant) {\n return response.error({\n message: \"Missing tenant.\"\n });\n } else if (!identity) {\n return response.error({\n message: \"Missing identity.\"\n });\n }\n\n await registry.register({\n identity: {\n id: identity.id,\n displayName: identity.displayName,\n type: identity.type\n },\n connectionId: event.requestContext.connectionId,\n tenant,\n domainName: event.requestContext.domainName,\n stage: event.requestContext.stage,\n connectedOn: getConnectedOn(event.requestContext.connectedAt)\n });\n\n return response.ok();\n });\n plugin.name = \"websockets.route.connect.default\";\n return plugin;\n};\n"],"mappings":"AAAA,SAASA,oBAAoB;AAC7B,SAASC,2BAA2B;AAEpC,MAAMC,cAAc,GAAIC,WAAoB,IAAK;EAC7C,IAAI,CAACA,WAAW,EAAE;IACd,OAAO,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;EACnC;EACA,OAAO,IAAID,IAAI,CAACD,WAAW,CAAC,CAACE,WAAW,CAAC,CAAC;AAC9C,CAAC;AAED,OAAO,MAAMC,kCAAkC,GAAGA,CAAA,KAAM;EACpD,MAAMC,MAAM,GAAGN,2BAA2B,CAACD,oBAAoB,CAACQ,OAAO,EAAE,MAAMC,MAAM,IAAI;IACrF,MAAM;MAAEC,QAAQ;MAAEC,KAAK;MAAEC,QAAQ;MAAEC,SAAS;MAAEC;IAAY,CAAC,GAAGL,MAAM;IAEpE,MAAMM,MAAM,GAAGF,SAAS,CAAC,CAAC;IAC1B,MAAMG,QAAQ,GAAGF,WAAW,CAAC,CAAC;IAC9B,IAAI,CAACC,MAAM,EAAE;MACT,OAAOH,QAAQ,CAACK,KAAK,CAAC;QAClBC,OAAO,EAAE;MACb,CAAC,CAAC;IACN,CAAC,MAAM,IAAI,CAACF,QAAQ,EAAE;MAClB,OAAOJ,QAAQ,CAACK,KAAK,CAAC;QAClBC,OAAO,EAAE;MACb,CAAC,CAAC;IACN;IAEA,MAAMR,QAAQ,CAACS,QAAQ,CAAC;MACpBH,QAAQ,EAAE;QACNI,EAAE,EAAEJ,QAAQ,CAACI,EAAE;QACfC,WAAW,EAAEL,QAAQ,CAACK,WAAW;QACjCC,IAAI,EAAEN,QAAQ,CAACM;MACnB,CAAC;MACDC,YAAY,EAAEZ,KAAK,CAACa,cAAc,CAACD,YAAY;MAC/CR,MAAM;MACNU,UAAU,EAAEd,KAAK,CAACa,cAAc,CAACC,UAAU;MAC3CC,KAAK,EAAEf,KAAK,CAACa,cAAc,CAACE,KAAK;MACjCC,WAAW,EAAEzB,cAAc,CAACS,KAAK,CAACa,cAAc,CAACrB,WAAW;IAChE,CAAC,CAAC;IAEF,OAAOS,QAAQ,CAACgB,EAAE,CAAC,CAAC;EACxB,CAAC,CAAC;EACFrB,MAAM,CAACsB,IAAI,GAAG,kCAAkC;EAChD,OAAOtB,MAAM;AACjB,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- export declare const createWebsocketsRouteDefaultPlugin: () => import("../../plugins/WebsocketsRoutePlugin").WebsocketsRoutePlugin<import("../..").Context, import("..").IWebsocketsRunnerResponse, import("../../handler/types").IWebsocketsEventData>;
1
+ export declare const createWebsocketsRouteDefaultPlugin: () => import("~/plugins/WebsocketsRoutePlugin.js").WebsocketsRoutePlugin<import("../..").Context, import("..").IWebsocketsRunnerResponse, import("~/handler/types.js").IWebsocketsEventData>;
@@ -1,30 +1,18 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createWebsocketsRouteDefaultPlugin = void 0;
7
- var _types = require("../../handler/types");
8
- var _WebsocketsRoutePlugin = require("../../plugins/WebsocketsRoutePlugin");
9
- const createWebsocketsRouteDefaultPlugin = () => {
10
- const plugin = (0, _WebsocketsRoutePlugin.createWebsocketsRoutePlugin)(_types.WebsocketsEventRoute.default, async params => {
1
+ import { WebsocketsEventRoute } from "../../handler/types.js";
2
+ import { createWebsocketsRoutePlugin } from "../../plugins/WebsocketsRoutePlugin.js";
3
+ export const createWebsocketsRouteDefaultPlugin = () => {
4
+ const plugin = createWebsocketsRoutePlugin(WebsocketsEventRoute.default, async params => {
11
5
  const {
12
6
  response,
13
7
  getIdentity,
14
- getLocale,
15
8
  getTenant
16
9
  } = params;
17
10
  const tenant = getTenant();
18
- const locale = getLocale();
19
11
  const identity = getIdentity();
20
12
  if (!tenant) {
21
13
  return response.error({
22
14
  message: "Missing tenant."
23
15
  });
24
- } else if (!locale) {
25
- return response.error({
26
- message: "Missing locale."
27
- });
28
16
  } else if (!identity) {
29
17
  return response.error({
30
18
  message: "Missing identity."
@@ -35,6 +23,5 @@ const createWebsocketsRouteDefaultPlugin = () => {
35
23
  plugin.name = "websockets.route.default.default";
36
24
  return plugin;
37
25
  };
38
- exports.createWebsocketsRouteDefaultPlugin = createWebsocketsRouteDefaultPlugin;
39
26
 
40
27
  //# sourceMappingURL=default.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_types","require","_WebsocketsRoutePlugin","createWebsocketsRouteDefaultPlugin","plugin","createWebsocketsRoutePlugin","WebsocketsEventRoute","default","params","response","getIdentity","getLocale","getTenant","tenant","locale","identity","error","message","ok","name","exports"],"sources":["default.ts"],"sourcesContent":["import { WebsocketsEventRoute } from \"~/handler/types\";\nimport { createWebsocketsRoutePlugin } from \"~/plugins/WebsocketsRoutePlugin\";\n\nexport const createWebsocketsRouteDefaultPlugin = () => {\n const plugin = createWebsocketsRoutePlugin(WebsocketsEventRoute.default, async params => {\n const { response, getIdentity, getLocale, getTenant } = params;\n const tenant = getTenant();\n const locale = getLocale();\n const identity = getIdentity();\n if (!tenant) {\n return response.error({\n message: \"Missing tenant.\"\n });\n } else if (!locale) {\n return response.error({\n message: \"Missing locale.\"\n });\n } else if (!identity) {\n return response.error({\n message: \"Missing identity.\"\n });\n }\n\n return response.ok();\n });\n\n plugin.name = \"websockets.route.default.default\";\n return plugin;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AAEO,MAAME,kCAAkC,GAAGA,CAAA,KAAM;EACpD,MAAMC,MAAM,GAAG,IAAAC,kDAA2B,EAACC,2BAAoB,CAACC,OAAO,EAAE,MAAMC,MAAM,IAAI;IACrF,MAAM;MAAEC,QAAQ;MAAEC,WAAW;MAAEC,SAAS;MAAEC;IAAU,CAAC,GAAGJ,MAAM;IAC9D,MAAMK,MAAM,GAAGD,SAAS,CAAC,CAAC;IAC1B,MAAME,MAAM,GAAGH,SAAS,CAAC,CAAC;IAC1B,MAAMI,QAAQ,GAAGL,WAAW,CAAC,CAAC;IAC9B,IAAI,CAACG,MAAM,EAAE;MACT,OAAOJ,QAAQ,CAACO,KAAK,CAAC;QAClBC,OAAO,EAAE;MACb,CAAC,CAAC;IACN,CAAC,MAAM,IAAI,CAACH,MAAM,EAAE;MAChB,OAAOL,QAAQ,CAACO,KAAK,CAAC;QAClBC,OAAO,EAAE;MACb,CAAC,CAAC;IACN,CAAC,MAAM,IAAI,CAACF,QAAQ,EAAE;MAClB,OAAON,QAAQ,CAACO,KAAK,CAAC;QAClBC,OAAO,EAAE;MACb,CAAC,CAAC;IACN;IAEA,OAAOR,QAAQ,CAACS,EAAE,CAAC,CAAC;EACxB,CAAC,CAAC;EAEFd,MAAM,CAACe,IAAI,GAAG,kCAAkC;EAChD,OAAOf,MAAM;AACjB,CAAC;AAACgB,OAAA,CAAAjB,kCAAA,GAAAA,kCAAA","ignoreList":[]}
1
+ {"version":3,"names":["WebsocketsEventRoute","createWebsocketsRoutePlugin","createWebsocketsRouteDefaultPlugin","plugin","default","params","response","getIdentity","getTenant","tenant","identity","error","message","ok","name"],"sources":["default.ts"],"sourcesContent":["import { WebsocketsEventRoute } from \"~/handler/types.js\";\nimport { createWebsocketsRoutePlugin } from \"~/plugins/WebsocketsRoutePlugin.js\";\n\nexport const createWebsocketsRouteDefaultPlugin = () => {\n const plugin = createWebsocketsRoutePlugin(WebsocketsEventRoute.default, async params => {\n const { response, getIdentity, getTenant } = params;\n const tenant = getTenant();\n const identity = getIdentity();\n if (!tenant) {\n return response.error({\n message: \"Missing tenant.\"\n });\n } else if (!identity) {\n return response.error({\n message: \"Missing identity.\"\n });\n }\n\n return response.ok();\n });\n\n plugin.name = \"websockets.route.default.default\";\n return plugin;\n};\n"],"mappings":"AAAA,SAASA,oBAAoB;AAC7B,SAASC,2BAA2B;AAEpC,OAAO,MAAMC,kCAAkC,GAAGA,CAAA,KAAM;EACpD,MAAMC,MAAM,GAAGF,2BAA2B,CAACD,oBAAoB,CAACI,OAAO,EAAE,MAAMC,MAAM,IAAI;IACrF,MAAM;MAAEC,QAAQ;MAAEC,WAAW;MAAEC;IAAU,CAAC,GAAGH,MAAM;IACnD,MAAMI,MAAM,GAAGD,SAAS,CAAC,CAAC;IAC1B,MAAME,QAAQ,GAAGH,WAAW,CAAC,CAAC;IAC9B,IAAI,CAACE,MAAM,EAAE;MACT,OAAOH,QAAQ,CAACK,KAAK,CAAC;QAClBC,OAAO,EAAE;MACb,CAAC,CAAC;IACN,CAAC,MAAM,IAAI,CAACF,QAAQ,EAAE;MAClB,OAAOJ,QAAQ,CAACK,KAAK,CAAC;QAClBC,OAAO,EAAE;MACb,CAAC,CAAC;IACN;IAEA,OAAON,QAAQ,CAACO,EAAE,CAAC,CAAC;EACxB,CAAC,CAAC;EAEFV,MAAM,CAACW,IAAI,GAAG,kCAAkC;EAChD,OAAOX,MAAM;AACjB,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- export declare const createWebsocketsRouteDisconnectPlugin: () => import("../../plugins/WebsocketsRoutePlugin").WebsocketsRoutePlugin<import("../..").Context, import("..").IWebsocketsRunnerResponse, import("../../handler/types").IWebsocketsEventData>;
1
+ export declare const createWebsocketsRouteDisconnectPlugin: () => import("~/plugins/WebsocketsRoutePlugin.js").WebsocketsRoutePlugin<import("../..").Context, import("..").IWebsocketsRunnerResponse, import("~/handler/types.js").IWebsocketsEventData>;
@@ -1,13 +1,7 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createWebsocketsRouteDisconnectPlugin = void 0;
7
- var _types = require("../../handler/types");
8
- var _WebsocketsRoutePlugin = require("../../plugins/WebsocketsRoutePlugin");
9
- const createWebsocketsRouteDisconnectPlugin = () => {
10
- const plugin = (0, _WebsocketsRoutePlugin.createWebsocketsRoutePlugin)(_types.WebsocketsEventRoute.disconnect, async params => {
1
+ import { WebsocketsEventRoute } from "../../handler/types.js";
2
+ import { createWebsocketsRoutePlugin } from "../../plugins/WebsocketsRoutePlugin.js";
3
+ export const createWebsocketsRouteDisconnectPlugin = () => {
4
+ const plugin = createWebsocketsRoutePlugin(WebsocketsEventRoute.disconnect, async params => {
11
5
  const {
12
6
  registry,
13
7
  event,
@@ -21,6 +15,5 @@ const createWebsocketsRouteDisconnectPlugin = () => {
21
15
  plugin.name = "websockets.route.disconnect.default";
22
16
  return plugin;
23
17
  };
24
- exports.createWebsocketsRouteDisconnectPlugin = createWebsocketsRouteDisconnectPlugin;
25
18
 
26
19
  //# sourceMappingURL=disconnect.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_types","require","_WebsocketsRoutePlugin","createWebsocketsRouteDisconnectPlugin","plugin","createWebsocketsRoutePlugin","WebsocketsEventRoute","disconnect","params","registry","event","response","unregister","connectionId","requestContext","ok","name","exports"],"sources":["disconnect.ts"],"sourcesContent":["import { WebsocketsEventRoute } from \"~/handler/types\";\nimport { createWebsocketsRoutePlugin } from \"~/plugins/WebsocketsRoutePlugin\";\n\nexport const createWebsocketsRouteDisconnectPlugin = () => {\n const plugin = createWebsocketsRoutePlugin(WebsocketsEventRoute.disconnect, async params => {\n const { registry, event, response } = params;\n await registry.unregister({\n connectionId: event.requestContext.connectionId\n });\n\n return response.ok();\n });\n plugin.name = \"websockets.route.disconnect.default\";\n return plugin;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AAEO,MAAME,qCAAqC,GAAGA,CAAA,KAAM;EACvD,MAAMC,MAAM,GAAG,IAAAC,kDAA2B,EAACC,2BAAoB,CAACC,UAAU,EAAE,MAAMC,MAAM,IAAI;IACxF,MAAM;MAAEC,QAAQ;MAAEC,KAAK;MAAEC;IAAS,CAAC,GAAGH,MAAM;IAC5C,MAAMC,QAAQ,CAACG,UAAU,CAAC;MACtBC,YAAY,EAAEH,KAAK,CAACI,cAAc,CAACD;IACvC,CAAC,CAAC;IAEF,OAAOF,QAAQ,CAACI,EAAE,CAAC,CAAC;EACxB,CAAC,CAAC;EACFX,MAAM,CAACY,IAAI,GAAG,qCAAqC;EACnD,OAAOZ,MAAM;AACjB,CAAC;AAACa,OAAA,CAAAd,qCAAA,GAAAA,qCAAA","ignoreList":[]}
1
+ {"version":3,"names":["WebsocketsEventRoute","createWebsocketsRoutePlugin","createWebsocketsRouteDisconnectPlugin","plugin","disconnect","params","registry","event","response","unregister","connectionId","requestContext","ok","name"],"sources":["disconnect.ts"],"sourcesContent":["import { WebsocketsEventRoute } from \"~/handler/types.js\";\nimport { createWebsocketsRoutePlugin } from \"~/plugins/WebsocketsRoutePlugin.js\";\n\nexport const createWebsocketsRouteDisconnectPlugin = () => {\n const plugin = createWebsocketsRoutePlugin(WebsocketsEventRoute.disconnect, async params => {\n const { registry, event, response } = params;\n await registry.unregister({\n connectionId: event.requestContext.connectionId\n });\n\n return response.ok();\n });\n plugin.name = \"websockets.route.disconnect.default\";\n return plugin;\n};\n"],"mappings":"AAAA,SAASA,oBAAoB;AAC7B,SAASC,2BAA2B;AAEpC,OAAO,MAAMC,qCAAqC,GAAGA,CAAA,KAAM;EACvD,MAAMC,MAAM,GAAGF,2BAA2B,CAACD,oBAAoB,CAACI,UAAU,EAAE,MAAMC,MAAM,IAAI;IACxF,MAAM;MAAEC,QAAQ;MAAEC,KAAK;MAAEC;IAAS,CAAC,GAAGH,MAAM;IAC5C,MAAMC,QAAQ,CAACG,UAAU,CAAC;MACtBC,YAAY,EAAEH,KAAK,CAACI,cAAc,CAACD;IACvC,CAAC,CAAC;IAEF,OAAOF,QAAQ,CAACI,EAAE,CAAC,CAAC;EACxB,CAAC,CAAC;EACFT,MAAM,CAACU,IAAI,GAAG,qCAAqC;EACnD,OAAOV,MAAM;AACjB,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- export declare const createWebsocketsRoutePlugins: () => import("../..").WebsocketsRoutePlugin<import("../..").Context, import("..").IWebsocketsRunnerResponse, import("../../handler/types").IWebsocketsEventData>[];
1
+ export declare const createWebsocketsRoutePlugins: () => import("../../index.js").WebsocketsRoutePlugin<import("../../types.js").Context, import("../index.js").IWebsocketsRunnerResponse, import("../../handler/types.js").IWebsocketsEventData>[];
@@ -1,15 +1,8 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createWebsocketsRoutePlugins = void 0;
7
- var _connect = require("./connect");
8
- var _default = require("./default");
9
- var _disconnect = require("./disconnect");
10
- const createWebsocketsRoutePlugins = () => {
11
- return [(0, _connect.createWebsocketsRouteConnectPlugin)(), (0, _disconnect.createWebsocketsRouteDisconnectPlugin)(), (0, _default.createWebsocketsRouteDefaultPlugin)()];
1
+ import { createWebsocketsRouteConnectPlugin } from "./connect.js";
2
+ import { createWebsocketsRouteDefaultPlugin } from "./default.js";
3
+ import { createWebsocketsRouteDisconnectPlugin } from "./disconnect.js";
4
+ export const createWebsocketsRoutePlugins = () => {
5
+ return [createWebsocketsRouteConnectPlugin(), createWebsocketsRouteDisconnectPlugin(), createWebsocketsRouteDefaultPlugin()];
12
6
  };
13
- exports.createWebsocketsRoutePlugins = createWebsocketsRoutePlugins;
14
7
 
15
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_connect","require","_default","_disconnect","createWebsocketsRoutePlugins","createWebsocketsRouteConnectPlugin","createWebsocketsRouteDisconnectPlugin","createWebsocketsRouteDefaultPlugin","exports"],"sources":["index.ts"],"sourcesContent":["import { createWebsocketsRouteConnectPlugin } from \"./connect\";\nimport { createWebsocketsRouteDefaultPlugin } from \"./default\";\nimport { createWebsocketsRouteDisconnectPlugin } from \"./disconnect\";\n\nexport const createWebsocketsRoutePlugins = () => {\n return [\n createWebsocketsRouteConnectPlugin(),\n createWebsocketsRouteDisconnectPlugin(),\n createWebsocketsRouteDefaultPlugin()\n ];\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AAEO,MAAMG,4BAA4B,GAAGA,CAAA,KAAM;EAC9C,OAAO,CACH,IAAAC,2CAAkC,EAAC,CAAC,EACpC,IAAAC,iDAAqC,EAAC,CAAC,EACvC,IAAAC,2CAAkC,EAAC,CAAC,CACvC;AACL,CAAC;AAACC,OAAA,CAAAJ,4BAAA,GAAAA,4BAAA","ignoreList":[]}
1
+ {"version":3,"names":["createWebsocketsRouteConnectPlugin","createWebsocketsRouteDefaultPlugin","createWebsocketsRouteDisconnectPlugin","createWebsocketsRoutePlugins"],"sources":["index.ts"],"sourcesContent":["import { createWebsocketsRouteConnectPlugin } from \"./connect.js\";\nimport { createWebsocketsRouteDefaultPlugin } from \"./default.js\";\nimport { createWebsocketsRouteDisconnectPlugin } from \"./disconnect.js\";\n\nexport const createWebsocketsRoutePlugins = () => {\n return [\n createWebsocketsRouteConnectPlugin(),\n createWebsocketsRouteDisconnectPlugin(),\n createWebsocketsRouteDefaultPlugin()\n ];\n};\n"],"mappings":"AAAA,SAASA,kCAAkC;AAC3C,SAASC,kCAAkC;AAC3C,SAASC,qCAAqC;AAE9C,OAAO,MAAMC,4BAA4B,GAAGA,CAAA,KAAM;EAC9C,OAAO,CACHH,kCAAkC,CAAC,CAAC,EACpCE,qCAAqC,CAAC,CAAC,EACvCD,kCAAkC,CAAC,CAAC,CACvC;AACL,CAAC","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { IWebsocketsTransport, IWebsocketsTransportDisconnectConnection, IWebsocketsTransportSendConnection, IWebsocketsTransportSendData } from "./abstractions/IWebsocketsTransport";
2
- import { GenericRecord } from "@webiny/api/types";
1
+ import type { IWebsocketsTransport, IWebsocketsTransportDisconnectConnection, IWebsocketsTransportSendConnection, IWebsocketsTransportSendData } from "./abstractions/IWebsocketsTransport.js";
2
+ import type { GenericRecord } from "@webiny/api/types.js";
3
3
  export declare class WebsocketsTransport implements IWebsocketsTransport {
4
4
  private readonly clients;
5
5
  send<T extends GenericRecord = GenericRecord>(connections: IWebsocketsTransportSendConnection[], data: IWebsocketsTransportSendData<T>): Promise<void>;
@@ -1,17 +1,11 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.WebsocketsTransport = void 0;
7
- var _clientApigatewaymanagementapi = require("@webiny/aws-sdk/client-apigatewaymanagementapi");
8
- class WebsocketsTransport {
1
+ import { ApiGatewayManagementApiClient, DeleteConnectionCommand, PostToConnectionCommand } from "@webiny/aws-sdk/client-apigatewaymanagementapi/index.js";
2
+ export class WebsocketsTransport {
9
3
  clients = new Map();
10
4
  async send(connections, data) {
11
5
  for (const connection of connections) {
12
6
  try {
13
7
  const client = this.getClient(connection);
14
- const command = new _clientApigatewaymanagementapi.PostToConnectionCommand({
8
+ const command = new PostToConnectionCommand({
15
9
  ConnectionId: connection.connectionId,
16
10
  Data: JSON.stringify(data)
17
11
  });
@@ -26,7 +20,7 @@ class WebsocketsTransport {
26
20
  for (const connection of connections) {
27
21
  try {
28
22
  const client = this.getClient(connection);
29
- const command = new _clientApigatewaymanagementapi.DeleteConnectionCommand({
23
+ const command = new DeleteConnectionCommand({
30
24
  ConnectionId: connection.connectionId
31
25
  });
32
26
  await client.send(command);
@@ -42,13 +36,12 @@ class WebsocketsTransport {
42
36
  if (client) {
43
37
  return client;
44
38
  }
45
- const newClient = new _clientApigatewaymanagementapi.ApiGatewayManagementApiClient({
39
+ const newClient = new ApiGatewayManagementApiClient({
46
40
  endpoint
47
41
  });
48
42
  this.clients.set(endpoint, newClient);
49
43
  return newClient;
50
44
  }
51
45
  }
52
- exports.WebsocketsTransport = WebsocketsTransport;
53
46
 
54
47
  //# sourceMappingURL=WebsocketsTransport.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_clientApigatewaymanagementapi","require","WebsocketsTransport","clients","Map","send","connections","data","connection","client","getClient","command","PostToConnectionCommand","ConnectionId","connectionId","Data","JSON","stringify","ex","console","error","log","disconnect","DeleteConnectionCommand","endpoint","domainName","stage","get","newClient","ApiGatewayManagementApiClient","set","exports"],"sources":["WebsocketsTransport.ts"],"sourcesContent":["import {\n ApiGatewayManagementApiClient,\n DeleteConnectionCommand,\n PostToConnectionCommand\n} from \"@webiny/aws-sdk/client-apigatewaymanagementapi\";\nimport {\n IWebsocketsTransport,\n IWebsocketsTransportDisconnectConnection,\n IWebsocketsTransportSendConnection,\n IWebsocketsTransportSendData\n} from \"./abstractions/IWebsocketsTransport\";\nimport { GenericRecord } from \"@webiny/api/types\";\n\nexport class WebsocketsTransport implements IWebsocketsTransport {\n private readonly clients = new Map<string, ApiGatewayManagementApiClient>();\n\n public async send<T extends GenericRecord = GenericRecord>(\n connections: IWebsocketsTransportSendConnection[],\n data: IWebsocketsTransportSendData<T>\n ): Promise<void> {\n for (const connection of connections) {\n try {\n const client = this.getClient(connection);\n\n const command = new PostToConnectionCommand({\n ConnectionId: connection.connectionId,\n Data: JSON.stringify(data)\n });\n await client.send(command);\n } catch (ex) {\n console.error(\n `Failed to send message to connection \"${connection.connectionId}\". Check logs for more information.`\n );\n console.log(ex);\n }\n }\n }\n\n public async disconnect(connections: IWebsocketsTransportDisconnectConnection[]) {\n for (const connection of connections) {\n try {\n const client = this.getClient(connection);\n const command = new DeleteConnectionCommand({\n ConnectionId: connection.connectionId\n });\n await client.send(command);\n } catch (ex) {\n console.error(\n `Failed to disconnect connection \"${connection.connectionId}\". Check logs for more information.`\n );\n console.log(ex);\n }\n }\n }\n\n private getClient(\n connection: IWebsocketsTransportSendConnection\n ): ApiGatewayManagementApiClient {\n const endpoint = `https://${connection.domainName}/${connection.stage}`;\n const client = this.clients.get(endpoint);\n if (client) {\n return client;\n }\n const newClient = new ApiGatewayManagementApiClient({\n endpoint\n });\n this.clients.set(endpoint, newClient);\n return newClient;\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,8BAAA,GAAAC,OAAA;AAaO,MAAMC,mBAAmB,CAAiC;EAC5CC,OAAO,GAAG,IAAIC,GAAG,CAAwC,CAAC;EAE3E,MAAaC,IAAIA,CACbC,WAAiD,EACjDC,IAAqC,EACxB;IACb,KAAK,MAAMC,UAAU,IAAIF,WAAW,EAAE;MAClC,IAAI;QACA,MAAMG,MAAM,GAAG,IAAI,CAACC,SAAS,CAACF,UAAU,CAAC;QAEzC,MAAMG,OAAO,GAAG,IAAIC,sDAAuB,CAAC;UACxCC,YAAY,EAAEL,UAAU,CAACM,YAAY;UACrCC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACV,IAAI;QAC7B,CAAC,CAAC;QACF,MAAME,MAAM,CAACJ,IAAI,CAACM,OAAO,CAAC;MAC9B,CAAC,CAAC,OAAOO,EAAE,EAAE;QACTC,OAAO,CAACC,KAAK,CACR,yCAAwCZ,UAAU,CAACM,YAAa,qCACrE,CAAC;QACDK,OAAO,CAACE,GAAG,CAACH,EAAE,CAAC;MACnB;IACJ;EACJ;EAEA,MAAaI,UAAUA,CAAChB,WAAuD,EAAE;IAC7E,KAAK,MAAME,UAAU,IAAIF,WAAW,EAAE;MAClC,IAAI;QACA,MAAMG,MAAM,GAAG,IAAI,CAACC,SAAS,CAACF,UAAU,CAAC;QACzC,MAAMG,OAAO,GAAG,IAAIY,sDAAuB,CAAC;UACxCV,YAAY,EAAEL,UAAU,CAACM;QAC7B,CAAC,CAAC;QACF,MAAML,MAAM,CAACJ,IAAI,CAACM,OAAO,CAAC;MAC9B,CAAC,CAAC,OAAOO,EAAE,EAAE;QACTC,OAAO,CAACC,KAAK,CACR,oCAAmCZ,UAAU,CAACM,YAAa,qCAChE,CAAC;QACDK,OAAO,CAACE,GAAG,CAACH,EAAE,CAAC;MACnB;IACJ;EACJ;EAEQR,SAASA,CACbF,UAA8C,EACjB;IAC7B,MAAMgB,QAAQ,GAAI,WAAUhB,UAAU,CAACiB,UAAW,IAAGjB,UAAU,CAACkB,KAAM,EAAC;IACvE,MAAMjB,MAAM,GAAG,IAAI,CAACN,OAAO,CAACwB,GAAG,CAACH,QAAQ,CAAC;IACzC,IAAIf,MAAM,EAAE;MACR,OAAOA,MAAM;IACjB;IACA,MAAMmB,SAAS,GAAG,IAAIC,4DAA6B,CAAC;MAChDL;IACJ,CAAC,CAAC;IACF,IAAI,CAACrB,OAAO,CAAC2B,GAAG,CAACN,QAAQ,EAAEI,SAAS,CAAC;IACrC,OAAOA,SAAS;EACpB;AACJ;AAACG,OAAA,CAAA7B,mBAAA,GAAAA,mBAAA","ignoreList":[]}
1
+ {"version":3,"names":["ApiGatewayManagementApiClient","DeleteConnectionCommand","PostToConnectionCommand","WebsocketsTransport","clients","Map","send","connections","data","connection","client","getClient","command","ConnectionId","connectionId","Data","JSON","stringify","ex","console","error","log","disconnect","endpoint","domainName","stage","get","newClient","set"],"sources":["WebsocketsTransport.ts"],"sourcesContent":["import {\n ApiGatewayManagementApiClient,\n DeleteConnectionCommand,\n PostToConnectionCommand\n} from \"@webiny/aws-sdk/client-apigatewaymanagementapi/index.js\";\nimport type {\n IWebsocketsTransport,\n IWebsocketsTransportDisconnectConnection,\n IWebsocketsTransportSendConnection,\n IWebsocketsTransportSendData\n} from \"./abstractions/IWebsocketsTransport.js\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\n\nexport class WebsocketsTransport implements IWebsocketsTransport {\n private readonly clients = new Map<string, ApiGatewayManagementApiClient>();\n\n public async send<T extends GenericRecord = GenericRecord>(\n connections: IWebsocketsTransportSendConnection[],\n data: IWebsocketsTransportSendData<T>\n ): Promise<void> {\n for (const connection of connections) {\n try {\n const client = this.getClient(connection);\n\n const command = new PostToConnectionCommand({\n ConnectionId: connection.connectionId,\n Data: JSON.stringify(data)\n });\n await client.send(command);\n } catch (ex) {\n console.error(\n `Failed to send message to connection \"${connection.connectionId}\". Check logs for more information.`\n );\n console.log(ex);\n }\n }\n }\n\n public async disconnect(connections: IWebsocketsTransportDisconnectConnection[]) {\n for (const connection of connections) {\n try {\n const client = this.getClient(connection);\n const command = new DeleteConnectionCommand({\n ConnectionId: connection.connectionId\n });\n await client.send(command);\n } catch (ex) {\n console.error(\n `Failed to disconnect connection \"${connection.connectionId}\". Check logs for more information.`\n );\n console.log(ex);\n }\n }\n }\n\n private getClient(\n connection: IWebsocketsTransportSendConnection\n ): ApiGatewayManagementApiClient {\n const endpoint = `https://${connection.domainName}/${connection.stage}`;\n const client = this.clients.get(endpoint);\n if (client) {\n return client;\n }\n const newClient = new ApiGatewayManagementApiClient({\n endpoint\n });\n this.clients.set(endpoint, newClient);\n return newClient;\n }\n}\n"],"mappings":"AAAA,SACIA,6BAA6B,EAC7BC,uBAAuB,EACvBC,uBAAuB,QACpB,yDAAyD;AAShE,OAAO,MAAMC,mBAAmB,CAAiC;EAC5CC,OAAO,GAAG,IAAIC,GAAG,CAAwC,CAAC;EAE3E,MAAaC,IAAIA,CACbC,WAAiD,EACjDC,IAAqC,EACxB;IACb,KAAK,MAAMC,UAAU,IAAIF,WAAW,EAAE;MAClC,IAAI;QACA,MAAMG,MAAM,GAAG,IAAI,CAACC,SAAS,CAACF,UAAU,CAAC;QAEzC,MAAMG,OAAO,GAAG,IAAIV,uBAAuB,CAAC;UACxCW,YAAY,EAAEJ,UAAU,CAACK,YAAY;UACrCC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACT,IAAI;QAC7B,CAAC,CAAC;QACF,MAAME,MAAM,CAACJ,IAAI,CAACM,OAAO,CAAC;MAC9B,CAAC,CAAC,OAAOM,EAAE,EAAE;QACTC,OAAO,CAACC,KAAK,CACT,yCAAyCX,UAAU,CAACK,YAAY,qCACpE,CAAC;QACDK,OAAO,CAACE,GAAG,CAACH,EAAE,CAAC;MACnB;IACJ;EACJ;EAEA,MAAaI,UAAUA,CAACf,WAAuD,EAAE;IAC7E,KAAK,MAAME,UAAU,IAAIF,WAAW,EAAE;MAClC,IAAI;QACA,MAAMG,MAAM,GAAG,IAAI,CAACC,SAAS,CAACF,UAAU,CAAC;QACzC,MAAMG,OAAO,GAAG,IAAIX,uBAAuB,CAAC;UACxCY,YAAY,EAAEJ,UAAU,CAACK;QAC7B,CAAC,CAAC;QACF,MAAMJ,MAAM,CAACJ,IAAI,CAACM,OAAO,CAAC;MAC9B,CAAC,CAAC,OAAOM,EAAE,EAAE;QACTC,OAAO,CAACC,KAAK,CACT,oCAAoCX,UAAU,CAACK,YAAY,qCAC/D,CAAC;QACDK,OAAO,CAACE,GAAG,CAACH,EAAE,CAAC;MACnB;IACJ;EACJ;EAEQP,SAASA,CACbF,UAA8C,EACjB;IAC7B,MAAMc,QAAQ,GAAG,WAAWd,UAAU,CAACe,UAAU,IAAIf,UAAU,CAACgB,KAAK,EAAE;IACvE,MAAMf,MAAM,GAAG,IAAI,CAACN,OAAO,CAACsB,GAAG,CAACH,QAAQ,CAAC;IACzC,IAAIb,MAAM,EAAE;MACR,OAAOA,MAAM;IACjB;IACA,MAAMiB,SAAS,GAAG,IAAI3B,6BAA6B,CAAC;MAChDuB;IACJ,CAAC,CAAC;IACF,IAAI,CAACnB,OAAO,CAACwB,GAAG,CAACL,QAAQ,EAAEI,SAAS,CAAC;IACrC,OAAOA,SAAS;EACpB;AACJ","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { GenericRecord } from "@webiny/api/types";
2
- import { IWebsocketsConnectionRegistryData } from "../../registry";
1
+ import type { GenericRecord } from "@webiny/api/types.js";
2
+ import type { IWebsocketsConnectionRegistryData } from "../../registry/index.js";
3
3
  export interface IWebsocketsTransportSendDataError {
4
4
  message: string;
5
5
  code: string;
@@ -12,8 +12,8 @@ export interface IWebsocketsTransportSendData<T extends GenericRecord> {
12
12
  data?: T;
13
13
  error?: IWebsocketsTransportSendDataError;
14
14
  }
15
- export declare type IWebsocketsTransportSendConnection = Pick<IWebsocketsConnectionRegistryData, "connectionId" | "domainName" | "stage">;
16
- export declare type IWebsocketsTransportDisconnectConnection = Pick<IWebsocketsConnectionRegistryData, "connectionId" | "domainName" | "stage">;
15
+ export type IWebsocketsTransportSendConnection = Pick<IWebsocketsConnectionRegistryData, "connectionId" | "domainName" | "stage">;
16
+ export type IWebsocketsTransportDisconnectConnection = Pick<IWebsocketsConnectionRegistryData, "connectionId" | "domainName" | "stage">;
17
17
  export interface IWebsocketsTransport {
18
18
  send<T extends GenericRecord = GenericRecord>(connections: IWebsocketsTransportSendConnection[], data: IWebsocketsTransportSendData<T>): Promise<void>;
19
19
  disconnect(connections: IWebsocketsTransportDisconnectConnection[]): Promise<void>;
@@ -1,7 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
1
+ export {};
6
2
 
7
3
  //# sourceMappingURL=IWebsocketsTransport.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["IWebsocketsTransport.ts"],"sourcesContent":["import { GenericRecord } from \"@webiny/api/types\";\nimport { IWebsocketsConnectionRegistryData } from \"~/registry\";\n\nexport interface IWebsocketsTransportSendDataError {\n message: string;\n code: string;\n data?: GenericRecord;\n stack?: string;\n}\n\nexport interface IWebsocketsTransportSendData<T extends GenericRecord> {\n messageId?: string;\n action?: string;\n data?: T;\n error?: IWebsocketsTransportSendDataError;\n}\n\nexport type IWebsocketsTransportSendConnection = Pick<\n IWebsocketsConnectionRegistryData,\n \"connectionId\" | \"domainName\" | \"stage\"\n>;\n\nexport type IWebsocketsTransportDisconnectConnection = Pick<\n IWebsocketsConnectionRegistryData,\n \"connectionId\" | \"domainName\" | \"stage\"\n>;\n\nexport interface IWebsocketsTransport {\n send<T extends GenericRecord = GenericRecord>(\n connections: IWebsocketsTransportSendConnection[],\n data: IWebsocketsTransportSendData<T>\n ): Promise<void>;\n\n disconnect(connections: IWebsocketsTransportDisconnectConnection[]): Promise<void>;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["IWebsocketsTransport.ts"],"sourcesContent":["import type { GenericRecord } from \"@webiny/api/types.js\";\nimport type { IWebsocketsConnectionRegistryData } from \"~/registry/index.js\";\n\nexport interface IWebsocketsTransportSendDataError {\n message: string;\n code: string;\n data?: GenericRecord;\n stack?: string;\n}\n\nexport interface IWebsocketsTransportSendData<T extends GenericRecord> {\n messageId?: string;\n action?: string;\n data?: T;\n error?: IWebsocketsTransportSendDataError;\n}\n\nexport type IWebsocketsTransportSendConnection = Pick<\n IWebsocketsConnectionRegistryData,\n \"connectionId\" | \"domainName\" | \"stage\"\n>;\n\nexport type IWebsocketsTransportDisconnectConnection = Pick<\n IWebsocketsConnectionRegistryData,\n \"connectionId\" | \"domainName\" | \"stage\"\n>;\n\nexport interface IWebsocketsTransport {\n send<T extends GenericRecord = GenericRecord>(\n connections: IWebsocketsTransportSendConnection[],\n data: IWebsocketsTransportSendData<T>\n ): Promise<void>;\n\n disconnect(connections: IWebsocketsTransportDisconnectConnection[]): Promise<void>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- export * from "./WebsocketsTransport";
2
- export * from "./abstractions/IWebsocketsTransport";
1
+ export * from "./WebsocketsTransport.js";
2
+ export type * from "./abstractions/IWebsocketsTransport.js";