@asyncapi/generator 2.8.0 → 2.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/docs/api.md +1 -2
  3. package/lib/templates/BakedInTemplatesList.json +7 -0
  4. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/.ageneratorrc +21 -0
  5. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/README.md +12 -0
  6. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/ClientClass.js +42 -0
  7. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/ClientClass.js.map +1 -0
  8. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/ClientFields.js +21 -0
  9. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/ClientFields.js.map +1 -0
  10. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/Connect.js +60 -0
  11. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/Connect.js.map +1 -0
  12. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/Constructor.js +27 -0
  13. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/Constructor.js.map +1 -0
  14. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/HandleMessage.js +21 -0
  15. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/HandleMessage.js.map +1 -0
  16. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/RegisterErrorHandler.js +21 -0
  17. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/RegisterErrorHandler.js.map +1 -0
  18. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/SendEchoMessage.js +27 -0
  19. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/SendEchoMessage.js.map +1 -0
  20. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/template/client.dart.js +181 -0
  21. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/template/client.dart.js.map +1 -0
  22. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/template/pubspec.yaml.js +21 -0
  23. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/template/pubspec.yaml.js.map +1 -0
  24. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/ClientClass.js +32 -0
  25. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/ClientFields.js +12 -0
  26. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/Connect.js +49 -0
  27. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/Constructor.js +16 -0
  28. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/HandleMessage.js +14 -0
  29. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/RegisterErrorHandler.js +14 -0
  30. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/SendEchoMessage.js +20 -0
  31. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/example.dart +36 -0
  32. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/package.json +54 -0
  33. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/template/client.dart.js +24 -0
  34. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/template/pubspec.yaml.js +16 -0
  35. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/.ageneratorrc +25 -0
  36. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/README.md +28 -0
  37. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ClientConnector.js +27 -0
  38. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ClientConnector.js.map +1 -0
  39. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ClientFields.js +19 -0
  40. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ClientFields.js.map +1 -0
  41. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ConnectorFields.js +22 -0
  42. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ConnectorFields.js.map +1 -0
  43. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/EchoWebSocket.js +40 -0
  44. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/EchoWebSocket.js.map +1 -0
  45. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/HandleError.js +20 -0
  46. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/HandleError.js.map +1 -0
  47. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/InitConnector.js +47 -0
  48. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/InitConnector.js.map +1 -0
  49. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnClose.js +23 -0
  50. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnClose.js.map +1 -0
  51. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnOpen.js +25 -0
  52. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnOpen.js.map +1 -0
  53. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnTextMessageHandler.js +29 -0
  54. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnTextMessageHandler.js.map +1 -0
  55. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/dependencies/ClientDependencies.js +29 -0
  56. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/dependencies/ClientDependencies.js.map +1 -0
  57. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/dependencies/ConnectorDependencies.js +27 -0
  58. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/dependencies/ConnectorDependencies.js.map +1 -0
  59. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/client.java.js +154 -0
  60. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/client.java.js.map +1 -0
  61. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/connector.java.js +108 -0
  62. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/connector.java.js.map +1 -0
  63. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/models/model.js +52 -0
  64. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/models/model.js.map +1 -0
  65. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/resources/AppProperties.js +27 -0
  66. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/resources/AppProperties.js.map +1 -0
  67. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/ClientConnector.js +17 -0
  68. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/ClientFields.js +10 -0
  69. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/ConnectorFields.js +11 -0
  70. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/EchoWebSocket.js +27 -0
  71. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/HandleError.js +14 -0
  72. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/InitConnector.js +41 -0
  73. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/OnClose.js +16 -0
  74. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/OnOpen.js +16 -0
  75. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/OnTextMessageHandler.js +25 -0
  76. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/dependencies/ClientDependencies.js +23 -0
  77. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/dependencies/ConnectorDependencies.js +20 -0
  78. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/package.json +63 -0
  79. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/.dockerignore +5 -0
  80. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/.mvn/wrapper/MavenWrapperDownloader.java +93 -0
  81. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/.mvn/wrapper/maven-wrapper.properties +20 -0
  82. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/README.md +58 -0
  83. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/mvnw +332 -0
  84. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/mvnw.cmd +206 -0
  85. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/pom.xml +125 -0
  86. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/src/main/docker/Dockerfile.jvm +98 -0
  87. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/src/main/java/com/asyncapi/client.java.js +27 -0
  88. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/src/main/java/com/asyncapi/connector.java.js +16 -0
  89. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/src/main/java/com/asyncapi/models/model.js +36 -0
  90. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/src/main/resources/AppProperties.js +19 -0
  91. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/.ageneratorrc +21 -0
  92. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/README.md +10 -0
  93. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/AvailableOperations.js +34 -0
  94. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/AvailableOperations.js.map +1 -0
  95. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/ClientClass.js +47 -0
  96. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/ClientClass.js.map +1 -0
  97. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/Connect.js +63 -0
  98. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/Connect.js.map +1 -0
  99. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/Constructor.js +29 -0
  100. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/Constructor.js.map +1 -0
  101. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/HandleMessage.js +21 -0
  102. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/HandleMessage.js.map +1 -0
  103. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/MessageExamples.js +29 -0
  104. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/MessageExamples.js.map +1 -0
  105. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/ModuleExport.js +18 -0
  106. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/ModuleExport.js.map +1 -0
  107. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/OperationHeader.js +19 -0
  108. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/OperationHeader.js.map +1 -0
  109. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/RegisterErrorHandler.js +25 -0
  110. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/RegisterErrorHandler.js.map +1 -0
  111. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/SendOperation.js +53 -0
  112. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/SendOperation.js.map +1 -0
  113. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/example.js +43 -0
  114. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/example.js.map +1 -0
  115. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/template/README.md.js +166 -0
  116. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/template/README.md.js.map +1 -0
  117. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/template/client.js.js +216 -0
  118. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/template/client.js.js.map +1 -0
  119. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/AvailableOperations.js +20 -0
  120. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/ClientClass.js +32 -0
  121. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/Connect.js +54 -0
  122. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/Constructor.js +21 -0
  123. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/HandleMessage.js +14 -0
  124. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/MessageExamples.js +25 -0
  125. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/ModuleExport.js +11 -0
  126. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/OperationHeader.js +12 -0
  127. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/RegisterErrorHandler.js +18 -0
  128. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/SendOperation.js +44 -0
  129. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/example.js +42 -0
  130. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/package.json +54 -0
  131. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/template/README.md.js +106 -0
  132. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/template/client.js.js +24 -0
  133. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/.ageneratorrc +21 -0
  134. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/README.md +53 -0
  135. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/ClientClass.js +61 -0
  136. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/ClientClass.js.map +1 -0
  137. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Connect.js +58 -0
  138. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Connect.js.map +1 -0
  139. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Constructor.js +55 -0
  140. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Constructor.js.map +1 -0
  141. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/HandleError.js +25 -0
  142. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/HandleError.js.map +1 -0
  143. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/HandleMessage.js +24 -0
  144. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/HandleMessage.js.map +1 -0
  145. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/InitSignature.js +34 -0
  146. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/InitSignature.js.map +1 -0
  147. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/QueryParamsArgumentsDocs.js +27 -0
  148. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/QueryParamsArgumentsDocs.js.map +1 -0
  149. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/QueryParamsVariables.js +36 -0
  150. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/QueryParamsVariables.js.map +1 -0
  151. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/RegisterErrorHandler.js +23 -0
  152. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/RegisterErrorHandler.js.map +1 -0
  153. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/RegisterOutgoingProcessor.js +26 -0
  154. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/RegisterOutgoingProcessor.js.map +1 -0
  155. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Requires.js +24 -0
  156. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Requires.js.map +1 -0
  157. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Send.js +41 -0
  158. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Send.js.map +1 -0
  159. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/SendOperation.js +56 -0
  160. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/SendOperation.js.map +1 -0
  161. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/template/client.py.js +379 -0
  162. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/template/client.py.js.map +1 -0
  163. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/template/models.js +15 -0
  164. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/template/models.js.map +1 -0
  165. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/template/requirements.txt.js +19 -0
  166. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/template/requirements.txt.js.map +1 -0
  167. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/ClientClass.js +47 -0
  168. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/Connect.js +49 -0
  169. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/Constructor.js +42 -0
  170. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/HandleError.js +18 -0
  171. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/HandleMessage.js +17 -0
  172. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/InitSignature.js +24 -0
  173. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/QueryParamsArgumentsDocs.js +19 -0
  174. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/QueryParamsVariables.js +27 -0
  175. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/RegisterErrorHandler.js +16 -0
  176. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/RegisterOutgoingProcessor.js +19 -0
  177. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/Requires.js +15 -0
  178. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/Send.js +33 -0
  179. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/SendOperation.js +50 -0
  180. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/example-slack.py +21 -0
  181. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/example.py +41 -0
  182. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/package.json +54 -0
  183. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/template/client.py.js +23 -0
  184. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/template/models.js +5 -0
  185. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/template/requirements.txt.js +13 -0
  186. package/package.json +4 -3
@@ -0,0 +1,47 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+ import { getClientName, getServerUrl, getServer, getQueryParams, getTitle } from '@asyncapi/generator-helpers';
3
+ import { Constructor } from './Constructor';
4
+ import { Connect } from './Connect';
5
+ import { RegisterErrorHandler } from './RegisterErrorHandler';
6
+ import { HandleMessage } from './HandleMessage';
7
+ import { SendOperation } from './SendOperation';
8
+ import { Send } from './Send';
9
+ import { CloseConnection, RegisterMessageHandler } from '@asyncapi/generator-components';
10
+ import { RegisterOutgoingProcessor } from './RegisterOutgoingProcessor';
11
+ import { HandleError } from './HandleError';
12
+
13
+ export function ClientClass({ asyncapi, params }) {
14
+ const server = getServer(asyncapi.servers(), params.server);
15
+ const title = getTitle(asyncapi);
16
+ const queryParams = getQueryParams(asyncapi.channels());
17
+ const clientName = getClientName(asyncapi, params.appendClientSuffix, params.customClientName);
18
+ const serverUrl = getServerUrl(server);
19
+ const operations = asyncapi.operations();
20
+ const sendOperations = operations.filterBySend();
21
+ return (
22
+ <Text>
23
+ <Text newLines={2}>
24
+ {`class ${clientName}:`}
25
+ </Text>
26
+ <Constructor serverUrl={serverUrl} query={queryParams} />
27
+ <Connect title={title} />
28
+ <RegisterMessageHandler
29
+ language="python"
30
+ methodName='register_message_handler'
31
+ methodParams={['self', 'handler']}
32
+ preExecutionCode='"""Register a callable to process incoming messages."""'
33
+ />
34
+ <RegisterErrorHandler />
35
+ <RegisterOutgoingProcessor />
36
+ <HandleMessage />
37
+ <HandleError />
38
+ <SendOperation sendOperations={sendOperations} clientName={clientName} />
39
+ <Send sendOperations={sendOperations} />
40
+ <CloseConnection
41
+ language="python"
42
+ methodParams={['self']}
43
+ preExecutionCode='"""Cleanly close the WebSocket connection."""'
44
+ />
45
+ </Text>
46
+ );
47
+ }
@@ -0,0 +1,49 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+
3
+ export function Connect({ title }) {
4
+ return (
5
+ <Text newLines={2} indent={2}>
6
+ {
7
+ `def on_open(self, ws):
8
+ print("Connected to ${title} server")
9
+
10
+ def on_message(self, ws, message):
11
+ self.handle_message(message)
12
+
13
+ def on_error(self, ws, error):
14
+ print("WebSocket Error:", error)
15
+ self.handle_error(error)
16
+
17
+ def on_close(self, ws, close_status_code, close_msg):
18
+ print("Disconnected from ${title}", close_status_code, close_msg)
19
+
20
+ def connect(self):
21
+ """Establish the connection and start the run_forever loop in a background thread."""
22
+ ssl_opts = {"ca_certs": certifi.where()}
23
+ self.ws_app = websocket.WebSocketApp(
24
+ self.url,
25
+ on_open=self.on_open,
26
+ on_message=self.on_message,
27
+ on_error=self.on_error,
28
+ on_close=self.on_close
29
+ )
30
+ # Run the WebSocketApp's run_forever in a separate thread with multithreading enabled.
31
+ def run():
32
+
33
+ retry = 0
34
+ max_retries = 5
35
+
36
+ while not self._stop_event.is_set() and retry < max_retries:
37
+ try:
38
+ retry += 1
39
+ print("Starting WebSocket thread...")
40
+ self.ws_app.run_forever(sslopt=ssl_opts)
41
+ except Exception as e:
42
+ print(f"Exception in WebSocket thread: {e}") # Print full error details
43
+
44
+ thread = threading.Thread(target=run, daemon=True)
45
+ thread.start()`
46
+ }
47
+ </Text>
48
+ );
49
+ }
@@ -0,0 +1,42 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+ import { QueryParamsVariables } from './QueryParamsVariables';
3
+ import { QueryParamsArgumentsDocs } from './QueryParamsArgumentsDocs';
4
+ import { InitSignature } from './InitSignature';
5
+
6
+ export function Constructor({ serverUrl, query}) {
7
+ const queryParamsArray = query && Array.from(query.entries());
8
+
9
+ return (
10
+ <>
11
+ <InitSignature queryParams={queryParamsArray} serverUrl={serverUrl} />
12
+ <Text indent={2}>
13
+ {`
14
+ """
15
+ Constructor to initialize the WebSocket client.
16
+
17
+ Args:
18
+ url (str, optional): The WebSocket server URL. Use it if the server URL is
19
+ different from the default one taken from the AsyncAPI document.`}
20
+ </Text>
21
+ <QueryParamsArgumentsDocs queryParams={queryParamsArray} />
22
+ <Text indent={2}>
23
+ {`
24
+ """
25
+ self.ws_app = None # Instance of WebSocketApp
26
+ self.message_handlers = [] # Callables for incoming messages
27
+ self.error_handlers = [] # Callables for errors
28
+ self.outgoing_processors = [] # Callables to process outgoing messages
29
+ self._stop_event = threading.Event()
30
+
31
+ ${ query ? 'params = {}' : ''}`
32
+ }
33
+ </Text>
34
+ <QueryParamsVariables queryParams={queryParamsArray} />
35
+ <Text newLines={2}>
36
+ {`
37
+ ${query ? 'qs = urlencode(params) if params else ""' : ''}
38
+ ${query ? 'self.url = f"{url}{f\'?{qs}\' if qs else \'\'}"' : 'self.url = url'}`}
39
+ </Text>
40
+ </>
41
+ );
42
+ }
@@ -0,0 +1,18 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+
3
+ export function HandleError() {
4
+ return (
5
+ <Text newLines={2} indent={2}>
6
+ {
7
+ `def handle_error(self, error):
8
+ """Pass the error to all registered error handlers. Generic log message is printed if no handlers are registered."""
9
+ if len(self.error_handlers) == 0:
10
+ print("\\033[91mError occurred:\\033[0m", error)
11
+ else:
12
+ # Call custom error handlers
13
+ for handler in self.error_handlers:
14
+ handler(error)`
15
+ }
16
+ </Text>
17
+ );
18
+ }
@@ -0,0 +1,17 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+
3
+ export function HandleMessage() {
4
+ return (
5
+ <Text newLines={2} indent={2}>
6
+ {
7
+ `def handle_message(self, message):
8
+ """Pass the incoming message to all registered message handlers. """
9
+ if len(self.message_handlers) == 0:
10
+ print("\\033[94mReceived raw message:\\033[0m", message)
11
+ else:
12
+ for handler in self.message_handlers:
13
+ handler(message)`
14
+ }
15
+ </Text>
16
+ );
17
+ }
@@ -0,0 +1,24 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+
3
+ export function InitSignature({ queryParams, serverUrl }) {
4
+ if (!queryParams) {
5
+ return (
6
+ <Text indent={2} newLines={2}>
7
+ {`def __init__(self, url: str = "${serverUrl}"):`}
8
+ </Text>
9
+ );
10
+ }
11
+
12
+ const queryParamsArguments = queryParams?.map((param) => {
13
+ const paramName = param[0];
14
+ const paramDefaultValue = param[1];
15
+ const defaultValue = paramDefaultValue ? `"${paramDefaultValue}"` : 'None';
16
+ return `${paramName}: str = ${defaultValue}`;
17
+ }).join(', ');
18
+
19
+ return (
20
+ <Text indent={2} newLines={2}>
21
+ {`def __init__(self, url: str = "${serverUrl}", ${queryParamsArguments}):`}
22
+ </Text>
23
+ );
24
+ }
@@ -0,0 +1,19 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+
3
+ export function QueryParamsArgumentsDocs({ queryParams }) {
4
+ if (!queryParams) {
5
+ return null;
6
+ }
7
+
8
+ return queryParams.map((param) => {
9
+ const paramName = param[0];
10
+ const firstLine = `${paramName} (str, optional):`;
11
+ const secondLine = `If provided (or if ${paramName.toUpperCase()} environment variable is set), added as ?${paramName}=… to URL`;
12
+ return (
13
+ <Text indent={1}>
14
+ {firstLine}
15
+ {secondLine}
16
+ </Text>
17
+ );
18
+ });
19
+ }
@@ -0,0 +1,27 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+
3
+ export function QueryParamsVariables({ queryParams }) {
4
+ if (!queryParams) {
5
+ return null;
6
+ }
7
+
8
+ return queryParams.map((param) => {
9
+ const paramName = param[0];
10
+ const variableDefinition = `${paramName} = ${paramName} or os.getenv("${paramName.toUpperCase()}")`;
11
+ const ifQueryProvided = `if ${paramName} is not None:`;
12
+ const assignment = `params["${paramName}"] = ${paramName}`;
13
+ return (
14
+ <>
15
+ <Text indent={8}>
16
+ {variableDefinition}
17
+ </Text>
18
+ <Text indent={8}>
19
+ {ifQueryProvided}
20
+ </Text>
21
+ <Text indent={10}>
22
+ {assignment}
23
+ </Text>
24
+ </>
25
+ );
26
+ });
27
+ }
@@ -0,0 +1,16 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+
3
+ export function RegisterErrorHandler() {
4
+ return (
5
+ <Text newLines={2} indent={2}>
6
+ {
7
+ `def register_error_handler(self, handler):
8
+ """Register a callable to process errors."""
9
+ if callable(handler):
10
+ self.error_handlers.append(handler)
11
+ else:
12
+ print("Error handler must be callable")`
13
+ }
14
+ </Text>
15
+ );
16
+ }
@@ -0,0 +1,19 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+
3
+ export function RegisterOutgoingProcessor() {
4
+ return (
5
+ <Text newLines={2} indent={2}>
6
+ {
7
+ `def register_outgoing_processor(self, processor):
8
+ """
9
+ Register a callable that processes outgoing messages automatically.
10
+ These processors run in sequence before each message is sent.
11
+ """
12
+ if callable(processor):
13
+ self.outgoing_processors.append(processor)
14
+ else:
15
+ print("Outgoing processor must be callable")`
16
+ }
17
+ </Text>
18
+ );
19
+ }
@@ -0,0 +1,15 @@
1
+ import { DependencyProvider } from '@asyncapi/generator-components';
2
+
3
+ export function Requires({ query }) {
4
+ const additionalDependencies = [];
5
+ if (query) {
6
+ additionalDependencies.push('import os');
7
+ additionalDependencies.push('from urllib.parse import urlencode');
8
+ }
9
+ return (
10
+ <DependencyProvider
11
+ language="python"
12
+ additionalDependencies={additionalDependencies}
13
+ />
14
+ );
15
+ }
@@ -0,0 +1,33 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+
3
+ export function Send({ sendOperations }) {
4
+ if (!sendOperations || sendOperations.length === 0) {
5
+ return null;
6
+ }
7
+
8
+ return (
9
+ <Text newLines={2} indent={2}>
10
+ {
11
+ `
12
+ @staticmethod
13
+ async def _send(message, socket):
14
+ """
15
+ Internal helper to handle the actual sending logic.
16
+
17
+ Args:
18
+ message (dict or str): The message to send.
19
+ socket (websockets.WebSocketCommonProtocol): The WebSocket to send through.
20
+
21
+ Notes:
22
+ If message is a dictionary, it will be automatically converted to JSON.
23
+ """
24
+ try:
25
+ if isinstance(message, dict):
26
+ message = json.dumps(message)
27
+ await socket.send(message)
28
+ except Exception as e:
29
+ print("Error sending:", e)`
30
+ }
31
+ </Text>
32
+ );
33
+ }
@@ -0,0 +1,50 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+ import { toSnakeCase } from '@asyncapi/generator-helpers';
3
+
4
+ export function SendOperation({ sendOperations, clientName }) {
5
+ if (!sendOperations || sendOperations.length === 0) {
6
+ return null;
7
+ }
8
+
9
+ return (
10
+ <>
11
+ {
12
+ sendOperations.map((operation) => {
13
+ const methodName = toSnakeCase(operation.id());
14
+ const staticMethodName = `${methodName}_static`;
15
+
16
+ return (
17
+ <Text newLines={2} indent={2}>
18
+ {`async def ${methodName}(self, message):
19
+ """
20
+ Send a ${methodName} message using the WebSocket connection attached to this instance.
21
+
22
+ Args:
23
+ message (dict or str): The message to send. Will be serialized to JSON if it's a dictionary.
24
+
25
+ Raises:
26
+ Exception: If sending fails or the socket is not connected.
27
+ """
28
+ await self._send(message, self.ws_app)
29
+
30
+ @staticmethod
31
+ async def ${staticMethodName}(message, socket):
32
+ """
33
+ Send a ${methodName} message using a provided WebSocket connection, without needing an instance.
34
+
35
+ Args:
36
+ message (dict or str): The message to send.
37
+ socket (websockets.WebSocketCommonProtocol): The WebSocket to send through.
38
+
39
+ Raises:
40
+ Exception: If sending fails or the socket is not connected.
41
+ """
42
+ await ${clientName}._send(message, socket)
43
+ `}
44
+ </Text>
45
+ );
46
+ })
47
+ }
48
+ </>
49
+ );
50
+ }
@@ -0,0 +1,21 @@
1
+ import sys
2
+ import os
3
+ import time
4
+
5
+ sys.path.append(os.path.join(os.path.dirname(__file__), 'test'))
6
+
7
+ from temp.snapshotTestResult.client_slack.client import SlackWebsocketAPIClient
8
+
9
+ def custom_message_handler(message):
10
+ print(f"\033[94mIncomming event from Slack\033[0m: {message}")
11
+
12
+ def main():
13
+ client = SlackWebsocketAPIClient()
14
+ client.register_message_handler(custom_message_handler)
15
+
16
+ client.connect()
17
+
18
+ # Keep program alive for a while to allow message processing
19
+ time.sleep(1000)
20
+
21
+ main()
@@ -0,0 +1,41 @@
1
+ import sys
2
+ import os
3
+ import time
4
+
5
+ sys.path.append(os.path.join(os.path.dirname(__file__), 'test'))
6
+
7
+ from temp.snapshotTestResult.custom_client_hoppscotch.client import HoppscotchClient
8
+
9
+ def custom_message_handler(message):
10
+ print(f"\033[94mCustom processing of received message\033[0m: {message}")
11
+
12
+ def custom_error_handler(error):
13
+ print(f"Custom error handling: {error}")
14
+
15
+ def outgoing_message_processor(message):
16
+ # Modify message before sending (e.g., add a timestamp)
17
+ print(f"\033[92mCustom processing of outgoing message\033[0m: {message}")
18
+ return {"Processed outgoing message": message, "timestamp": "2025-03-13T12:00:00Z"}
19
+
20
+ def main():
21
+ client = HoppscotchClient()
22
+ client.register_message_handler(custom_message_handler)
23
+ client.register_error_handler(custom_error_handler)
24
+ client.register_outgoing_processor(outgoing_message_processor)
25
+
26
+ client.connect()
27
+
28
+ # Give some time for the connection to establish
29
+ time.sleep(2)
30
+
31
+ # Send multiple messages to test stream handling
32
+ for i in range(5):
33
+ message = f'Hello, Echo Yo! {i}'
34
+ client.send_echo_message(message)
35
+ time.sleep(2) # Wait for a response
36
+
37
+ # Keep program alive for a while to allow message processing
38
+ time.sleep(10)
39
+
40
+ main()
41
+
@@ -0,0 +1,54 @@
1
+ {
2
+ "name": "core-template-client-websocket-python",
3
+ "private": true,
4
+ "description": "This is a template generating Python websocket client",
5
+ "scripts": {
6
+ "test": "jest --coverage",
7
+ "test:update": "npm run test -- -u",
8
+ "lint": "eslint --max-warnings 0 --config ../../../../../.eslintrc --ignore-path ../../../../../.eslintignore .",
9
+ "lint:fix": "eslint --fix --max-warnings 0 --config ../../../../../.eslintrc --ignore-path ../../../../../.eslintignore ."
10
+ },
11
+ "author": "Lukasz Gornicki <lpgornicki@gmail.com>",
12
+ "license": "Apache-2.0",
13
+ "dependencies": {
14
+ "@asyncapi/generator-react-sdk": "*",
15
+ "@asyncapi/generator-helpers": "1.0.0"
16
+ },
17
+ "devDependencies": {
18
+ "@asyncapi/parser": "^3.0.14",
19
+ "@babel/cli": "^7.25.9",
20
+ "@babel/core": "^7.26.0",
21
+ "@babel/preset-env": "^7.26.0",
22
+ "@babel/preset-react": "^7.25.9",
23
+ "jest-esm-transformer": "^1.0.0",
24
+ "eslint": "^6.8.0",
25
+ "eslint-plugin-jest": "^23.8.2",
26
+ "eslint-plugin-react": "^7.34.1",
27
+ "eslint-plugin-sonarjs": "^0.5.0"
28
+ },
29
+ "jest": {
30
+ "moduleFileExtensions": [
31
+ "js",
32
+ "json",
33
+ "jsx"
34
+ ],
35
+ "transform": {
36
+ "^.+\\.jsx?$": "babel-jest"
37
+ },
38
+ "moduleNameMapper": {
39
+ "^nimma/legacy$": "<rootDir>/../../../../../node_modules/nimma/dist/legacy/cjs/index.js",
40
+ "^nimma/(.*)": "<rootDir>/../../../../../node_modules/nimma/dist/cjs/$1"
41
+ }
42
+ },
43
+ "babel": {
44
+ "presets": [
45
+ "@babel/preset-env",
46
+ [
47
+ "@babel/preset-react",
48
+ {
49
+ "runtime": "automatic"
50
+ }
51
+ ]
52
+ ]
53
+ }
54
+ }
@@ -0,0 +1,23 @@
1
+ import { File } from '@asyncapi/generator-react-sdk';
2
+ import { getServer, getQueryParams, getInfo } from '@asyncapi/generator-helpers';
3
+ import { FileHeaderInfo } from '@asyncapi/generator-components';
4
+ import { Requires } from '../components/Requires';
5
+ import { ClientClass } from '../components/ClientClass';
6
+
7
+ export default function ({ asyncapi, params }) {
8
+ const server = getServer(asyncapi.servers(), params.server);
9
+ const info = getInfo(asyncapi);
10
+ const queryParams = getQueryParams(asyncapi.channels());
11
+ return (
12
+ // The clientFileName default values can be found and modified under the .ageneratorrc
13
+ <File name={params.clientFileName}>
14
+ <FileHeaderInfo
15
+ info={info}
16
+ server={server}
17
+ language="python"
18
+ />
19
+ <Requires query={queryParams} />
20
+ <ClientClass asyncapi={asyncapi} params={params} />
21
+ </File>
22
+ );
23
+ }
@@ -0,0 +1,5 @@
1
+ import { Models } from '@asyncapi/generator-components';
2
+
3
+ export default async function({ asyncapi }) {
4
+ return await Models({ asyncapi });
5
+ }
@@ -0,0 +1,13 @@
1
+ import { File, Text } from '@asyncapi/generator-react-sdk';
2
+
3
+ export default function () {
4
+ return (
5
+ <File name="requirements.txt">
6
+ <Text>
7
+ {`websocket-client==1.8.0
8
+ certifi==2025.1.31
9
+ requests==2.32.3`}
10
+ </Text>
11
+ </File>
12
+ );
13
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@asyncapi/generator",
3
- "version": "2.8.0",
3
+ "version": "2.8.2",
4
4
  "description": "The AsyncAPI generator. It can generate documentation, code, anything!",
5
5
  "main": "./lib/generator.js",
6
6
  "bin": {
@@ -26,8 +26,9 @@
26
26
  "generate:assets": "npm run docs && npm run generate:readme:toc",
27
27
  "bump:version": "npm --no-git-tag-version --allow-same-version version $VERSION",
28
28
  "build": "node scripts/build-templates.js",
29
- "pretest": "npm run build",
30
- "prepublish": "npm run build"
29
+ "build:reactsdk": "cd ../react-sdk && npm run build",
30
+ "pretest": "npm run build:reactsdk && npm run build",
31
+ "prepublishOnly": "npm run pretest"
31
32
  },
32
33
  "preferGlobal": true,
33
34
  "bugs": {