@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,71 +1,80 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createResolvers = void 0;
7
- var _utils = require("./utils");
8
- var _checkPermissions = require("./checkPermissions");
9
- const createResolvers = () => {
1
+ import { emptyResolver, resolve } from "./utils.js";
2
+ import { checkPermissions } from "./checkPermissions.js";
3
+ export const createResolvers = () => {
10
4
  return {
11
5
  Query: {
12
- websockets: _utils.emptyResolver
6
+ websockets: emptyResolver
13
7
  },
14
8
  Mutation: {
15
- websockets: _utils.emptyResolver
9
+ websockets: emptyResolver
16
10
  },
17
11
  WebsocketsQuery: {
18
12
  listConnections: async (_, args, context) => {
19
- return (0, _utils.resolve)(async () => {
20
- await (0, _checkPermissions.checkPermissions)(context);
21
- return await context.websockets.listConnections(args);
13
+ return resolve(async () => {
14
+ await checkPermissions(context);
15
+ const result = await context.websockets.listConnections(args);
16
+ if (result.isFail()) {
17
+ throw result.error;
18
+ }
19
+ return result.value;
22
20
  });
23
21
  }
24
22
  },
25
23
  WebsocketsMutation: {
26
- // @ts-expect-error
27
24
  disconnect: async (_, args, context) => {
28
- return (0, _utils.resolve)(async () => {
29
- await (0, _checkPermissions.checkPermissions)(context);
30
- return await context.websockets.disconnect({
25
+ return resolve(async () => {
26
+ await checkPermissions(context);
27
+ const result = await context.websockets.disconnect({
31
28
  where: {
32
29
  connections: args.connections
33
30
  }
34
31
  });
32
+ if (result.isFail()) {
33
+ throw result.error;
34
+ }
35
+ return result.value;
35
36
  });
36
37
  },
37
- // @ts-expect-error
38
38
  disconnectIdentity: async (_, args, context) => {
39
- return (0, _utils.resolve)(async () => {
40
- await (0, _checkPermissions.checkPermissions)(context);
41
- return await context.websockets.disconnect({
39
+ return resolve(async () => {
40
+ await checkPermissions(context);
41
+ const result = await context.websockets.disconnect({
42
42
  where: {
43
43
  identityId: args.identityId
44
44
  }
45
45
  });
46
+ if (result.isFail()) {
47
+ throw result.error;
48
+ }
49
+ return result.value;
46
50
  });
47
51
  },
48
- // @ts-expect-error
49
52
  disconnectTenant: async (_, args, context) => {
50
- return (0, _utils.resolve)(async () => {
51
- await (0, _checkPermissions.checkPermissions)(context);
52
- return await context.websockets.disconnect({
53
+ return resolve(async () => {
54
+ await checkPermissions(context);
55
+ const result = await context.websockets.disconnect({
53
56
  where: {
54
- tenant: args.tenant,
55
- locale: args.locale
57
+ tenant: args.tenant
56
58
  }
57
59
  });
60
+ if (result.isFail()) {
61
+ throw result.error;
62
+ }
63
+ return result.value;
58
64
  });
59
65
  },
60
66
  disconnectAll: async (_, __, context) => {
61
- return (0, _utils.resolve)(async () => {
62
- await (0, _checkPermissions.checkPermissions)(context);
63
- return await context.websockets.disconnect();
67
+ return resolve(async () => {
68
+ await checkPermissions(context);
69
+ const result = await context.websockets.disconnect();
70
+ if (result.isFail()) {
71
+ throw result.error;
72
+ }
73
+ return result.value;
64
74
  });
65
75
  }
66
76
  }
67
77
  };
68
78
  };
69
- exports.createResolvers = createResolvers;
70
79
 
71
80
  //# sourceMappingURL=createResolvers.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_utils","require","_checkPermissions","createResolvers","Query","websockets","emptyResolver","Mutation","WebsocketsQuery","listConnections","_","args","context","resolve","checkPermissions","WebsocketsMutation","disconnect","where","connections","disconnectIdentity","identityId","disconnectTenant","tenant","locale","disconnectAll","__","exports"],"sources":["createResolvers.ts"],"sourcesContent":["import { Resolvers } from \"@webiny/handler-graphql/types\";\nimport { Context } from \"~/types\";\nimport { emptyResolver, resolve } from \"./utils\";\nimport { IWebsocketsContextListConnectionsParams } from \"~/context\";\nimport { IWebsocketsConnectionRegistryData } from \"~/registry\";\nimport { checkPermissions } from \"~/graphql/checkPermissions\";\n\nexport interface IWebsocketsMutationDisconnectConnectionsArgs {\n connections: string[];\n}\n\nexport interface IWebsocketsMutationDisconnectIdentityArgs {\n identityId: string;\n}\n\nexport interface IWebsocketsMutationDisconnectTenantArgs {\n tenant: string;\n locale?: string;\n}\n\nexport const createResolvers = (): Resolvers<Context> => {\n return {\n Query: {\n websockets: emptyResolver\n },\n Mutation: {\n websockets: emptyResolver\n },\n WebsocketsQuery: {\n listConnections: async (_, args: IWebsocketsContextListConnectionsParams, context) => {\n return resolve(async () => {\n await checkPermissions(context);\n return await context.websockets.listConnections(args);\n });\n }\n },\n WebsocketsMutation: {\n // @ts-expect-error\n disconnect: async (_, args: IWebsocketsMutationDisconnectConnectionsArgs, context) => {\n return resolve(async () => {\n await checkPermissions(context);\n return await context.websockets.disconnect({\n where: {\n connections: args.connections\n }\n });\n });\n },\n // @ts-expect-error\n disconnectIdentity: async (\n _,\n args: IWebsocketsMutationDisconnectIdentityArgs,\n context\n ) => {\n return resolve<IWebsocketsConnectionRegistryData[]>(async () => {\n await checkPermissions(context);\n return await context.websockets.disconnect({\n where: {\n identityId: args.identityId\n }\n });\n });\n },\n // @ts-expect-error\n disconnectTenant: async (_, args: IWebsocketsMutationDisconnectTenantArgs, context) => {\n return resolve<IWebsocketsConnectionRegistryData[]>(async () => {\n await checkPermissions(context);\n return await context.websockets.disconnect({\n where: {\n tenant: args.tenant,\n locale: args.locale\n }\n });\n });\n },\n disconnectAll: async (_, __, context) => {\n return resolve<IWebsocketsConnectionRegistryData[]>(async () => {\n await checkPermissions(context);\n return await context.websockets.disconnect();\n });\n }\n }\n };\n};\n"],"mappings":";;;;;;AAEA,IAAAA,MAAA,GAAAC,OAAA;AAGA,IAAAC,iBAAA,GAAAD,OAAA;AAeO,MAAME,eAAe,GAAGA,CAAA,KAA0B;EACrD,OAAO;IACHC,KAAK,EAAE;MACHC,UAAU,EAAEC;IAChB,CAAC;IACDC,QAAQ,EAAE;MACNF,UAAU,EAAEC;IAChB,CAAC;IACDE,eAAe,EAAE;MACbC,eAAe,EAAE,MAAAA,CAAOC,CAAC,EAAEC,IAA6C,EAAEC,OAAO,KAAK;QAClF,OAAO,IAAAC,cAAO,EAAC,YAAY;UACvB,MAAM,IAAAC,kCAAgB,EAACF,OAAO,CAAC;UAC/B,OAAO,MAAMA,OAAO,CAACP,UAAU,CAACI,eAAe,CAACE,IAAI,CAAC;QACzD,CAAC,CAAC;MACN;IACJ,CAAC;IACDI,kBAAkB,EAAE;MAChB;MACAC,UAAU,EAAE,MAAAA,CAAON,CAAC,EAAEC,IAAkD,EAAEC,OAAO,KAAK;QAClF,OAAO,IAAAC,cAAO,EAAC,YAAY;UACvB,MAAM,IAAAC,kCAAgB,EAACF,OAAO,CAAC;UAC/B,OAAO,MAAMA,OAAO,CAACP,UAAU,CAACW,UAAU,CAAC;YACvCC,KAAK,EAAE;cACHC,WAAW,EAAEP,IAAI,CAACO;YACtB;UACJ,CAAC,CAAC;QACN,CAAC,CAAC;MACN,CAAC;MACD;MACAC,kBAAkB,EAAE,MAAAA,CAChBT,CAAC,EACDC,IAA+C,EAC/CC,OAAO,KACN;QACD,OAAO,IAAAC,cAAO,EAAsC,YAAY;UAC5D,MAAM,IAAAC,kCAAgB,EAACF,OAAO,CAAC;UAC/B,OAAO,MAAMA,OAAO,CAACP,UAAU,CAACW,UAAU,CAAC;YACvCC,KAAK,EAAE;cACHG,UAAU,EAAET,IAAI,CAACS;YACrB;UACJ,CAAC,CAAC;QACN,CAAC,CAAC;MACN,CAAC;MACD;MACAC,gBAAgB,EAAE,MAAAA,CAAOX,CAAC,EAAEC,IAA6C,EAAEC,OAAO,KAAK;QACnF,OAAO,IAAAC,cAAO,EAAsC,YAAY;UAC5D,MAAM,IAAAC,kCAAgB,EAACF,OAAO,CAAC;UAC/B,OAAO,MAAMA,OAAO,CAACP,UAAU,CAACW,UAAU,CAAC;YACvCC,KAAK,EAAE;cACHK,MAAM,EAAEX,IAAI,CAACW,MAAM;cACnBC,MAAM,EAAEZ,IAAI,CAACY;YACjB;UACJ,CAAC,CAAC;QACN,CAAC,CAAC;MACN,CAAC;MACDC,aAAa,EAAE,MAAAA,CAAOd,CAAC,EAAEe,EAAE,EAAEb,OAAO,KAAK;QACrC,OAAO,IAAAC,cAAO,EAAsC,YAAY;UAC5D,MAAM,IAAAC,kCAAgB,EAACF,OAAO,CAAC;UAC/B,OAAO,MAAMA,OAAO,CAACP,UAAU,CAACW,UAAU,CAAC,CAAC;QAChD,CAAC,CAAC;MACN;IACJ;EACJ,CAAC;AACL,CAAC;AAACU,OAAA,CAAAvB,eAAA,GAAAA,eAAA","ignoreList":[]}
1
+ {"version":3,"names":["emptyResolver","resolve","checkPermissions","createResolvers","Query","websockets","Mutation","WebsocketsQuery","listConnections","_","args","context","result","isFail","error","value","WebsocketsMutation","disconnect","where","connections","disconnectIdentity","identityId","disconnectTenant","tenant","disconnectAll","__"],"sources":["createResolvers.ts"],"sourcesContent":["import type { Resolvers } from \"@webiny/handler-graphql/types.js\";\nimport type { Context } from \"~/types.js\";\nimport { emptyResolver, resolve } from \"./utils.js\";\nimport type { IWebsocketsContextListConnectionsParams } from \"~/context/index.js\";\nimport type { IWebsocketsConnectionRegistryData } from \"~/registry/index.js\";\nimport { checkPermissions } from \"~/graphql/checkPermissions.js\";\n\nexport interface IWebsocketsMutationDisconnectConnectionsArgs {\n connections: string[];\n}\n\nexport interface IWebsocketsMutationDisconnectIdentityArgs {\n identityId: string;\n}\n\nexport interface IWebsocketsMutationDisconnectTenantArgs {\n tenant: string;\n}\n\nexport const createResolvers = (): Resolvers<Context> => {\n return {\n Query: {\n websockets: emptyResolver\n },\n Mutation: {\n websockets: emptyResolver\n },\n WebsocketsQuery: {\n listConnections: async (_, args: IWebsocketsContextListConnectionsParams, context) => {\n return resolve(async () => {\n await checkPermissions(context);\n const result = await context.websockets.listConnections(args);\n\n if (result.isFail()) {\n throw result.error;\n }\n\n return result.value;\n });\n }\n },\n WebsocketsMutation: {\n disconnect: async (_, args: IWebsocketsMutationDisconnectConnectionsArgs, context) => {\n return resolve(async () => {\n await checkPermissions(context);\n const result = await context.websockets.disconnect({\n where: {\n connections: args.connections\n }\n });\n\n if (result.isFail()) {\n throw result.error;\n }\n\n return result.value;\n });\n },\n disconnectIdentity: async (\n _,\n args: IWebsocketsMutationDisconnectIdentityArgs,\n context\n ) => {\n return resolve<IWebsocketsConnectionRegistryData[]>(async () => {\n await checkPermissions(context);\n const result = await context.websockets.disconnect({\n where: {\n identityId: args.identityId\n }\n });\n\n if (result.isFail()) {\n throw result.error;\n }\n\n return result.value;\n });\n },\n disconnectTenant: async (_, args: IWebsocketsMutationDisconnectTenantArgs, context) => {\n return resolve<IWebsocketsConnectionRegistryData[]>(async () => {\n await checkPermissions(context);\n const result = await context.websockets.disconnect({\n where: {\n tenant: args.tenant\n }\n });\n\n if (result.isFail()) {\n throw result.error;\n }\n\n return result.value;\n });\n },\n disconnectAll: async (_, __, context) => {\n return resolve<IWebsocketsConnectionRegistryData[]>(async () => {\n await checkPermissions(context);\n const result = await context.websockets.disconnect();\n\n if (result.isFail()) {\n throw result.error;\n }\n\n return result.value;\n });\n }\n }\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,10 +1,4 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createTypeDefs = void 0;
7
- const createTypeDefs = () => {
1
+ export const createTypeDefs = () => {
8
2
  return /* GraphQL */`
9
3
  type WebsocketsIdentity {
10
4
  id: String!
@@ -18,7 +12,6 @@ const createTypeDefs = () => {
18
12
  identity: WebsocketsIdentity!
19
13
  connectedOn: DateTime!
20
14
  tenant: String!
21
- locale: String!
22
15
  }
23
16
 
24
17
  type WebsocketsError {
@@ -35,7 +28,6 @@ const createTypeDefs = () => {
35
28
  input WebsocketsListConnectionsWhereInput {
36
29
  identityId: String
37
30
  tenant: String
38
- locale: String
39
31
  }
40
32
 
41
33
  type WebsocketsDisconnectResponse {
@@ -68,11 +60,10 @@ const createTypeDefs = () => {
68
60
  extend type WebsocketsMutation {
69
61
  disconnect(connections: [String!]!): WebsocketsDisconnectResponse!
70
62
  disconnectIdentity(identityId: String!): WebsocketsDisconnectResponse!
71
- disconnectTenant(tenant: String!, locale: String): WebsocketsDisconnectResponse!
63
+ disconnectTenant(tenant: String!): WebsocketsDisconnectResponse!
72
64
  disconnectAll: WebsocketsDisconnectResponse!
73
65
  }
74
66
  `;
75
67
  };
76
- exports.createTypeDefs = createTypeDefs;
77
68
 
78
69
  //# sourceMappingURL=createTypeDefs.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createTypeDefs","exports"],"sources":["createTypeDefs.ts"],"sourcesContent":["export const createTypeDefs = () => {\n return /* GraphQL */ `\n type WebsocketsIdentity {\n id: String!\n type: String\n displayName: String\n }\n type WebsocketsConnection {\n connectionId: String!\n domainName: String!\n stage: String!\n identity: WebsocketsIdentity!\n connectedOn: DateTime!\n tenant: String!\n locale: String!\n }\n\n type WebsocketsError {\n message: String!\n code: String!\n data: JSON\n }\n\n type WebsocketsListConnectionsResponse {\n data: [WebsocketsConnection!]\n error: WebsocketsError\n }\n\n input WebsocketsListConnectionsWhereInput {\n identityId: String\n tenant: String\n locale: String\n }\n\n type WebsocketsDisconnectResponse {\n data: [WebsocketsConnection!]\n error: WebsocketsError\n }\n\n type WebsocketsQuery {\n _empty: String\n }\n\n type WebsocketsMutation {\n _empty: String\n }\n\n extend type Query {\n websockets: WebsocketsQuery\n }\n\n extend type Mutation {\n websockets: WebsocketsMutation\n }\n\n extend type WebsocketsQuery {\n listConnections(\n where: WebsocketsListConnectionsWhereInput\n ): WebsocketsListConnectionsResponse!\n }\n\n extend type WebsocketsMutation {\n disconnect(connections: [String!]!): WebsocketsDisconnectResponse!\n disconnectIdentity(identityId: String!): WebsocketsDisconnectResponse!\n disconnectTenant(tenant: String!, locale: String): WebsocketsDisconnectResponse!\n disconnectAll: WebsocketsDisconnectResponse!\n }\n `;\n};\n"],"mappings":";;;;;;AAAO,MAAMA,cAAc,GAAGA,CAAA,KAAM;EAChC,OAAO,aAAe;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC;AAACC,OAAA,CAAAD,cAAA,GAAAA,cAAA","ignoreList":[]}
1
+ {"version":3,"names":["createTypeDefs"],"sources":["createTypeDefs.ts"],"sourcesContent":["export const createTypeDefs = () => {\n return /* GraphQL */ `\n type WebsocketsIdentity {\n id: String!\n type: String\n displayName: String\n }\n type WebsocketsConnection {\n connectionId: String!\n domainName: String!\n stage: String!\n identity: WebsocketsIdentity!\n connectedOn: DateTime!\n tenant: String!\n }\n\n type WebsocketsError {\n message: String!\n code: String!\n data: JSON\n }\n\n type WebsocketsListConnectionsResponse {\n data: [WebsocketsConnection!]\n error: WebsocketsError\n }\n\n input WebsocketsListConnectionsWhereInput {\n identityId: String\n tenant: String\n }\n\n type WebsocketsDisconnectResponse {\n data: [WebsocketsConnection!]\n error: WebsocketsError\n }\n\n type WebsocketsQuery {\n _empty: String\n }\n\n type WebsocketsMutation {\n _empty: String\n }\n\n extend type Query {\n websockets: WebsocketsQuery\n }\n\n extend type Mutation {\n websockets: WebsocketsMutation\n }\n\n extend type WebsocketsQuery {\n listConnections(\n where: WebsocketsListConnectionsWhereInput\n ): WebsocketsListConnectionsResponse!\n }\n\n extend type WebsocketsMutation {\n disconnect(connections: [String!]!): WebsocketsDisconnectResponse!\n disconnectIdentity(identityId: String!): WebsocketsDisconnectResponse!\n disconnectTenant(tenant: String!): WebsocketsDisconnectResponse!\n disconnectAll: WebsocketsDisconnectResponse!\n }\n `;\n};\n"],"mappings":"AAAA,OAAO,MAAMA,cAAc,GAAGA,CAAA,KAAM;EAChC,OAAO,aAAc;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC","ignoreList":[]}
@@ -1,2 +1,2 @@
1
1
  import { GraphQLSchemaPlugin } from "@webiny/handler-graphql";
2
- export declare const createWebsocketsGraphQL: () => GraphQLSchemaPlugin<import("..").Context>;
2
+ export declare const createWebsocketsGraphQL: () => GraphQLSchemaPlugin<import("../types.js").Context>;
package/graphql/index.js CHANGED
@@ -1,20 +1,13 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createWebsocketsGraphQL = void 0;
7
- var _handlerGraphql = require("@webiny/handler-graphql");
8
- var _createTypeDefs = require("./createTypeDefs");
9
- var _createResolvers = require("./createResolvers");
10
- const createWebsocketsGraphQL = () => {
11
- const plugin = new _handlerGraphql.GraphQLSchemaPlugin({
12
- typeDefs: (0, _createTypeDefs.createTypeDefs)(),
13
- resolvers: (0, _createResolvers.createResolvers)()
1
+ import { GraphQLSchemaPlugin } from "@webiny/handler-graphql";
2
+ import { createTypeDefs } from "./createTypeDefs.js";
3
+ import { createResolvers } from "./createResolvers.js";
4
+ export const createWebsocketsGraphQL = () => {
5
+ const plugin = new GraphQLSchemaPlugin({
6
+ typeDefs: createTypeDefs(),
7
+ resolvers: createResolvers()
14
8
  });
15
9
  plugin.name = "websockets.graphql";
16
10
  return plugin;
17
11
  };
18
- exports.createWebsocketsGraphQL = createWebsocketsGraphQL;
19
12
 
20
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_handlerGraphql","require","_createTypeDefs","_createResolvers","createWebsocketsGraphQL","plugin","GraphQLSchemaPlugin","typeDefs","createTypeDefs","resolvers","createResolvers","name","exports"],"sources":["index.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql\";\nimport { createTypeDefs } from \"./createTypeDefs\";\nimport { createResolvers } from \"./createResolvers\";\n\nexport const createWebsocketsGraphQL = () => {\n const plugin = new GraphQLSchemaPlugin({\n typeDefs: createTypeDefs(),\n resolvers: createResolvers()\n });\n\n plugin.name = \"websockets.graphql\";\n\n return plugin;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AAEO,MAAMG,uBAAuB,GAAGA,CAAA,KAAM;EACzC,MAAMC,MAAM,GAAG,IAAIC,mCAAmB,CAAC;IACnCC,QAAQ,EAAE,IAAAC,8BAAc,EAAC,CAAC;IAC1BC,SAAS,EAAE,IAAAC,gCAAe,EAAC;EAC/B,CAAC,CAAC;EAEFL,MAAM,CAACM,IAAI,GAAG,oBAAoB;EAElC,OAAON,MAAM;AACjB,CAAC;AAACO,OAAA,CAAAR,uBAAA,GAAAA,uBAAA","ignoreList":[]}
1
+ {"version":3,"names":["GraphQLSchemaPlugin","createTypeDefs","createResolvers","createWebsocketsGraphQL","plugin","typeDefs","resolvers","name"],"sources":["index.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql\";\nimport { createTypeDefs } from \"./createTypeDefs.js\";\nimport { createResolvers } from \"./createResolvers.js\";\n\nexport const createWebsocketsGraphQL = () => {\n const plugin = new GraphQLSchemaPlugin({\n typeDefs: createTypeDefs(),\n resolvers: createResolvers()\n });\n\n plugin.name = \"websockets.graphql\";\n\n return plugin;\n};\n"],"mappings":"AAAA,SAASA,mBAAmB,QAAQ,yBAAyB;AAC7D,SAASC,cAAc;AACvB,SAASC,eAAe;AAExB,OAAO,MAAMC,uBAAuB,GAAGA,CAAA,KAAM;EACzC,MAAMC,MAAM,GAAG,IAAIJ,mBAAmB,CAAC;IACnCK,QAAQ,EAAEJ,cAAc,CAAC,CAAC;IAC1BK,SAAS,EAAEJ,eAAe,CAAC;EAC/B,CAAC,CAAC;EAEFE,MAAM,CAACG,IAAI,GAAG,oBAAoB;EAElC,OAAOH,MAAM;AACjB,CAAC","ignoreList":[]}
package/graphql/utils.js CHANGED
@@ -1,19 +1,11 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.resolve = exports.emptyResolver = void 0;
7
- var _handlerGraphql = require("@webiny/handler-graphql");
8
- const emptyResolver = () => ({});
9
- exports.emptyResolver = emptyResolver;
10
- const resolve = async fn => {
1
+ import { ErrorResponse, Response } from "@webiny/handler-graphql";
2
+ export const emptyResolver = () => ({});
3
+ export const resolve = async fn => {
11
4
  try {
12
- return new _handlerGraphql.Response(await fn());
5
+ return new Response(await fn());
13
6
  } catch (ex) {
14
- return new _handlerGraphql.ErrorResponse(ex);
7
+ return new ErrorResponse(ex);
15
8
  }
16
9
  };
17
- exports.resolve = resolve;
18
10
 
19
11
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_handlerGraphql","require","emptyResolver","exports","resolve","fn","Response","ex","ErrorResponse"],"sources":["utils.ts"],"sourcesContent":["import { ErrorResponse, Response } from \"@webiny/handler-graphql\";\n\nexport const emptyResolver = () => ({});\n\ninterface ResolveCallable<T = any> {\n (): Promise<T>;\n}\n\nexport const resolve = async <T = any>(fn: ResolveCallable<T>) => {\n try {\n return new Response<T>(await fn());\n } catch (ex) {\n return new ErrorResponse(ex);\n }\n};\n"],"mappings":";;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAEO,MAAMC,aAAa,GAAGA,CAAA,MAAO,CAAC,CAAC,CAAC;AAACC,OAAA,CAAAD,aAAA,GAAAA,aAAA;AAMjC,MAAME,OAAO,GAAG,MAAgBC,EAAsB,IAAK;EAC9D,IAAI;IACA,OAAO,IAAIC,wBAAQ,CAAI,MAAMD,EAAE,CAAC,CAAC,CAAC;EACtC,CAAC,CAAC,OAAOE,EAAE,EAAE;IACT,OAAO,IAAIC,6BAAa,CAACD,EAAE,CAAC;EAChC;AACJ,CAAC;AAACJ,OAAA,CAAAC,OAAA,GAAAA,OAAA","ignoreList":[]}
1
+ {"version":3,"names":["ErrorResponse","Response","emptyResolver","resolve","fn","ex"],"sources":["utils.ts"],"sourcesContent":["import { ErrorResponse, Response } from \"@webiny/handler-graphql\";\n\nexport const emptyResolver = () => ({});\n\ninterface ResolveCallable<T = any> {\n (): Promise<T>;\n}\n\nexport const resolve = async <T = any>(fn: ResolveCallable<T>) => {\n try {\n return new Response<T>(await fn());\n } catch (ex) {\n return new ErrorResponse(ex);\n }\n};\n"],"mappings":"AAAA,SAASA,aAAa,EAAEC,QAAQ,QAAQ,yBAAyB;AAEjE,OAAO,MAAMC,aAAa,GAAGA,CAAA,MAAO,CAAC,CAAC,CAAC;AAMvC,OAAO,MAAMC,OAAO,GAAG,MAAgBC,EAAsB,IAAK;EAC9D,IAAI;IACA,OAAO,IAAIH,QAAQ,CAAI,MAAMG,EAAE,CAAC,CAAC,CAAC;EACtC,CAAC,CAAC,OAAOC,EAAE,EAAE;IACT,OAAO,IAAIL,aAAa,CAACK,EAAE,CAAC;EAChC;AACJ,CAAC","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import { HandlerCallable, HandlerParams } from "./types";
1
+ import type { HandlerCallable, HandlerParams } from "./types.js";
2
2
  export declare const createHandler: (params: HandlerParams) => HandlerCallable;
@@ -1,30 +1,24 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createHandler = void 0;
7
- var _handler = require("@webiny/handler");
8
- var _plugins = require("@webiny/handler-aws/plugins");
9
- var _execute = require("@webiny/handler-aws/execute");
10
- var _plugins2 = require("@webiny/plugins");
11
- var _routes = require("../runner/routes");
12
- var _validator = require("../validator");
13
- var _response = require("../response");
14
- var _runner = require("../runner");
15
- var _headers = require("./headers");
1
+ import { createHandler as createBaseHandler } from "@webiny/handler";
2
+ import { registerDefaultPlugins } from "@webiny/handler-aws/plugins/index.js";
3
+ import { execute } from "@webiny/handler-aws/execute.js";
4
+ import { PluginsContainer } from "@webiny/plugins";
5
+ import { createWebsocketsRoutePlugins } from "../runner/routes/index.js";
6
+ import { WebsocketsEventValidator } from "../validator/index.js";
7
+ import { WebsocketsResponse } from "../response/index.js";
8
+ import { WebsocketsRunner } from "../runner/index.js";
9
+ import { getEventValues } from "./headers.js";
16
10
  const url = "/webiny-websockets";
17
11
  const createPluginsContainer = plugins => {
18
- if (plugins instanceof _plugins2.PluginsContainer) {
12
+ if (plugins instanceof PluginsContainer) {
19
13
  return plugins;
20
14
  }
21
- return new _plugins2.PluginsContainer(plugins || []);
15
+ return new PluginsContainer(plugins || []);
22
16
  };
23
- const createHandler = params => {
17
+ export const createHandler = params => {
24
18
  const plugins = createPluginsContainer(params.plugins);
25
- plugins.register(...(0, _routes.createWebsocketsRoutePlugins)());
19
+ plugins.register(...createWebsocketsRoutePlugins());
26
20
  return async event => {
27
- const app = (0, _handler.createHandler)({
21
+ const app = createBaseHandler({
28
22
  ...params,
29
23
  plugins,
30
24
  options: {
@@ -32,44 +26,48 @@ const createHandler = params => {
32
26
  ...(params.options || {})
33
27
  }
34
28
  });
35
- (0, _plugins.registerDefaultPlugins)(app.webiny);
36
- app.setErrorHandler(async (error, _, reply) => {
37
- app.__webiny_raw_result = {
38
- error: {
39
- message: error.message,
40
- code: error.code,
41
- data: error.data
42
- },
43
- statusCode: 200
44
- };
45
- return reply.send({});
46
- });
47
- app.post(url, async (_, reply) => {
48
- const {
49
- validator,
50
- response
51
- } = params;
52
- const context = app.webiny;
53
- const handler = new _runner.WebsocketsRunner(context, context.websockets.registry, validator || new _validator.WebsocketsEventValidator(), response || new _response.WebsocketsResponse());
54
- const result = await handler.run(event);
55
- return reply.status(result.statusCode).headers({
56
- "Sec-WebSocket-Protocol": "webiny-ws-v1"
57
- }).send(result);
29
+ registerDefaultPlugins(app.webiny);
30
+ await app.register(async wsApp => {
31
+ wsApp.setErrorHandler(async (error, _, reply) => {
32
+ app.__webiny_raw_result = {
33
+ error: {
34
+ message: error.message,
35
+ code: error.code,
36
+ data: error.data
37
+ },
38
+ statusCode: 200
39
+ };
40
+ return reply.send({});
41
+ });
42
+ wsApp.post(url, async (_, reply) => {
43
+ const {
44
+ validator,
45
+ response
46
+ } = params;
47
+ const context = app.webiny;
48
+ const handler = new WebsocketsRunner(context, context.websockets.registry, validator || new WebsocketsEventValidator(), response || new WebsocketsResponse());
49
+ const result = await handler.run(event);
50
+ app.__webiny_raw_result = {
51
+ statusCode: result.statusCode,
52
+ headers: {
53
+ "sec-websocket-protocol": "webiny-ws-v1"
54
+ }
55
+ };
56
+ return reply.send();
57
+ });
58
58
  });
59
59
  const {
60
60
  tenant,
61
- locale,
62
61
  endpoint,
63
62
  token
64
- } = (0, _headers.getEventValues)(event);
63
+ } = getEventValues(event);
65
64
  const headers = {
66
65
  Authorization: `Bearer ${token}`,
67
66
  ["x-tenant"]: tenant,
68
- ["x-webiny-cms-locale"]: locale,
69
67
  ["x-webiny-cms-endpoint"]: endpoint,
70
68
  ...event.headers
71
69
  };
72
- return (0, _execute.execute)({
70
+ return execute({
73
71
  app,
74
72
  url,
75
73
  payload: {
@@ -79,6 +77,5 @@ const createHandler = params => {
79
77
  });
80
78
  };
81
79
  };
82
- exports.createHandler = createHandler;
83
80
 
84
81
  //# sourceMappingURL=handler.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_handler","require","_plugins","_execute","_plugins2","_routes","_validator","_response","_runner","_headers","url","createPluginsContainer","plugins","PluginsContainer","createHandler","params","register","createWebsocketsRoutePlugins","event","app","createBaseHandler","options","logger","debug","registerDefaultPlugins","webiny","setErrorHandler","error","_","reply","__webiny_raw_result","message","code","data","statusCode","send","post","validator","response","context","handler","WebsocketsRunner","websockets","registry","WebsocketsEventValidator","WebsocketsResponse","result","run","status","headers","tenant","locale","endpoint","token","getEventValues","Authorization","execute","payload","exports"],"sources":["handler.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { createHandler as createBaseHandler } from \"@webiny/handler\";\nimport { registerDefaultPlugins } from \"@webiny/handler-aws/plugins\";\nimport { execute } from \"@webiny/handler-aws/execute\";\nimport { PluginsContainer } from \"@webiny/plugins\";\nimport { createWebsocketsRoutePlugins } from \"~/runner/routes\";\nimport { WebsocketsEventValidator } from \"~/validator\";\nimport { WebsocketsResponse } from \"~/response\";\nimport { Context } from \"~/types\";\nimport { WebsocketsRunner } from \"~/runner\";\nimport { PluginCollection } from \"@webiny/plugins/types\";\nimport { HandlerCallable, HandlerParams } from \"./types\";\nimport { getEventValues } from \"./headers\";\n\nconst url = \"/webiny-websockets\";\n\nconst createPluginsContainer = (\n plugins?: PluginsContainer | PluginCollection\n): PluginsContainer => {\n if (plugins instanceof PluginsContainer) {\n return plugins;\n }\n return new PluginsContainer(plugins || []);\n};\n\nexport const createHandler = (params: HandlerParams): HandlerCallable => {\n const plugins = createPluginsContainer(params.plugins);\n plugins.register(...createWebsocketsRoutePlugins());\n\n return async event => {\n const app = createBaseHandler({\n ...params,\n plugins,\n options: {\n logger: params.debug === true,\n ...(params.options || {})\n }\n });\n\n registerDefaultPlugins(app.webiny);\n\n app.setErrorHandler<WebinyError>(async (error, _, reply) => {\n app.__webiny_raw_result = {\n error: {\n message: error.message,\n code: error.code,\n data: error.data\n },\n statusCode: 200\n };\n return reply.send({});\n });\n\n app.post(url, async (_, reply) => {\n const { validator, response } = params;\n const context = app.webiny as Context;\n const handler = new WebsocketsRunner(\n context,\n context.websockets.registry,\n validator || new WebsocketsEventValidator(),\n response || new WebsocketsResponse()\n );\n\n const result = await handler.run(event);\n\n return reply\n .status(result.statusCode)\n .headers({\n \"Sec-WebSocket-Protocol\": \"webiny-ws-v1\"\n })\n .send(result);\n });\n\n const { tenant, locale, endpoint, token } = getEventValues(event);\n\n const headers = {\n Authorization: `Bearer ${token}`,\n [\"x-tenant\"]: tenant,\n [\"x-webiny-cms-locale\"]: locale,\n [\"x-webiny-cms-endpoint\"]: endpoint,\n ...event.headers\n };\n\n return execute({\n app,\n url,\n payload: {\n ...event,\n headers\n }\n });\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createHandler","createBaseHandler","registerDefaultPlugins","execute","PluginsContainer","createWebsocketsRoutePlugins","WebsocketsEventValidator","WebsocketsResponse","WebsocketsRunner","getEventValues","url","createPluginsContainer","plugins","params","register","event","app","options","logger","debug","webiny","wsApp","setErrorHandler","error","_","reply","__webiny_raw_result","message","code","data","statusCode","send","post","validator","response","context","handler","websockets","registry","result","run","headers","tenant","endpoint","token","Authorization","payload"],"sources":["handler.ts"],"sourcesContent":["import type WebinyError from \"@webiny/error\";\nimport { createHandler as createBaseHandler } from \"@webiny/handler\";\nimport { registerDefaultPlugins } from \"@webiny/handler-aws/plugins/index.js\";\nimport { execute } from \"@webiny/handler-aws/execute.js\";\nimport { PluginsContainer } from \"@webiny/plugins\";\nimport { createWebsocketsRoutePlugins } from \"~/runner/routes/index.js\";\nimport { WebsocketsEventValidator } from \"~/validator/index.js\";\nimport { WebsocketsResponse } from \"~/response/index.js\";\nimport type { Context } from \"~/types.js\";\nimport { WebsocketsRunner } from \"~/runner/index.js\";\nimport type { PluginCollection } from \"@webiny/plugins/types.js\";\nimport type { HandlerCallable, HandlerParams } from \"./types.js\";\nimport { getEventValues } from \"./headers.js\";\n\nconst url = \"/webiny-websockets\";\n\nconst createPluginsContainer = (\n plugins?: PluginsContainer | PluginCollection\n): PluginsContainer => {\n if (plugins instanceof PluginsContainer) {\n return plugins;\n }\n return new PluginsContainer(plugins || []);\n};\n\nexport const createHandler = (params: HandlerParams): HandlerCallable => {\n const plugins = createPluginsContainer(params.plugins);\n plugins.register(...createWebsocketsRoutePlugins());\n\n return async event => {\n const app = createBaseHandler({\n ...params,\n plugins,\n options: {\n logger: params.debug === true,\n ...(params.options || {})\n }\n });\n\n registerDefaultPlugins(app.webiny);\n\n await app.register(async wsApp => {\n wsApp.setErrorHandler<WebinyError>(async (error, _, reply) => {\n app.__webiny_raw_result = {\n error: {\n message: error.message,\n code: error.code,\n data: error.data\n },\n statusCode: 200\n };\n return reply.send({});\n });\n\n wsApp.post(url, async (_, reply) => {\n const { validator, response } = params;\n const context = app.webiny as Context;\n const handler = new WebsocketsRunner(\n context,\n context.websockets.registry,\n validator || new WebsocketsEventValidator(),\n response || new WebsocketsResponse()\n );\n\n const result = await handler.run(event);\n\n app.__webiny_raw_result = {\n statusCode: result.statusCode,\n headers: {\n \"sec-websocket-protocol\": \"webiny-ws-v1\"\n }\n };\n\n return reply.send();\n });\n });\n\n const { tenant, endpoint, token } = getEventValues(event);\n\n const headers = {\n Authorization: `Bearer ${token}`,\n [\"x-tenant\"]: tenant,\n [\"x-webiny-cms-endpoint\"]: endpoint,\n ...event.headers\n };\n\n return execute({\n app,\n url,\n payload: {\n ...event,\n headers\n }\n });\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,6 @@
1
- import { IWebsocketsIncomingEvent } from "./types";
1
+ import type { IWebsocketsIncomingEvent } from "../handler/types.js";
2
2
  export declare const getEventValues: (event: IWebsocketsIncomingEvent) => {
3
3
  tenant: string;
4
- locale: string;
5
4
  token: string | null;
6
5
  endpoint: string;
7
6
  };
@@ -1,9 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getEventValues = void 0;
7
1
  const getEventBody = event => {
8
2
  if (!event.body) {
9
3
  return {};
@@ -26,21 +20,15 @@ const getToken = (body, event) => {
26
20
  const getTenant = (body, event) => {
27
21
  return body?.tenant || event.queryStringParameters?.tenant || "root";
28
22
  };
29
- const getLocale = (body, event) => {
30
- return body?.locale || event.queryStringParameters?.locale || "en-US";
31
- };
32
- const getEventValues = event => {
23
+ export const getEventValues = event => {
33
24
  const body = getEventBody(event);
34
25
  const token = getToken(body, event);
35
26
  const tenant = getTenant(body, event);
36
- const locale = getLocale(body, event);
37
27
  return {
38
28
  tenant,
39
- locale,
40
29
  token,
41
30
  endpoint: "manage"
42
31
  };
43
32
  };
44
- exports.getEventValues = getEventValues;
45
33
 
46
34
  //# sourceMappingURL=headers.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getEventBody","event","body","JSON","parse","ex","console","log","message","getToken","token","queryStringParameters","getTenant","tenant","getLocale","locale","getEventValues","endpoint","exports"],"sources":["headers.ts"],"sourcesContent":["import { IWebsocketsEventData, IWebsocketsIncomingEvent } from \"~/handler/types\";\n\nconst getEventBody = (event: IWebsocketsIncomingEvent): IWebsocketsEventData => {\n if (!event.body) {\n return {};\n } else if (typeof event.body === \"object\") {\n return event.body;\n } else if (typeof event.body === \"string\") {\n try {\n return JSON.parse(event.body);\n } catch (ex) {\n console.log(ex.message);\n return {};\n }\n }\n console.log(\"Unexpected event.body type:\", typeof event.body);\n return {};\n};\n\nconst getToken = (body: IWebsocketsEventData, event: IWebsocketsIncomingEvent): string | null => {\n return body?.token || event.queryStringParameters?.token || null;\n};\n\nconst getTenant = (body: IWebsocketsEventData, event: IWebsocketsIncomingEvent): string => {\n return body?.tenant || event.queryStringParameters?.tenant || \"root\";\n};\n\nconst getLocale = (body: IWebsocketsEventData, event: IWebsocketsIncomingEvent): string => {\n return body?.locale || event.queryStringParameters?.locale || \"en-US\";\n};\n\nexport const getEventValues = (event: IWebsocketsIncomingEvent) => {\n const body = getEventBody(event);\n\n const token = getToken(body, event);\n const tenant = getTenant(body, event);\n const locale = getLocale(body, event);\n return {\n tenant,\n locale,\n token,\n endpoint: \"manage\"\n };\n};\n"],"mappings":";;;;;;AAEA,MAAMA,YAAY,GAAIC,KAA+B,IAA2B;EAC5E,IAAI,CAACA,KAAK,CAACC,IAAI,EAAE;IACb,OAAO,CAAC,CAAC;EACb,CAAC,MAAM,IAAI,OAAOD,KAAK,CAACC,IAAI,KAAK,QAAQ,EAAE;IACvC,OAAOD,KAAK,CAACC,IAAI;EACrB,CAAC,MAAM,IAAI,OAAOD,KAAK,CAACC,IAAI,KAAK,QAAQ,EAAE;IACvC,IAAI;MACA,OAAOC,IAAI,CAACC,KAAK,CAACH,KAAK,CAACC,IAAI,CAAC;IACjC,CAAC,CAAC,OAAOG,EAAE,EAAE;MACTC,OAAO,CAACC,GAAG,CAACF,EAAE,CAACG,OAAO,CAAC;MACvB,OAAO,CAAC,CAAC;IACb;EACJ;EACAF,OAAO,CAACC,GAAG,CAAC,6BAA6B,EAAE,OAAON,KAAK,CAACC,IAAI,CAAC;EAC7D,OAAO,CAAC,CAAC;AACb,CAAC;AAED,MAAMO,QAAQ,GAAGA,CAACP,IAA0B,EAAED,KAA+B,KAAoB;EAC7F,OAAOC,IAAI,EAAEQ,KAAK,IAAIT,KAAK,CAACU,qBAAqB,EAAED,KAAK,IAAI,IAAI;AACpE,CAAC;AAED,MAAME,SAAS,GAAGA,CAACV,IAA0B,EAAED,KAA+B,KAAa;EACvF,OAAOC,IAAI,EAAEW,MAAM,IAAIZ,KAAK,CAACU,qBAAqB,EAAEE,MAAM,IAAI,MAAM;AACxE,CAAC;AAED,MAAMC,SAAS,GAAGA,CAACZ,IAA0B,EAAED,KAA+B,KAAa;EACvF,OAAOC,IAAI,EAAEa,MAAM,IAAId,KAAK,CAACU,qBAAqB,EAAEI,MAAM,IAAI,OAAO;AACzE,CAAC;AAEM,MAAMC,cAAc,GAAIf,KAA+B,IAAK;EAC/D,MAAMC,IAAI,GAAGF,YAAY,CAACC,KAAK,CAAC;EAEhC,MAAMS,KAAK,GAAGD,QAAQ,CAACP,IAAI,EAAED,KAAK,CAAC;EACnC,MAAMY,MAAM,GAAGD,SAAS,CAACV,IAAI,EAAED,KAAK,CAAC;EACrC,MAAMc,MAAM,GAAGD,SAAS,CAACZ,IAAI,EAAED,KAAK,CAAC;EACrC,OAAO;IACHY,MAAM;IACNE,MAAM;IACNL,KAAK;IACLO,QAAQ,EAAE;EACd,CAAC;AACL,CAAC;AAACC,OAAA,CAAAF,cAAA,GAAAA,cAAA","ignoreList":[]}
1
+ {"version":3,"names":["getEventBody","event","body","JSON","parse","ex","console","log","message","getToken","token","queryStringParameters","getTenant","tenant","getEventValues","endpoint"],"sources":["headers.ts"],"sourcesContent":["import type { IWebsocketsEventData, IWebsocketsIncomingEvent } from \"~/handler/types.js\";\n\nconst getEventBody = (event: IWebsocketsIncomingEvent): IWebsocketsEventData => {\n if (!event.body) {\n return {};\n } else if (typeof event.body === \"object\") {\n return event.body;\n } else if (typeof event.body === \"string\") {\n try {\n return JSON.parse(event.body);\n } catch (ex) {\n console.log(ex.message);\n return {};\n }\n }\n console.log(\"Unexpected event.body type:\", typeof event.body);\n return {};\n};\n\nconst getToken = (body: IWebsocketsEventData, event: IWebsocketsIncomingEvent): string | null => {\n return body?.token || event.queryStringParameters?.token || null;\n};\n\nconst getTenant = (body: IWebsocketsEventData, event: IWebsocketsIncomingEvent): string => {\n return body?.tenant || event.queryStringParameters?.tenant || \"root\";\n};\n\nexport const getEventValues = (event: IWebsocketsIncomingEvent) => {\n const body = getEventBody(event);\n\n const token = getToken(body, event);\n const tenant = getTenant(body, event);\n return {\n tenant,\n token,\n endpoint: \"manage\"\n };\n};\n"],"mappings":"AAEA,MAAMA,YAAY,GAAIC,KAA+B,IAA2B;EAC5E,IAAI,CAACA,KAAK,CAACC,IAAI,EAAE;IACb,OAAO,CAAC,CAAC;EACb,CAAC,MAAM,IAAI,OAAOD,KAAK,CAACC,IAAI,KAAK,QAAQ,EAAE;IACvC,OAAOD,KAAK,CAACC,IAAI;EACrB,CAAC,MAAM,IAAI,OAAOD,KAAK,CAACC,IAAI,KAAK,QAAQ,EAAE;IACvC,IAAI;MACA,OAAOC,IAAI,CAACC,KAAK,CAACH,KAAK,CAACC,IAAI,CAAC;IACjC,CAAC,CAAC,OAAOG,EAAE,EAAE;MACTC,OAAO,CAACC,GAAG,CAACF,EAAE,CAACG,OAAO,CAAC;MACvB,OAAO,CAAC,CAAC;IACb;EACJ;EACAF,OAAO,CAACC,GAAG,CAAC,6BAA6B,EAAE,OAAON,KAAK,CAACC,IAAI,CAAC;EAC7D,OAAO,CAAC,CAAC;AACb,CAAC;AAED,MAAMO,QAAQ,GAAGA,CAACP,IAA0B,EAAED,KAA+B,KAAoB;EAC7F,OAAOC,IAAI,EAAEQ,KAAK,IAAIT,KAAK,CAACU,qBAAqB,EAAED,KAAK,IAAI,IAAI;AACpE,CAAC;AAED,MAAME,SAAS,GAAGA,CAACV,IAA0B,EAAED,KAA+B,KAAa;EACvF,OAAOC,IAAI,EAAEW,MAAM,IAAIZ,KAAK,CAACU,qBAAqB,EAAEE,MAAM,IAAI,MAAM;AACxE,CAAC;AAED,OAAO,MAAMC,cAAc,GAAIb,KAA+B,IAAK;EAC/D,MAAMC,IAAI,GAAGF,YAAY,CAACC,KAAK,CAAC;EAEhC,MAAMS,KAAK,GAAGD,QAAQ,CAACP,IAAI,EAAED,KAAK,CAAC;EACnC,MAAMY,MAAM,GAAGD,SAAS,CAACV,IAAI,EAAED,KAAK,CAAC;EACrC,OAAO;IACHY,MAAM;IACNH,KAAK;IACLK,QAAQ,EAAE;EACd,CAAC;AACL,CAAC","ignoreList":[]}
@@ -1,8 +1,6 @@
1
- "use strict";
2
-
3
- var _registry = require("@webiny/handler-aws/registry");
4
- var _handlerAws = require("@webiny/handler-aws");
5
- const handler = (0, _handlerAws.createSourceHandler)({
1
+ import { registry } from "@webiny/handler-aws/registry.js";
2
+ import { createSourceHandler } from "@webiny/handler-aws";
3
+ const handler = createSourceHandler({
6
4
  name: "handler-webiny-websockets",
7
5
  canUse: event => {
8
6
  const {
@@ -19,10 +17,10 @@ const handler = (0, _handlerAws.createSourceHandler)({
19
17
  }) => {
20
18
  const {
21
19
  createHandler
22
- } = await import( /* webpackChunkName: "SocketsHandler" */"./handler");
20
+ } = await import(/* webpackChunkName: "SocketsHandler" */"./handler.js");
23
21
  return createHandler(params)(event, context);
24
22
  }
25
23
  });
26
- _registry.registry.register(handler);
24
+ registry.register(handler);
27
25
 
28
26
  //# sourceMappingURL=register.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_registry","require","_handlerAws","handler","createSourceHandler","name","canUse","event","routeKey","connectionId","eventType","requestContext","handle","params","context","createHandler","registry","register"],"sources":["register.ts"],"sourcesContent":["import { registry } from \"@webiny/handler-aws/registry\";\nimport { createSourceHandler } from \"@webiny/handler-aws\";\nimport { HandlerParams, IWebsocketsIncomingEvent } from \"./types\";\n\nconst handler = createSourceHandler<IWebsocketsIncomingEvent, HandlerParams>({\n name: \"handler-webiny-websockets\",\n canUse: event => {\n const { routeKey, connectionId, eventType } = event.requestContext || {};\n return !!routeKey && !!connectionId && !!eventType;\n },\n handle: async ({ params, event, context }) => {\n const { createHandler } = await import(\n /* webpackChunkName: \"SocketsHandler\" */\n \"./handler\"\n );\n return createHandler(params)(event, context);\n }\n});\n\nregistry.register(handler);\n"],"mappings":";;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAGA,MAAME,OAAO,GAAG,IAAAC,+BAAmB,EAA0C;EACzEC,IAAI,EAAE,2BAA2B;EACjCC,MAAM,EAAEC,KAAK,IAAI;IACb,MAAM;MAAEC,QAAQ;MAAEC,YAAY;MAAEC;IAAU,CAAC,GAAGH,KAAK,CAACI,cAAc,IAAI,CAAC,CAAC;IACxE,OAAO,CAAC,CAACH,QAAQ,IAAI,CAAC,CAACC,YAAY,IAAI,CAAC,CAACC,SAAS;EACtD,CAAC;EACDE,MAAM,EAAE,MAAAA,CAAO;IAAEC,MAAM;IAAEN,KAAK;IAAEO;EAAQ,CAAC,KAAK;IAC1C,MAAM;MAAEC;IAAc,CAAC,GAAG,MAAM,MAAM,EAClC,mDAEJ,CAAC;IACD,OAAOA,aAAa,CAACF,MAAM,CAAC,CAACN,KAAK,EAAEO,OAAO,CAAC;EAChD;AACJ,CAAC,CAAC;AAEFE,kBAAQ,CAACC,QAAQ,CAACd,OAAO,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["registry","createSourceHandler","handler","name","canUse","event","routeKey","connectionId","eventType","requestContext","handle","params","context","createHandler","register"],"sources":["register.ts"],"sourcesContent":["import { registry } from \"@webiny/handler-aws/registry.js\";\nimport { createSourceHandler } from \"@webiny/handler-aws\";\nimport type { HandlerParams, IWebsocketsIncomingEvent } from \"./types.js\";\n\nconst handler = createSourceHandler<IWebsocketsIncomingEvent, HandlerParams>({\n name: \"handler-webiny-websockets\",\n canUse: event => {\n const { routeKey, connectionId, eventType } = event.requestContext || {};\n return !!routeKey && !!connectionId && !!eventType;\n },\n handle: async ({ params, event, context }) => {\n const { createHandler } = await import(\n /* webpackChunkName: \"SocketsHandler\" */\n \"./handler.js\"\n );\n return createHandler(params)(event, context);\n }\n});\n\nregistry.register(handler);\n"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,iCAAiC;AAC1D,SAASC,mBAAmB,QAAQ,qBAAqB;AAGzD,MAAMC,OAAO,GAAGD,mBAAmB,CAA0C;EACzEE,IAAI,EAAE,2BAA2B;EACjCC,MAAM,EAAEC,KAAK,IAAI;IACb,MAAM;MAAEC,QAAQ;MAAEC,YAAY;MAAEC;IAAU,CAAC,GAAGH,KAAK,CAACI,cAAc,IAAI,CAAC,CAAC;IACxE,OAAO,CAAC,CAACH,QAAQ,IAAI,CAAC,CAACC,YAAY,IAAI,CAAC,CAACC,SAAS;EACtD,CAAC;EACDE,MAAM,EAAE,MAAAA,CAAO;IAAEC,MAAM;IAAEN,KAAK;IAAEO;EAAQ,CAAC,KAAK;IAC1C,MAAM;MAAEC;IAAc,CAAC,GAAG,MAAM,MAAM,CAClC,sDAEJ,CAAC;IACD,OAAOA,aAAa,CAACF,MAAM,CAAC,CAACN,KAAK,EAAEO,OAAO,CAAC;EAChD;AACJ,CAAC,CAAC;AAEFZ,QAAQ,CAACc,QAAQ,CAACZ,OAAO,CAAC","ignoreList":[]}
@@ -1,9 +1,9 @@
1
- import { HandlerFactoryParams } from "@webiny/handler-aws/types";
2
- import { IWebsocketsEventValidator } from "../validator";
3
- import { IWebsocketsResponse } from "../response";
4
- import { APIGatewayProxyResult, Context as LambdaContext } from "aws-lambda";
5
- import { GenericRecord } from "@webiny/api/types";
6
- import { PartialDeep } from "type-fest";
1
+ import type { HandlerFactoryParams } from "@webiny/handler-aws/types.js";
2
+ import type { IWebsocketsEventValidator } from "../validator/index.js";
3
+ import type { IWebsocketsResponse } from "../response/index.js";
4
+ import type { APIGatewayProxyResult, Context as LambdaContext } from "@webiny/aws-sdk/types/index.js";
5
+ import type { GenericRecord } from "@webiny/api/types.js";
6
+ import type { PartialDeep } from "type-fest";
7
7
  export interface HandlerCallable {
8
8
  (event: IWebsocketsIncomingEvent, context: LambdaContext): Promise<APIGatewayProxyResult>;
9
9
  }
@@ -19,7 +19,6 @@ export declare enum WebsocketsEventRoute {
19
19
  export interface IWebsocketsEventData {
20
20
  token?: string;
21
21
  tenant?: string;
22
- locale?: string;
23
22
  messageId?: string;
24
23
  action?: string;
25
24
  data?: GenericRecord;
@@ -54,12 +53,10 @@ export interface IWebsocketsEventHeaders {
54
53
  "X-Forwarded-Port"?: `${number}`;
55
54
  "X-Forwarded-Proto"?: "https" | "http";
56
55
  ["x-tenant"]?: string;
57
- ["x-webiny-cms-locale"]?: string;
58
56
  ["x-webiny-cms-endpoint"]?: string;
59
57
  }
60
58
  export interface IWebsocketsEventQueryStringParameters {
61
59
  tenant?: string;
62
- locale?: string;
63
60
  token?: string;
64
61
  }
65
62
  export interface IWebsocketsEvent<T extends IWebsocketsEventData = IWebsocketsEventData> {
package/handler/types.js CHANGED
@@ -1,16 +1,10 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.WebsocketsEventRoute = exports.WebsocketsEventRequestContextEventType = void 0;
7
- let WebsocketsEventRoute = exports.WebsocketsEventRoute = /*#__PURE__*/function (WebsocketsEventRoute) {
1
+ export let WebsocketsEventRoute = /*#__PURE__*/function (WebsocketsEventRoute) {
8
2
  WebsocketsEventRoute["connect"] = "$connect";
9
3
  WebsocketsEventRoute["disconnect"] = "$disconnect";
10
4
  WebsocketsEventRoute["default"] = "$default";
11
5
  return WebsocketsEventRoute;
12
6
  }({});
13
- let WebsocketsEventRequestContextEventType = exports.WebsocketsEventRequestContextEventType = /*#__PURE__*/function (WebsocketsEventRequestContextEventType) {
7
+ export let WebsocketsEventRequestContextEventType = /*#__PURE__*/function (WebsocketsEventRequestContextEventType) {
14
8
  WebsocketsEventRequestContextEventType["message"] = "MESSAGE";
15
9
  WebsocketsEventRequestContextEventType["connect"] = "CONNECT";
16
10
  WebsocketsEventRequestContextEventType["disconnect"] = "DISCONNECT";