@asyncapi/generator 2.8.2 → 2.8.4

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 (195) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/README.md +3 -0
  3. package/docs/baked-in-templates.md +1 -1
  4. package/lib/__mocks__/templateConfigValidator.js +1 -1
  5. package/lib/generator.js +4 -59
  6. package/lib/templates/BakedInTemplatesList.json +7 -0
  7. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/.ageneratorrc +33 -0
  8. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/README.md +35 -0
  9. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ClientConsumer.js +30 -0
  10. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ClientConsumer.js.map +1 -0
  11. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ClientEndpoint.js +46 -0
  12. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ClientEndpoint.js.map +1 -0
  13. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ClientProducer.js +30 -0
  14. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ClientProducer.js.map +1 -0
  15. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ConsumeEvent.js +26 -0
  16. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ConsumeEvent.js.map +1 -0
  17. package/lib/templates/bakedInTemplates/{core-template-client-websocket-javascript/__transpiled/components/HandleMessage.js → core-template-client-kafka-java-quarkus/__transpiled/components/ConsumerFields.js} +7 -8
  18. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ConsumerFields.js.map +1 -0
  19. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/EndpointFields.js +44 -0
  20. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/EndpointFields.js.map +1 -0
  21. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/MiddleService.js +46 -0
  22. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/MiddleService.js.map +1 -0
  23. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ProduceEvent.js +48 -0
  24. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ProduceEvent.js.map +1 -0
  25. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ProducerFields.js +26 -0
  26. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ProducerFields.js.map +1 -0
  27. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/SendEvent.js +40 -0
  28. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/SendEvent.js.map +1 -0
  29. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/dependencies/ConsumerDependencies.js +18 -0
  30. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/dependencies/ConsumerDependencies.js.map +1 -0
  31. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/dependencies/EndpointDependencies.js +18 -0
  32. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/dependencies/EndpointDependencies.js.map +1 -0
  33. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/dependencies/ProducerDependencies.js +18 -0
  34. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/dependencies/ProducerDependencies.js.map +1 -0
  35. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/client.java.js +183 -0
  36. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/client.java.js.map +1 -0
  37. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/consumer.java.js +86 -0
  38. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/consumer.java.js.map +1 -0
  39. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/models/model.js +19 -0
  40. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/models/model.js.map +1 -0
  41. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/producer.java.js +102 -0
  42. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/producer.java.js.map +1 -0
  43. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/resources/AppProperties.js +73 -0
  44. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/resources/AppProperties.js.map +1 -0
  45. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/ClientConsumer.js +20 -0
  46. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/ClientEndpoint.js +32 -0
  47. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/ClientProducer.js +21 -0
  48. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/ConsumeEvent.js +18 -0
  49. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/ConsumerFields.js +9 -0
  50. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/EndpointFields.js +40 -0
  51. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/MiddleService.js +37 -0
  52. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/ProduceEvent.js +39 -0
  53. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/ProducerFields.js +16 -0
  54. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/SendEvent.js +33 -0
  55. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/dependencies/ConsumerDependencies.js +11 -0
  56. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/dependencies/EndpointDependencies.js +11 -0
  57. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/dependencies/ProducerDependencies.js +11 -0
  58. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/package.json +63 -0
  59. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/.dockerignore +5 -0
  60. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/.mvn/wrapper/MavenWrapperDownloader.java +93 -0
  61. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/.mvn/wrapper/maven-wrapper.properties +20 -0
  62. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/README.md +59 -0
  63. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/mvnw +332 -0
  64. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/mvnw.cmd +206 -0
  65. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/pom.xml +123 -0
  66. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/src/main/docker/Dockerfile.jvm +98 -0
  67. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/src/main/docker/docker-compose.yaml +28 -0
  68. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/src/main/java/com/asyncapi/client.java.js +27 -0
  69. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/src/main/java/com/asyncapi/consumer.java.js +22 -0
  70. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/src/main/java/com/asyncapi/models/model.js +6 -0
  71. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/src/main/java/com/asyncapi/producer.java.js +23 -0
  72. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/src/main/resources/AppProperties.js +75 -0
  73. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/ClientClass.js +10 -5
  74. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/ClientClass.js.map +1 -1
  75. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/template/client.dart.js +10 -74
  76. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/template/client.dart.js.map +1 -1
  77. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/ClientClass.js +11 -7
  78. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/package.json +2 -1
  79. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/README.md +88 -6
  80. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ClientConnector.js +22 -5
  81. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ClientConnector.js.map +1 -1
  82. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ClientFields.js +19 -2
  83. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ClientFields.js.map +1 -1
  84. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ConnectorFields.js +8 -2
  85. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ConnectorFields.js.map +1 -1
  86. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/Constructor.js +44 -0
  87. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/Constructor.js.map +1 -0
  88. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ConstructorSignature.js +28 -0
  89. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ConstructorSignature.js.map +1 -0
  90. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/DefaultConstructorSignature.js +32 -0
  91. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/DefaultConstructorSignature.js.map +1 -0
  92. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/EchoWebSocket.js +20 -5
  93. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/EchoWebSocket.js.map +1 -1
  94. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/HandleError.js +1 -2
  95. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/HandleError.js.map +1 -1
  96. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/InitConnector.js +23 -33
  97. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/InitConnector.js.map +1 -1
  98. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnTextMessageHandler.js +42 -9
  99. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnTextMessageHandler.js.map +1 -1
  100. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/TimedConnection.js +39 -0
  101. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/TimedConnection.js.map +1 -0
  102. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/URIParams.js +63 -0
  103. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/URIParams.js.map +1 -0
  104. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/dependencies/ClientDependencies.js +13 -17
  105. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/dependencies/ClientDependencies.js.map +1 -1
  106. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/dependencies/ConnectorDependencies.js +16 -15
  107. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/dependencies/ConnectorDependencies.js.map +1 -1
  108. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/client.java.js +153 -57
  109. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/client.java.js.map +1 -1
  110. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/connector.java.js +152 -51
  111. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/connector.java.js.map +1 -1
  112. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/models/model.js +2 -35
  113. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/models/model.js.map +1 -1
  114. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/resources/AppProperties.js +3 -1
  115. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/resources/AppProperties.js.map +1 -1
  116. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/ClientConnector.js +12 -5
  117. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/ClientFields.js +18 -2
  118. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/ConnectorFields.js +7 -2
  119. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/Constructor.js +30 -0
  120. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/ConstructorSignature.js +19 -0
  121. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/DefaultConstructorSignature.js +23 -0
  122. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/EchoWebSocket.js +17 -7
  123. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/HandleError.js +2 -2
  124. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/InitConnector.js +13 -30
  125. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/OnTextMessageHandler.js +55 -15
  126. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/TimedConnection.js +31 -0
  127. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/URIParams.js +60 -0
  128. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/dependencies/ClientDependencies.js +12 -18
  129. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/dependencies/ConnectorDependencies.js +16 -16
  130. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/package.json +3 -2
  131. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/pom.xml +15 -1
  132. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/src/main/java/com/asyncapi/client.java.js +4 -3
  133. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/src/main/java/com/asyncapi/connector.java.js +7 -3
  134. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/src/main/java/com/asyncapi/models/model.js +2 -32
  135. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/src/main/resources/AppProperties.js +5 -2
  136. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/ClientClass.js +10 -6
  137. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/ClientClass.js.map +1 -1
  138. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/template/client.js.js +10 -124
  139. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/template/client.js.js.map +1 -1
  140. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/ClientClass.js +15 -9
  141. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/package.json +2 -1
  142. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/README.md +20 -5
  143. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/ClientClass.js +15 -8
  144. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/ClientClass.js.map +1 -1
  145. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Constructor.js +3 -2
  146. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Constructor.js.map +1 -1
  147. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/template/client.py.js +41 -174
  148. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/template/client.py.js.map +1 -1
  149. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/ClientClass.js +20 -10
  150. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/Constructor.js +5 -2
  151. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/package.json +2 -1
  152. package/lib/templates/config/loader.js +64 -0
  153. package/lib/{templateConfigValidator.js → templates/config/validator.js} +2 -2
  154. package/package.json +3 -1
  155. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/Connect.js +0 -60
  156. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/Connect.js.map +0 -1
  157. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/HandleMessage.js +0 -21
  158. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/HandleMessage.js.map +0 -1
  159. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/RegisterErrorHandler.js +0 -21
  160. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/RegisterErrorHandler.js.map +0 -1
  161. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/Connect.js +0 -49
  162. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/HandleMessage.js +0 -14
  163. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/RegisterErrorHandler.js +0 -14
  164. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnClose.js +0 -23
  165. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnClose.js.map +0 -1
  166. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnOpen.js +0 -25
  167. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnOpen.js.map +0 -1
  168. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/OnClose.js +0 -16
  169. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/OnOpen.js +0 -16
  170. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/Connect.js +0 -63
  171. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/Connect.js.map +0 -1
  172. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/HandleMessage.js.map +0 -1
  173. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/RegisterErrorHandler.js +0 -25
  174. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/RegisterErrorHandler.js.map +0 -1
  175. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/SendOperation.js +0 -53
  176. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/SendOperation.js.map +0 -1
  177. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/Connect.js +0 -54
  178. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/HandleMessage.js +0 -14
  179. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/RegisterErrorHandler.js +0 -18
  180. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/SendOperation.js +0 -44
  181. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Connect.js +0 -58
  182. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Connect.js.map +0 -1
  183. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/HandleMessage.js +0 -24
  184. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/HandleMessage.js.map +0 -1
  185. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/QueryParamsVariables.js +0 -36
  186. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/QueryParamsVariables.js.map +0 -1
  187. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/RegisterErrorHandler.js +0 -23
  188. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/RegisterErrorHandler.js.map +0 -1
  189. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/SendOperation.js +0 -56
  190. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/SendOperation.js.map +0 -1
  191. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/Connect.js +0 -49
  192. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/HandleMessage.js +0 -17
  193. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/QueryParamsVariables.js +0 -27
  194. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/RegisterErrorHandler.js +0 -16
  195. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/SendOperation.js +0 -50
@@ -20,29 +20,34 @@ function Requires({
20
20
  });
21
21
  }
22
22
 
23
- function QueryParamsVariables({
24
- queryParams
23
+ function Send({
24
+ sendOperations
25
25
  }) {
26
- if (!queryParams) {
26
+ if (!sendOperations || sendOperations.length === 0) {
27
27
  return null;
28
28
  }
29
- return queryParams.map(param => {
30
- const paramName = param[0];
31
- const variableDefinition = `${paramName} = ${paramName} or os.getenv("${paramName.toUpperCase()}")`;
32
- const ifQueryProvided = `if ${paramName} is not None:`;
33
- const assignment = `params["${paramName}"] = ${paramName}`;
34
- return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
35
- children: [/*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
36
- indent: 8,
37
- children: variableDefinition
38
- }), /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
39
- indent: 8,
40
- children: ifQueryProvided
41
- }), /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
42
- indent: 10,
43
- children: assignment
44
- })]
45
- });
29
+ return /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
30
+ newLines: 2,
31
+ indent: 2,
32
+ children: `
33
+ @staticmethod
34
+ async def _send(message, socket):
35
+ """
36
+ Internal helper to handle the actual sending logic.
37
+
38
+ Args:
39
+ message (dict or str): The message to send.
40
+ socket (websockets.WebSocketCommonProtocol): The WebSocket to send through.
41
+
42
+ Notes:
43
+ If message is a dictionary, it will be automatically converted to JSON.
44
+ """
45
+ try:
46
+ if isinstance(message, dict):
47
+ message = json.dumps(message)
48
+ await socket.send(message)
49
+ except Exception as e:
50
+ print("Error sending:", e)`
46
51
  });
47
52
  }
48
53
 
@@ -118,7 +123,8 @@ function Constructor({
118
123
  self._stop_event = threading.Event()
119
124
 
120
125
  ${query ? 'params = {}' : ''}`
121
- }), /*#__PURE__*/jsxRuntime.jsx(QueryParamsVariables, {
126
+ }), /*#__PURE__*/jsxRuntime.jsx(generatorComponents.QueryParamsVariables, {
127
+ language: "python",
122
128
  queryParams: queryParamsArray
123
129
  }), /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
124
130
  newLines: 2,
@@ -129,157 +135,6 @@ function Constructor({
129
135
  });
130
136
  }
131
137
 
132
- function Connect({
133
- title
134
- }) {
135
- return /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
136
- newLines: 2,
137
- indent: 2,
138
- children: `def on_open(self, ws):
139
- print("Connected to ${title} server")
140
-
141
- def on_message(self, ws, message):
142
- self.handle_message(message)
143
-
144
- def on_error(self, ws, error):
145
- print("WebSocket Error:", error)
146
- self.handle_error(error)
147
-
148
- def on_close(self, ws, close_status_code, close_msg):
149
- print("Disconnected from ${title}", close_status_code, close_msg)
150
-
151
- def connect(self):
152
- """Establish the connection and start the run_forever loop in a background thread."""
153
- ssl_opts = {"ca_certs": certifi.where()}
154
- self.ws_app = websocket.WebSocketApp(
155
- self.url,
156
- on_open=self.on_open,
157
- on_message=self.on_message,
158
- on_error=self.on_error,
159
- on_close=self.on_close
160
- )
161
- # Run the WebSocketApp's run_forever in a separate thread with multithreading enabled.
162
- def run():
163
-
164
- retry = 0
165
- max_retries = 5
166
-
167
- while not self._stop_event.is_set() and retry < max_retries:
168
- try:
169
- retry += 1
170
- print("Starting WebSocket thread...")
171
- self.ws_app.run_forever(sslopt=ssl_opts)
172
- except Exception as e:
173
- print(f"Exception in WebSocket thread: {e}") # Print full error details
174
-
175
- thread = threading.Thread(target=run, daemon=True)
176
- thread.start()`
177
- });
178
- }
179
-
180
- function RegisterErrorHandler() {
181
- return /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
182
- newLines: 2,
183
- indent: 2,
184
- children: `def register_error_handler(self, handler):
185
- """Register a callable to process errors."""
186
- if callable(handler):
187
- self.error_handlers.append(handler)
188
- else:
189
- print("Error handler must be callable")`
190
- });
191
- }
192
-
193
- function HandleMessage() {
194
- return /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
195
- newLines: 2,
196
- indent: 2,
197
- children: `def handle_message(self, message):
198
- """Pass the incoming message to all registered message handlers. """
199
- if len(self.message_handlers) == 0:
200
- print("\\033[94mReceived raw message:\\033[0m", message)
201
- else:
202
- for handler in self.message_handlers:
203
- handler(message)`
204
- });
205
- }
206
-
207
- function SendOperation({
208
- sendOperations,
209
- clientName
210
- }) {
211
- if (!sendOperations || sendOperations.length === 0) {
212
- return null;
213
- }
214
- return /*#__PURE__*/jsxRuntime.jsx(jsxRuntime.Fragment, {
215
- children: sendOperations.map(operation => {
216
- const methodName = generatorHelpers.toSnakeCase(operation.id());
217
- const staticMethodName = `${methodName}_static`;
218
- return /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
219
- newLines: 2,
220
- indent: 2,
221
- children: `async def ${methodName}(self, message):
222
- """
223
- Send a ${methodName} message using the WebSocket connection attached to this instance.
224
-
225
- Args:
226
- message (dict or str): The message to send. Will be serialized to JSON if it's a dictionary.
227
-
228
- Raises:
229
- Exception: If sending fails or the socket is not connected.
230
- """
231
- await self._send(message, self.ws_app)
232
-
233
- @staticmethod
234
- async def ${staticMethodName}(message, socket):
235
- """
236
- Send a ${methodName} message using a provided WebSocket connection, without needing an instance.
237
-
238
- Args:
239
- message (dict or str): The message to send.
240
- socket (websockets.WebSocketCommonProtocol): The WebSocket to send through.
241
-
242
- Raises:
243
- Exception: If sending fails or the socket is not connected.
244
- """
245
- await ${clientName}._send(message, socket)
246
- `
247
- });
248
- })
249
- });
250
- }
251
-
252
- function Send({
253
- sendOperations
254
- }) {
255
- if (!sendOperations || sendOperations.length === 0) {
256
- return null;
257
- }
258
- return /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
259
- newLines: 2,
260
- indent: 2,
261
- children: `
262
- @staticmethod
263
- async def _send(message, socket):
264
- """
265
- Internal helper to handle the actual sending logic.
266
-
267
- Args:
268
- message (dict or str): The message to send.
269
- socket (websockets.WebSocketCommonProtocol): The WebSocket to send through.
270
-
271
- Notes:
272
- If message is a dictionary, it will be automatically converted to JSON.
273
- """
274
- try:
275
- if isinstance(message, dict):
276
- message = json.dumps(message)
277
- await socket.send(message)
278
- except Exception as e:
279
- print("Error sending:", e)`
280
- });
281
- }
282
-
283
138
  function RegisterOutgoingProcessor() {
284
139
  return /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
285
140
  newLines: 2,
@@ -329,14 +184,26 @@ function ClientClass({
329
184
  }), /*#__PURE__*/jsxRuntime.jsx(Constructor, {
330
185
  serverUrl: serverUrl,
331
186
  query: queryParams
332
- }), /*#__PURE__*/jsxRuntime.jsx(Connect, {
187
+ }), /*#__PURE__*/jsxRuntime.jsx(generatorComponents.Connect, {
188
+ language: "python",
333
189
  title: title
334
190
  }), /*#__PURE__*/jsxRuntime.jsx(generatorComponents.RegisterMessageHandler, {
335
191
  language: "python",
336
192
  methodName: "register_message_handler",
337
193
  methodParams: ['self', 'handler'],
338
194
  preExecutionCode: "\"\"\"Register a callable to process incoming messages.\"\"\""
339
- }), /*#__PURE__*/jsxRuntime.jsx(RegisterErrorHandler, {}), /*#__PURE__*/jsxRuntime.jsx(RegisterOutgoingProcessor, {}), /*#__PURE__*/jsxRuntime.jsx(HandleMessage, {}), /*#__PURE__*/jsxRuntime.jsx(HandleError, {}), /*#__PURE__*/jsxRuntime.jsx(SendOperation, {
195
+ }), /*#__PURE__*/jsxRuntime.jsx(generatorComponents.RegisterErrorHandler, {
196
+ language: "python",
197
+ methodName: "register_error_handler",
198
+ methodParams: ['self', 'handler'],
199
+ preExecutionCode: "\"\"\"Register a callable to process errors.\"\"\""
200
+ }), /*#__PURE__*/jsxRuntime.jsx(RegisterOutgoingProcessor, {}), /*#__PURE__*/jsxRuntime.jsx(generatorComponents.HandleMessage, {
201
+ language: "python",
202
+ methodName: "handle_message",
203
+ methodParams: ['self', 'message'],
204
+ preExecutionCode: "\"\"\"Pass the incoming message to all registered message handlers. \"\"\""
205
+ }), /*#__PURE__*/jsxRuntime.jsx(HandleError, {}), /*#__PURE__*/jsxRuntime.jsx(generatorComponents.SendOperations, {
206
+ language: "python",
340
207
  sendOperations: sendOperations,
341
208
  clientName: clientName
342
209
  }), /*#__PURE__*/jsxRuntime.jsx(Send, {
@@ -1 +1 @@
1
- {"version":3,"file":"client.py.js","sources":["../../../../../../../../packages/templates/clients/websocket/python/components/Requires.js","../../../../../../../../packages/templates/clients/websocket/python/components/QueryParamsVariables.js","../../../../../../../../packages/templates/clients/websocket/python/components/QueryParamsArgumentsDocs.js","../../../../../../../../packages/templates/clients/websocket/python/components/InitSignature.js","../../../../../../../../packages/templates/clients/websocket/python/components/Constructor.js","../../../../../../../../packages/templates/clients/websocket/python/components/Connect.js","../../../../../../../../packages/templates/clients/websocket/python/components/RegisterErrorHandler.js","../../../../../../../../packages/templates/clients/websocket/python/components/HandleMessage.js","../../../../../../../../packages/templates/clients/websocket/python/components/SendOperation.js","../../../../../../../../packages/templates/clients/websocket/python/components/Send.js","../../../../../../../../packages/templates/clients/websocket/python/components/RegisterOutgoingProcessor.js","../../../../../../../../packages/templates/clients/websocket/python/components/HandleError.js","../../../../../../../../packages/templates/clients/websocket/python/components/ClientClass.js","../../../../../../../../packages/templates/clients/websocket/python/template/client.py.js"],"sourcesContent":["import { DependencyProvider } from '@asyncapi/generator-components';\n\nexport function Requires({ query }) {\n const additionalDependencies = [];\n if (query) {\n additionalDependencies.push('import os');\n additionalDependencies.push('from urllib.parse import urlencode');\n }\n return (\n <DependencyProvider\n language=\"python\"\n additionalDependencies={additionalDependencies}\n />\n );\n}","import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function QueryParamsVariables({ queryParams }) {\n if (!queryParams) {\n return null;\n }\n\n return queryParams.map((param) => {\n const paramName = param[0];\n const variableDefinition = `${paramName} = ${paramName} or os.getenv(\"${paramName.toUpperCase()}\")`;\n const ifQueryProvided = `if ${paramName} is not None:`;\n const assignment = `params[\"${paramName}\"] = ${paramName}`;\n return (\n <>\n <Text indent={8}>\n {variableDefinition}\n </Text>\n <Text indent={8}>\n {ifQueryProvided}\n </Text>\n <Text indent={10}>\n {assignment}\n </Text>\n </>\n );\n });\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function QueryParamsArgumentsDocs({ queryParams }) {\n if (!queryParams) {\n return null;\n }\n\n return queryParams.map((param) => {\n const paramName = param[0];\n const firstLine = `${paramName} (str, optional):`;\n const secondLine = `If provided (or if ${paramName.toUpperCase()} environment variable is set), added as ?${paramName}=… to URL`;\n return (\n <Text indent={1}>\n {firstLine}\n {secondLine}\n </Text>\n );\n });\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function InitSignature({ queryParams, serverUrl }) {\n if (!queryParams) {\n return (\n <Text indent={2} newLines={2}>\n {`def __init__(self, url: str = \"${serverUrl}\"):`}\n </Text>\n );\n }\n \n const queryParamsArguments = queryParams?.map((param) => {\n const paramName = param[0];\n const paramDefaultValue = param[1];\n const defaultValue = paramDefaultValue ? `\"${paramDefaultValue}\"` : 'None';\n return `${paramName}: str = ${defaultValue}`;\n }).join(', ');\n \n return (\n <Text indent={2} newLines={2}>\n {`def __init__(self, url: str = \"${serverUrl}\", ${queryParamsArguments}):`}\n </Text>\n );\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\nimport { QueryParamsVariables } from './QueryParamsVariables';\nimport { QueryParamsArgumentsDocs } from './QueryParamsArgumentsDocs';\nimport { InitSignature } from './InitSignature';\n\nexport function Constructor({ serverUrl, query}) {\n const queryParamsArray = query && Array.from(query.entries());\n \n return (\n <>\n <InitSignature queryParams={queryParamsArray} serverUrl={serverUrl} />\n <Text indent={2}>\n {`\n \"\"\"\n Constructor to initialize the WebSocket client.\n\n Args:\n url (str, optional): The WebSocket server URL. Use it if the server URL is \n different from the default one taken from the AsyncAPI document.`}\n </Text>\n <QueryParamsArgumentsDocs queryParams={queryParamsArray} />\n <Text indent={2}>\n {`\n \"\"\"\n self.ws_app = None # Instance of WebSocketApp\n self.message_handlers = [] # Callables for incoming messages\n self.error_handlers = [] # Callables for errors\n self.outgoing_processors = [] # Callables to process outgoing messages\n self._stop_event = threading.Event()\n \n ${ query ? 'params = {}' : ''}`\n }\n </Text>\n <QueryParamsVariables queryParams={queryParamsArray} />\n <Text newLines={2}>\n {`\n ${query ? 'qs = urlencode(params) if params else \"\"' : ''}\n ${query ? 'self.url = f\"{url}{f\\'?{qs}\\' if qs else \\'\\'}\"' : 'self.url = url'}`}\n </Text>\n </>\n );\n}","import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function Connect({ title }) {\n return (\n <Text newLines={2} indent={2}>\n {\n `def on_open(self, ws):\n print(\"Connected to ${title} server\")\n\ndef on_message(self, ws, message):\n self.handle_message(message)\n\ndef on_error(self, ws, error):\n print(\"WebSocket Error:\", error)\n self.handle_error(error)\n\ndef on_close(self, ws, close_status_code, close_msg):\n print(\"Disconnected from ${title}\", close_status_code, close_msg)\n\ndef connect(self):\n \"\"\"Establish the connection and start the run_forever loop in a background thread.\"\"\"\n ssl_opts = {\"ca_certs\": certifi.where()}\n self.ws_app = websocket.WebSocketApp(\n self.url,\n on_open=self.on_open,\n on_message=self.on_message,\n on_error=self.on_error,\n on_close=self.on_close\n )\n # Run the WebSocketApp's run_forever in a separate thread with multithreading enabled.\n def run():\n\n retry = 0\n max_retries = 5\n \n while not self._stop_event.is_set() and retry < max_retries:\n try:\n retry += 1\n print(\"Starting WebSocket thread...\")\n self.ws_app.run_forever(sslopt=ssl_opts)\n except Exception as e:\n print(f\"Exception in WebSocket thread: {e}\") # Print full error details\n\n thread = threading.Thread(target=run, daemon=True)\n thread.start()`\n }\n </Text>\n );\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function RegisterErrorHandler() {\n return (\n <Text newLines={2} indent={2}>\n {\n `def register_error_handler(self, handler):\n \"\"\"Register a callable to process errors.\"\"\"\n if callable(handler):\n self.error_handlers.append(handler)\n else:\n print(\"Error handler must be callable\")`\n }\n </Text>\n );\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function HandleMessage() {\n return (\n <Text newLines={2} indent={2}>\n {\n `def handle_message(self, message):\n \"\"\"Pass the incoming message to all registered message handlers. \"\"\"\n if len(self.message_handlers) == 0:\n print(\"\\\\033[94mReceived raw message:\\\\033[0m\", message)\n else:\n for handler in self.message_handlers:\n handler(message)`\n }\n </Text>\n );\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\nimport { toSnakeCase } from '@asyncapi/generator-helpers';\n\nexport function SendOperation({ sendOperations, clientName }) {\n if (!sendOperations || sendOperations.length === 0) {\n return null;\n }\n\n return (\n <>\n {\n sendOperations.map((operation) => {\n const methodName = toSnakeCase(operation.id());\n const staticMethodName = `${methodName}_static`;\n \n return (\n <Text newLines={2} indent={2}>\n {`async def ${methodName}(self, message):\n \"\"\"\n Send a ${methodName} message using the WebSocket connection attached to this instance.\n\n Args:\n message (dict or str): The message to send. Will be serialized to JSON if it's a dictionary.\n\n Raises:\n Exception: If sending fails or the socket is not connected.\n \"\"\"\n await self._send(message, self.ws_app)\n\n@staticmethod\nasync def ${staticMethodName}(message, socket):\n \"\"\"\n Send a ${methodName} message using a provided WebSocket connection, without needing an instance.\n\n Args:\n message (dict or str): The message to send.\n socket (websockets.WebSocketCommonProtocol): The WebSocket to send through.\n\n Raises:\n Exception: If sending fails or the socket is not connected.\n \"\"\"\n await ${clientName}._send(message, socket)\n`}\n </Text>\n );\n })\n }\n </>\n );\n}","import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function Send({ sendOperations }) {\n if (!sendOperations || sendOperations.length === 0) {\n return null;\n }\n\n return (\n <Text newLines={2} indent={2}>\n {\n `\n@staticmethod\nasync def _send(message, socket):\n \"\"\"\n Internal helper to handle the actual sending logic.\n\n Args:\n message (dict or str): The message to send.\n socket (websockets.WebSocketCommonProtocol): The WebSocket to send through.\n\n Notes:\n If message is a dictionary, it will be automatically converted to JSON.\n \"\"\"\n try:\n if isinstance(message, dict):\n message = json.dumps(message)\n await socket.send(message)\n except Exception as e:\n print(\"Error sending:\", e)`\n }\n </Text>\n );\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function RegisterOutgoingProcessor() {\n return (\n <Text newLines={2} indent={2}>\n {\n `def register_outgoing_processor(self, processor):\n \"\"\"\n Register a callable that processes outgoing messages automatically.\n These processors run in sequence before each message is sent.\n \"\"\"\n if callable(processor):\n self.outgoing_processors.append(processor)\n else:\n print(\"Outgoing processor must be callable\")`\n }\n </Text>\n );\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function HandleError() {\n return (\n <Text newLines={2} indent={2}>\n {\n `def handle_error(self, error):\n \"\"\"Pass the error to all registered error handlers. Generic log message is printed if no handlers are registered.\"\"\"\n if len(self.error_handlers) == 0:\n print(\"\\\\033[91mError occurred:\\\\033[0m\", error)\n else:\n # Call custom error handlers\n for handler in self.error_handlers:\n handler(error)`\n }\n </Text>\n );\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\nimport { getClientName, getServerUrl, getServer, getQueryParams, getTitle } from '@asyncapi/generator-helpers';\nimport { Constructor } from './Constructor';\nimport { Connect } from './Connect';\nimport { RegisterErrorHandler } from './RegisterErrorHandler';\nimport { HandleMessage } from './HandleMessage';\nimport { SendOperation } from './SendOperation';\nimport { Send } from './Send';\nimport { CloseConnection, RegisterMessageHandler } from '@asyncapi/generator-components';\nimport { RegisterOutgoingProcessor } from './RegisterOutgoingProcessor';\nimport { HandleError } from './HandleError';\n\nexport function ClientClass({ asyncapi, params }) {\n const server = getServer(asyncapi.servers(), params.server);\n const title = getTitle(asyncapi);\n const queryParams = getQueryParams(asyncapi.channels());\n const clientName = getClientName(asyncapi, params.appendClientSuffix, params.customClientName);\n const serverUrl = getServerUrl(server);\n const operations = asyncapi.operations();\n const sendOperations = operations.filterBySend();\n return (\n <Text>\n <Text newLines={2}>\n {`class ${clientName}:`}\n </Text>\n <Constructor serverUrl={serverUrl} query={queryParams} />\n <Connect title={title} />\n <RegisterMessageHandler\n language=\"python\"\n methodName='register_message_handler'\n methodParams={['self', 'handler']}\n preExecutionCode='\"\"\"Register a callable to process incoming messages.\"\"\"'\n />\n <RegisterErrorHandler />\n <RegisterOutgoingProcessor />\n <HandleMessage />\n <HandleError />\n <SendOperation sendOperations={sendOperations} clientName={clientName} />\n <Send sendOperations={sendOperations} />\n <CloseConnection \n language=\"python\" \n methodParams={['self']}\n preExecutionCode='\"\"\"Cleanly close the WebSocket connection.\"\"\"'\n />\n </Text>\n );\n}\n","import { File } from '@asyncapi/generator-react-sdk';\nimport { getServer, getQueryParams, getInfo } from '@asyncapi/generator-helpers';\nimport { FileHeaderInfo } from '@asyncapi/generator-components';\nimport { Requires } from '../components/Requires';\nimport { ClientClass } from '../components/ClientClass';\n\nexport default function ({ asyncapi, params }) {\n const server = getServer(asyncapi.servers(), params.server);\n const info = getInfo(asyncapi);\n const queryParams = getQueryParams(asyncapi.channels());\n return (\n // The clientFileName default values can be found and modified under the .ageneratorrc\n <File name={params.clientFileName}>\n <FileHeaderInfo\n info={info}\n server={server}\n language=\"python\"\n />\n <Requires query={queryParams} />\n <ClientClass asyncapi={asyncapi} params={params} />\n </File>\n );\n}\n"],"names":["Requires","query","additionalDependencies","push","_jsx","DependencyProvider","language","QueryParamsVariables","queryParams","map","param","paramName","variableDefinition","toUpperCase","ifQueryProvided","assignment","_jsxs","_Fragment","children","Text","indent","QueryParamsArgumentsDocs","firstLine","secondLine","InitSignature","serverUrl","newLines","queryParamsArguments","paramDefaultValue","defaultValue","join","Constructor","queryParamsArray","Array","from","entries","Connect","title","RegisterErrorHandler","HandleMessage","SendOperation","sendOperations","clientName","length","operation","methodName","toSnakeCase","id","staticMethodName","Send","RegisterOutgoingProcessor","HandleError","ClientClass","asyncapi","params","server","getServer","servers","getTitle","getQueryParams","channels","getClientName","appendClientSuffix","customClientName","getServerUrl","operations","filterBySend","RegisterMessageHandler","methodParams","preExecutionCode","CloseConnection","info","getInfo","File","name","clientFileName","FileHeaderInfo"],"mappings":";;;;;;;;AAEO,SAASA,QAAQA,CAAC;AAAEC,EAAAA,KAAAA;AAAM,CAAC,EAAE;EAClC,MAAMC,sBAAsB,GAAG,EAAE,CAAA;AACjC,EAAA,IAAID,KAAK,EAAE;AACTC,IAAAA,sBAAsB,CAACC,IAAI,CAAC,WAAW,CAAC,CAAA;AACxCD,IAAAA,sBAAsB,CAACC,IAAI,CAAC,oCAAoC,CAAC,CAAA;AACnE,GAAA;EACA,oBACEC,cAAA,CAACC,sCAAkB,EAAA;AACjBC,IAAAA,QAAQ,EAAC,QAAQ;AACjBJ,IAAAA,sBAAsB,EAAEA,sBAAAA;AAAuB,GAChD,CAAC,CAAA;AAEN;;ACZO,SAASK,oBAAoBA,CAAC;AAAEC,EAAAA,WAAAA;AAAY,CAAC,EAAE;EACpD,IAAI,CAACA,WAAW,EAAE;AAChB,IAAA,OAAO,IAAI,CAAA;AACb,GAAA;AAEA,EAAA,OAAOA,WAAW,CAACC,GAAG,CAAEC,KAAK,IAAK;AAChC,IAAA,MAAMC,SAAS,GAAGD,KAAK,CAAC,CAAC,CAAC,CAAA;AAC1B,IAAA,MAAME,kBAAkB,GAAG,CAAGD,EAAAA,SAAS,CAAMA,GAAAA,EAAAA,SAAS,CAAkBA,eAAAA,EAAAA,SAAS,CAACE,WAAW,EAAE,CAAI,EAAA,CAAA,CAAA;AACnG,IAAA,MAAMC,eAAe,GAAG,CAAMH,GAAAA,EAAAA,SAAS,CAAe,aAAA,CAAA,CAAA;AACtD,IAAA,MAAMI,UAAU,GAAG,CAAA,QAAA,EAAWJ,SAAS,CAAA,KAAA,EAAQA,SAAS,CAAE,CAAA,CAAA;IAC1D,oBACEK,eAAA,CAAAC,mBAAA,EAAA;MAAAC,QAAA,EAAA,cACEd,cAAA,CAACe,sBAAI,EAAA;AAACC,QAAAA,MAAM,EAAE,CAAE;AAAAF,QAAAA,QAAA,EACbN,kBAAAA;AAAkB,OACf,CAAC,eACPR,cAAA,CAACe,sBAAI,EAAA;AAACC,QAAAA,MAAM,EAAE,CAAE;AAAAF,QAAAA,QAAA,EACbJ,eAAAA;AAAe,OACZ,CAAC,eACPV,cAAA,CAACe,sBAAI,EAAA;AAACC,QAAAA,MAAM,EAAE,EAAG;AAAAF,QAAAA,QAAA,EACdH,UAAAA;AAAU,OACP,CAAC,CAAA;AAAA,KACP,CAAC,CAAA;AAEP,GAAC,CAAC,CAAA;AACJ;;ACxBO,SAASM,wBAAwBA,CAAC;AAAEb,EAAAA,WAAAA;AAAY,CAAC,EAAE;EACxD,IAAI,CAACA,WAAW,EAAE;AAChB,IAAA,OAAO,IAAI,CAAA;AACb,GAAA;AAEA,EAAA,OAAOA,WAAW,CAACC,GAAG,CAAEC,KAAK,IAAK;AAChC,IAAA,MAAMC,SAAS,GAAGD,KAAK,CAAC,CAAC,CAAC,CAAA;AAC1B,IAAA,MAAMY,SAAS,GAAG,CAAGX,EAAAA,SAAS,CAAmB,iBAAA,CAAA,CAAA;IACjD,MAAMY,UAAU,GAAG,CAAA,mBAAA,EAAsBZ,SAAS,CAACE,WAAW,EAAE,CAA4CF,yCAAAA,EAAAA,SAAS,CAAW,SAAA,CAAA,CAAA;IAChI,oBACEK,eAAA,CAACG,sBAAI,EAAA;AAACC,MAAAA,MAAM,EAAE,CAAE;MAAAF,QAAA,EAAA,CACbI,SAAS,EACTC,UAAU,CAAA;AAAA,KACP,CAAC,CAAA;AAEX,GAAC,CAAC,CAAA;AACJ;;AChBO,SAASC,aAAaA,CAAC;EAAEhB,WAAW;AAAEiB,EAAAA,SAAAA;AAAU,CAAC,EAAE;EACxD,IAAI,CAACjB,WAAW,EAAE;IAChB,oBACEJ,cAAA,CAACe,sBAAI,EAAA;AAACC,MAAAA,MAAM,EAAE,CAAE;AAACM,MAAAA,QAAQ,EAAE,CAAE;MAAAR,QAAA,EAC1B,kCAAkCO,SAAS,CAAA,GAAA,CAAA;AAAK,KAC7C,CAAC,CAAA;AAEX,GAAA;EAEA,MAAME,oBAAoB,GAAGnB,WAAW,KAAXA,IAAAA,IAAAA,WAAW,KAAXA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,WAAW,CAAEC,GAAG,CAAEC,KAAK,IAAK;AACvD,IAAA,MAAMC,SAAS,GAAGD,KAAK,CAAC,CAAC,CAAC,CAAA;AAC1B,IAAA,MAAMkB,iBAAiB,GAAGlB,KAAK,CAAC,CAAC,CAAC,CAAA;IAClC,MAAMmB,YAAY,GAAGD,iBAAiB,GAAG,IAAIA,iBAAiB,CAAA,CAAA,CAAG,GAAG,MAAM,CAAA;AAC1E,IAAA,OAAO,CAAGjB,EAAAA,SAAS,CAAWkB,QAAAA,EAAAA,YAAY,CAAE,CAAA,CAAA;AAC9C,GAAC,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC,CAAA;EAEb,oBACE1B,cAAA,CAACe,sBAAI,EAAA;AAACC,IAAAA,MAAM,EAAE,CAAE;AAACM,IAAAA,QAAQ,EAAE,CAAE;AAAAR,IAAAA,QAAA,EAC1B,CAAA,+BAAA,EAAkCO,SAAS,CAAA,GAAA,EAAME,oBAAoB,CAAA,EAAA,CAAA;AAAI,GACtE,CAAC,CAAA;AAEX;;AClBO,SAASI,WAAWA,CAAC;EAAEN,SAAS;AAAExB,EAAAA,KAAAA;AAAK,CAAC,EAAE;AAC/C,EAAA,MAAM+B,gBAAgB,GAAG/B,KAAK,IAAIgC,KAAK,CAACC,IAAI,CAACjC,KAAK,CAACkC,OAAO,EAAE,CAAC,CAAA;EAE7D,oBACEnB,eAAA,CAAAC,mBAAA,EAAA;IAAAC,QAAA,EAAA,cACEd,cAAA,CAACoB,aAAa,EAAA;AAAChB,MAAAA,WAAW,EAAEwB,gBAAiB;AAACP,MAAAA,SAAS,EAAEA,SAAAA;AAAU,KAAE,CAAC,eACtErB,cAAA,CAACe,sBAAI,EAAA;AAACC,MAAAA,MAAM,EAAE,CAAE;AAAAF,MAAAA,QAAA,EACb,CAAA;AACT;AACA;AACA;AACA;AACA;AACA,0EAAA,CAAA;AAA2E,KAC/D,CAAC,eACPd,cAAA,CAACiB,wBAAwB,EAAA;AAACb,MAAAA,WAAW,EAAEwB,gBAAAA;AAAiB,KAAE,CAAC,eAC3D5B,cAAA,CAACe,sBAAI,EAAA;AAACC,MAAAA,MAAM,EAAE,CAAE;AAAAF,MAAAA,QAAA,EACb,CAAA;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAA,EAASjB,KAAK,GAAG,aAAa,GAAG,EAAE,CAAA,CAAA;AAAE,KAEzB,CAAC,eACPG,cAAA,CAACG,oBAAoB,EAAA;AAACC,MAAAA,WAAW,EAAEwB,gBAAAA;AAAiB,KAAE,CAAC,eACvD5B,cAAA,CAACe,sBAAI,EAAA;AAACO,MAAAA,QAAQ,EAAE,CAAE;AAAAR,MAAAA,QAAA,EACf,CAAA;AACT,QAAA,EAAUjB,KAAK,GAAG,0CAA0C,GAAG,EAAE,CAAA;AACjE,QAAA,EAAUA,KAAK,GAAG,iDAAiD,GAAG,gBAAgB,CAAA,CAAA;AAAE,KAC5E,CAAC,CAAA;AAAA,GACP,CAAC,CAAA;AAEP;;ACvCO,SAASmC,OAAOA,CAAC;AAAEC,EAAAA,KAAAA;AAAM,CAAC,EAAE;EACjC,oBACEjC,cAAA,CAACe,sBAAI,EAAA;AAACO,IAAAA,QAAQ,EAAE,CAAE;AAACN,IAAAA,MAAM,EAAE,CAAE;AAAAF,IAAAA,QAAA,EAEzB,CAAA;AACR,wBAAA,EAA0BmB,KAAK,CAAA;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAAA,EAA+BA,KAAK,CAAA;AACpC;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,kBAAA,CAAA;AAAmB,GAET,CAAC,CAAA;AAEX;;AC9CO,SAASC,oBAAoBA,GAAG;EACrC,oBACElC,cAAA,CAACe,sBAAI,EAAA;AAACO,IAAAA,QAAQ,EAAE,CAAE;AAACN,IAAAA,MAAM,EAAE,CAAE;AAAAF,IAAAA,QAAA,EAEzB,CAAA;AACR;AACA;AACA;AACA;AACA,+CAAA,CAAA;AAAgD,GAEtC,CAAC,CAAA;AAEX;;ACbO,SAASqB,aAAaA,GAAG;EAC9B,oBACEnC,cAAA,CAACe,sBAAI,EAAA;AAACO,IAAAA,QAAQ,EAAE,CAAE;AAACN,IAAAA,MAAM,EAAE,CAAE;AAAAF,IAAAA,QAAA,EAEzB,CAAA;AACR;AACA;AACA;AACA;AACA;AACA,wBAAA,CAAA;AAAyB,GAEf,CAAC,CAAA;AAEX;;ACbO,SAASsB,aAAaA,CAAC;EAAEC,cAAc;AAAEC,EAAAA,UAAAA;AAAW,CAAC,EAAE;EAC5D,IAAI,CAACD,cAAc,IAAIA,cAAc,CAACE,MAAM,KAAK,CAAC,EAAE;AAClD,IAAA,OAAO,IAAI,CAAA;AACb,GAAA;EAEA,oBACEvC,cAAA,CAAAa,mBAAA,EAAA;AAAAC,IAAAA,QAAA,EAEIuB,cAAc,CAAChC,GAAG,CAAEmC,SAAS,IAAK;MAChC,MAAMC,UAAU,GAAGC,4BAAW,CAACF,SAAS,CAACG,EAAE,EAAE,CAAC,CAAA;AAC9C,MAAA,MAAMC,gBAAgB,GAAG,CAAGH,EAAAA,UAAU,CAAS,OAAA,CAAA,CAAA;MAE/C,oBACEzC,cAAA,CAACe,sBAAI,EAAA;AAACO,QAAAA,QAAQ,EAAE,CAAE;AAACN,QAAAA,MAAM,EAAE,CAAE;QAAAF,QAAA,EAC1B,aAAa2B,UAAU,CAAA;AACtC;AACA,WAAA,EAAaA,UAAU,CAAA;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAA,EAAYG,gBAAgB,CAAA;AAC5B;AACA,WAAA,EAAaH,UAAU,CAAA;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAA,EAAYH,UAAU,CAAA;AACtB,CAAA;AAAC,OACiB,CAAC,CAAA;KAEV,CAAA;AAAC,GAEJ,CAAC,CAAA;AAEP;;AC/CO,SAASO,IAAIA,CAAC;AAAER,EAAAA,cAAAA;AAAe,CAAC,EAAE;EACvC,IAAI,CAACA,cAAc,IAAIA,cAAc,CAACE,MAAM,KAAK,CAAC,EAAE;AAClD,IAAA,OAAO,IAAI,CAAA;AACb,GAAA;EAEA,oBACEvC,cAAA,CAACe,sBAAI,EAAA;AAACO,IAAAA,QAAQ,EAAE,CAAE;AAACN,IAAAA,MAAM,EAAE,CAAE;AAAAF,IAAAA,QAAA,EAEzB,CAAA;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAA,CAAA;AAAmC,GAEzB,CAAC,CAAA;AAEX;;AC9BO,SAASgC,yBAAyBA,GAAG;EAC1C,oBACE9C,cAAA,CAACe,sBAAI,EAAA;AAACO,IAAAA,QAAQ,EAAE,CAAE;AAACN,IAAAA,MAAM,EAAE,CAAE;AAAAF,IAAAA,QAAA,EAEzB,CAAA;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAA,CAAA;AAAqD,GAE3C,CAAC,CAAA;AAEX;;AChBO,SAASiC,WAAWA,GAAG;EAC5B,oBACE/C,cAAA,CAACe,sBAAI,EAAA;AAACO,IAAAA,QAAQ,EAAE,CAAE;AAACN,IAAAA,MAAM,EAAE,CAAE;AAAAF,IAAAA,QAAA,EAEzB,CAAA;AACR;AACA;AACA;AACA;AACA;AACA;AACA,sBAAA,CAAA;AAAuB,GAEb,CAAC,CAAA;AAEX;;ACLO,SAASkC,WAAWA,CAAC;EAAEC,QAAQ;AAAEC,EAAAA,MAAAA;AAAO,CAAC,EAAE;AAChD,EAAA,MAAMC,MAAM,GAAGC,0BAAS,CAACH,QAAQ,CAACI,OAAO,EAAE,EAAEH,MAAM,CAACC,MAAM,CAAC,CAAA;AAC3D,EAAA,MAAMlB,KAAK,GAAGqB,yBAAQ,CAACL,QAAQ,CAAC,CAAA;EAChC,MAAM7C,WAAW,GAAGmD,+BAAc,CAACN,QAAQ,CAACO,QAAQ,EAAE,CAAC,CAAA;AACvD,EAAA,MAAMlB,UAAU,GAAGmB,8BAAa,CAACR,QAAQ,EAAEC,MAAM,CAACQ,kBAAkB,EAAER,MAAM,CAACS,gBAAgB,CAAC,CAAA;AAC9F,EAAA,MAAMtC,SAAS,GAAGuC,6BAAY,CAACT,MAAM,CAAC,CAAA;AACtC,EAAA,MAAMU,UAAU,GAAGZ,QAAQ,CAACY,UAAU,EAAE,CAAA;AACxC,EAAA,MAAMxB,cAAc,GAAGwB,UAAU,CAACC,YAAY,EAAE,CAAA;EAChD,oBACElD,eAAA,CAACG,sBAAI,EAAA;IAAAD,QAAA,EAAA,cACHd,cAAA,CAACe,sBAAI,EAAA;AAACO,MAAAA,QAAQ,EAAE,CAAE;MAAAR,QAAA,EACf,SAASwB,UAAU,CAAA,CAAA,CAAA;AAAG,KACnB,CAAC,eACPtC,cAAA,CAAC2B,WAAW,EAAA;AAACN,MAAAA,SAAS,EAAEA,SAAU;AAACxB,MAAAA,KAAK,EAAEO,WAAAA;AAAY,KAAE,CAAC,eACzDJ,cAAA,CAACgC,OAAO,EAAA;AAACC,MAAAA,KAAK,EAAEA,KAAAA;AAAM,KAAE,CAAC,eACzBjC,cAAA,CAAC+D,0CAAsB,EAAA;AACrB7D,MAAAA,QAAQ,EAAC,QAAQ;AACjBuC,MAAAA,UAAU,EAAC,0BAA0B;AACrCuB,MAAAA,YAAY,EAAE,CAAC,MAAM,EAAE,SAAS,CAAE;AAClCC,MAAAA,gBAAgB,EAAC,+DAAA;AAAyD,KAC3E,CAAC,eACFjE,cAAA,CAACkC,oBAAoB,EAAA,EAAE,CAAC,eACxBlC,cAAA,CAAC8C,yBAAyB,EAAA,EAAE,CAAC,eAC7B9C,cAAA,CAACmC,aAAa,EAAA,EAAE,CAAC,eACjBnC,cAAA,CAAC+C,WAAW,EAAA,EAAE,CAAC,eACf/C,cAAA,CAACoC,aAAa,EAAA;AAACC,MAAAA,cAAc,EAAEA,cAAe;AAACC,MAAAA,UAAU,EAAEA,UAAAA;AAAW,KAAE,CAAC,eACzEtC,cAAA,CAAC6C,IAAI,EAAA;AAACR,MAAAA,cAAc,EAAEA,cAAAA;AAAe,KAAE,CAAC,eACxCrC,cAAA,CAACkE,mCAAe,EAAA;AACdhE,MAAAA,QAAQ,EAAC,QAAQ;MACjB8D,YAAY,EAAE,CAAC,MAAM,CAAE;AACvBC,MAAAA,gBAAgB,EAAC,qDAAA;AAA+C,KACjE,CAAC,CAAA;AAAA,GACE,CAAC,CAAA;AAEX;;ACxCe,kBAAU,EAAA;EAAEhB,QAAQ;AAAEC,EAAAA,MAAAA;AAAO,CAAC,EAAE;AAC7C,EAAA,MAAMC,MAAM,GAAGC,0BAAS,CAACH,QAAQ,CAACI,OAAO,EAAE,EAAEH,MAAM,CAACC,MAAM,CAAC,CAAA;AAC3D,EAAA,MAAMgB,IAAI,GAAGC,wBAAO,CAACnB,QAAQ,CAAC,CAAA;EAC9B,MAAM7C,WAAW,GAAGmD,+BAAc,CAACN,QAAQ,CAACO,QAAQ,EAAE,CAAC,CAAA;AACvD,EAAA;AAAA;AACE;AACA5C,IAAAA,eAAA,CAACyD,sBAAI,EAAA;MAACC,IAAI,EAAEpB,MAAM,CAACqB,cAAe;MAAAzD,QAAA,EAAA,cAChCd,cAAA,CAACwE,kCAAc,EAAA;AACbL,QAAAA,IAAI,EAAEA,IAAK;AACXhB,QAAAA,MAAM,EAAEA,MAAO;AACfjD,QAAAA,QAAQ,EAAC,QAAA;AAAQ,OAClB,CAAC,eACFF,cAAA,CAACJ,QAAQ,EAAA;AAACC,QAAAA,KAAK,EAAEO,WAAAA;AAAY,OAAE,CAAC,eAChCJ,cAAA,CAACgD,WAAW,EAAA;AAACC,QAAAA,QAAQ,EAAEA,QAAS;AAACC,QAAAA,MAAM,EAAEA,MAAAA;AAAO,OAAE,CAAC,CAAA;KAC/C,CAAA;AAAC,IAAA;AAEX;;;;"}
1
+ {"version":3,"file":"client.py.js","sources":["../../../../../../../../packages/templates/clients/websocket/python/components/Requires.js","../../../../../../../../packages/templates/clients/websocket/python/components/Send.js","../../../../../../../../packages/templates/clients/websocket/python/components/QueryParamsArgumentsDocs.js","../../../../../../../../packages/templates/clients/websocket/python/components/InitSignature.js","../../../../../../../../packages/templates/clients/websocket/python/components/Constructor.js","../../../../../../../../packages/templates/clients/websocket/python/components/RegisterOutgoingProcessor.js","../../../../../../../../packages/templates/clients/websocket/python/components/HandleError.js","../../../../../../../../packages/templates/clients/websocket/python/components/ClientClass.js","../../../../../../../../packages/templates/clients/websocket/python/template/client.py.js"],"sourcesContent":["import { DependencyProvider } from '@asyncapi/generator-components';\n\nexport function Requires({ query }) {\n const additionalDependencies = [];\n if (query) {\n additionalDependencies.push('import os');\n additionalDependencies.push('from urllib.parse import urlencode');\n }\n return (\n <DependencyProvider\n language=\"python\"\n additionalDependencies={additionalDependencies}\n />\n );\n}","import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function Send({ sendOperations }) {\n if (!sendOperations || sendOperations.length === 0) {\n return null;\n }\n\n return (\n <Text newLines={2} indent={2}>\n {\n `\n@staticmethod\nasync def _send(message, socket):\n \"\"\"\n Internal helper to handle the actual sending logic.\n\n Args:\n message (dict or str): The message to send.\n socket (websockets.WebSocketCommonProtocol): The WebSocket to send through.\n\n Notes:\n If message is a dictionary, it will be automatically converted to JSON.\n \"\"\"\n try:\n if isinstance(message, dict):\n message = json.dumps(message)\n await socket.send(message)\n except Exception as e:\n print(\"Error sending:\", e)`\n }\n </Text>\n );\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function QueryParamsArgumentsDocs({ queryParams }) {\n if (!queryParams) {\n return null;\n }\n\n return queryParams.map((param) => {\n const paramName = param[0];\n const firstLine = `${paramName} (str, optional):`;\n const secondLine = `If provided (or if ${paramName.toUpperCase()} environment variable is set), added as ?${paramName}=… to URL`;\n return (\n <Text indent={1}>\n {firstLine}\n {secondLine}\n </Text>\n );\n });\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function InitSignature({ queryParams, serverUrl }) {\n if (!queryParams) {\n return (\n <Text indent={2} newLines={2}>\n {`def __init__(self, url: str = \"${serverUrl}\"):`}\n </Text>\n );\n }\n \n const queryParamsArguments = queryParams?.map((param) => {\n const paramName = param[0];\n const paramDefaultValue = param[1];\n const defaultValue = paramDefaultValue ? `\"${paramDefaultValue}\"` : 'None';\n return `${paramName}: str = ${defaultValue}`;\n }).join(', ');\n \n return (\n <Text indent={2} newLines={2}>\n {`def __init__(self, url: str = \"${serverUrl}\", ${queryParamsArguments}):`}\n </Text>\n );\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\nimport { QueryParamsVariables } from '@asyncapi/generator-components';\nimport { QueryParamsArgumentsDocs } from './QueryParamsArgumentsDocs';\nimport { InitSignature } from './InitSignature';\n\nexport function Constructor({ serverUrl, query}) {\n const queryParamsArray = query && Array.from(query.entries());\n \n return (\n <>\n <InitSignature queryParams={queryParamsArray} serverUrl={serverUrl} />\n <Text indent={2}>\n {`\n \"\"\"\n Constructor to initialize the WebSocket client.\n\n Args:\n url (str, optional): The WebSocket server URL. Use it if the server URL is \n different from the default one taken from the AsyncAPI document.`}\n </Text>\n <QueryParamsArgumentsDocs queryParams={queryParamsArray} />\n <Text indent={2}>\n {`\n \"\"\"\n self.ws_app = None # Instance of WebSocketApp\n self.message_handlers = [] # Callables for incoming messages\n self.error_handlers = [] # Callables for errors\n self.outgoing_processors = [] # Callables to process outgoing messages\n self._stop_event = threading.Event()\n \n ${ query ? 'params = {}' : ''}`\n }\n </Text>\n <QueryParamsVariables\n language=\"python\"\n queryParams={queryParamsArray} \n />\n <Text newLines={2}>\n {`\n ${query ? 'qs = urlencode(params) if params else \"\"' : ''}\n ${query ? 'self.url = f\"{url}{f\\'?{qs}\\' if qs else \\'\\'}\"' : 'self.url = url'}`}\n </Text>\n </>\n );\n}","import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function RegisterOutgoingProcessor() {\n return (\n <Text newLines={2} indent={2}>\n {\n `def register_outgoing_processor(self, processor):\n \"\"\"\n Register a callable that processes outgoing messages automatically.\n These processors run in sequence before each message is sent.\n \"\"\"\n if callable(processor):\n self.outgoing_processors.append(processor)\n else:\n print(\"Outgoing processor must be callable\")`\n }\n </Text>\n );\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function HandleError() {\n return (\n <Text newLines={2} indent={2}>\n {\n `def handle_error(self, error):\n \"\"\"Pass the error to all registered error handlers. Generic log message is printed if no handlers are registered.\"\"\"\n if len(self.error_handlers) == 0:\n print(\"\\\\033[91mError occurred:\\\\033[0m\", error)\n else:\n # Call custom error handlers\n for handler in self.error_handlers:\n handler(error)`\n }\n </Text>\n );\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\nimport { getClientName, getServerUrl, getServer, getQueryParams, getTitle } from '@asyncapi/generator-helpers';\nimport { Send } from './Send';\nimport { Constructor } from './Constructor';\nimport { CloseConnection, RegisterMessageHandler, RegisterErrorHandler, SendOperations, Connect, HandleMessage } from '@asyncapi/generator-components';\nimport { RegisterOutgoingProcessor } from './RegisterOutgoingProcessor';\nimport { HandleError } from './HandleError';\n\nexport function ClientClass({ asyncapi, params }) {\n const server = getServer(asyncapi.servers(), params.server);\n const title = getTitle(asyncapi);\n const queryParams = getQueryParams(asyncapi.channels());\n const clientName = getClientName(asyncapi, params.appendClientSuffix, params.customClientName);\n const serverUrl = getServerUrl(server);\n const operations = asyncapi.operations();\n const sendOperations = operations.filterBySend();\n return (\n <Text>\n <Text newLines={2}>\n {`class ${clientName}:`}\n </Text>\n <Constructor serverUrl={serverUrl} query={queryParams} />\n <Connect language=\"python\" title={title} />\n <RegisterMessageHandler\n language=\"python\"\n methodName='register_message_handler'\n methodParams={['self', 'handler']}\n preExecutionCode='\"\"\"Register a callable to process incoming messages.\"\"\"'\n />\n <RegisterErrorHandler\n language=\"python\"\n methodName='register_error_handler'\n methodParams={['self', 'handler']}\n preExecutionCode='\"\"\"Register a callable to process errors.\"\"\"'\n />\n <RegisterOutgoingProcessor />\n <HandleMessage\n language=\"python\"\n methodName='handle_message'\n methodParams={['self', 'message']}\n preExecutionCode='\"\"\"Pass the incoming message to all registered message handlers. \"\"\"'\n />\n <HandleError />\n <SendOperations \n language=\"python\"\n sendOperations={sendOperations} \n clientName={clientName} \n />\n <Send sendOperations={sendOperations} />\n <CloseConnection \n language=\"python\" \n methodParams={['self']}\n preExecutionCode='\"\"\"Cleanly close the WebSocket connection.\"\"\"'\n />\n </Text>\n );\n}\n","import { File } from '@asyncapi/generator-react-sdk';\nimport { getServer, getQueryParams, getInfo } from '@asyncapi/generator-helpers';\nimport { FileHeaderInfo } from '@asyncapi/generator-components';\nimport { Requires } from '../components/Requires';\nimport { ClientClass } from '../components/ClientClass';\n\nexport default function ({ asyncapi, params }) {\n const server = getServer(asyncapi.servers(), params.server);\n const info = getInfo(asyncapi);\n const queryParams = getQueryParams(asyncapi.channels());\n return (\n // The clientFileName default values can be found and modified under the .ageneratorrc\n <File name={params.clientFileName}>\n <FileHeaderInfo\n info={info}\n server={server}\n language=\"python\"\n />\n <Requires query={queryParams} />\n <ClientClass asyncapi={asyncapi} params={params} />\n </File>\n );\n}\n"],"names":["Requires","query","additionalDependencies","push","_jsx","DependencyProvider","language","Send","sendOperations","length","Text","newLines","indent","children","QueryParamsArgumentsDocs","queryParams","map","param","paramName","firstLine","secondLine","toUpperCase","_jsxs","InitSignature","serverUrl","queryParamsArguments","paramDefaultValue","defaultValue","join","Constructor","queryParamsArray","Array","from","entries","_Fragment","QueryParamsVariables","RegisterOutgoingProcessor","HandleError","ClientClass","asyncapi","params","server","getServer","servers","title","getTitle","getQueryParams","channels","clientName","getClientName","appendClientSuffix","customClientName","getServerUrl","operations","filterBySend","Connect","RegisterMessageHandler","methodName","methodParams","preExecutionCode","RegisterErrorHandler","HandleMessage","SendOperations","CloseConnection","info","getInfo","File","name","clientFileName","FileHeaderInfo"],"mappings":"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"}
@@ -1,12 +1,8 @@
1
1
  import { Text } from '@asyncapi/generator-react-sdk';
2
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
3
  import { Send } from './Send';
9
- import { CloseConnection, RegisterMessageHandler } from '@asyncapi/generator-components';
4
+ import { Constructor } from './Constructor';
5
+ import { CloseConnection, RegisterMessageHandler, RegisterErrorHandler, SendOperations, Connect, HandleMessage } from '@asyncapi/generator-components';
10
6
  import { RegisterOutgoingProcessor } from './RegisterOutgoingProcessor';
11
7
  import { HandleError } from './HandleError';
12
8
 
@@ -24,18 +20,32 @@ export function ClientClass({ asyncapi, params }) {
24
20
  {`class ${clientName}:`}
25
21
  </Text>
26
22
  <Constructor serverUrl={serverUrl} query={queryParams} />
27
- <Connect title={title} />
23
+ <Connect language="python" title={title} />
28
24
  <RegisterMessageHandler
29
25
  language="python"
30
26
  methodName='register_message_handler'
31
27
  methodParams={['self', 'handler']}
32
28
  preExecutionCode='"""Register a callable to process incoming messages."""'
33
29
  />
34
- <RegisterErrorHandler />
30
+ <RegisterErrorHandler
31
+ language="python"
32
+ methodName='register_error_handler'
33
+ methodParams={['self', 'handler']}
34
+ preExecutionCode='"""Register a callable to process errors."""'
35
+ />
35
36
  <RegisterOutgoingProcessor />
36
- <HandleMessage />
37
+ <HandleMessage
38
+ language="python"
39
+ methodName='handle_message'
40
+ methodParams={['self', 'message']}
41
+ preExecutionCode='"""Pass the incoming message to all registered message handlers. """'
42
+ />
37
43
  <HandleError />
38
- <SendOperation sendOperations={sendOperations} clientName={clientName} />
44
+ <SendOperations
45
+ language="python"
46
+ sendOperations={sendOperations}
47
+ clientName={clientName}
48
+ />
39
49
  <Send sendOperations={sendOperations} />
40
50
  <CloseConnection
41
51
  language="python"
@@ -1,5 +1,5 @@
1
1
  import { Text } from '@asyncapi/generator-react-sdk';
2
- import { QueryParamsVariables } from './QueryParamsVariables';
2
+ import { QueryParamsVariables } from '@asyncapi/generator-components';
3
3
  import { QueryParamsArgumentsDocs } from './QueryParamsArgumentsDocs';
4
4
  import { InitSignature } from './InitSignature';
5
5
 
@@ -31,7 +31,10 @@ export function Constructor({ serverUrl, query}) {
31
31
  ${ query ? 'params = {}' : ''}`
32
32
  }
33
33
  </Text>
34
- <QueryParamsVariables queryParams={queryParamsArray} />
34
+ <QueryParamsVariables
35
+ language="python"
36
+ queryParams={queryParamsArray}
37
+ />
35
38
  <Text newLines={2}>
36
39
  {`
37
40
  ${query ? 'qs = urlencode(params) if params else ""' : ''}
@@ -12,7 +12,8 @@
12
12
  "license": "Apache-2.0",
13
13
  "dependencies": {
14
14
  "@asyncapi/generator-react-sdk": "*",
15
- "@asyncapi/generator-helpers": "1.0.0"
15
+ "@asyncapi/generator-helpers": "0.2.0",
16
+ "@asyncapi/generator-components": "0.3.1"
16
17
  },
17
18
  "devDependencies": {
18
19
  "@asyncapi/parser": "^3.0.14",
@@ -0,0 +1,64 @@
1
+ const path = require('path');
2
+ const { readFile } = require('../../utils');
3
+ const log = require('loglevel');
4
+ const yaml = require('js-yaml');
5
+
6
+ const PRIMARY_CONFIG_FILE = '.ageneratorrc';
7
+ const SECONDARY_CONFIG_FILE = 'package.json';
8
+
9
+ /**
10
+ * Loads the template configuration and applies default values to template parameters.
11
+ * @async
12
+ * @param {string} templateDir - Path to the template directory
13
+ * @param {Object} templateParams - Template parameters object to populate with defaults
14
+ * @returns {Promise<Object>} Resolves with the loaded template configuration object
15
+ */
16
+ async function loadTemplateConfig(templateDir, templateParams) {
17
+ let templateConfig = {};
18
+
19
+ // Try to load config from .ageneratorrc
20
+ try {
21
+ const rcConfigPath = path.resolve(templateDir, PRIMARY_CONFIG_FILE);
22
+ const rcContent = await readFile(rcConfigPath, { encoding: 'utf8' });
23
+ const yamlConfig = yaml.load(rcContent);
24
+ templateConfig = yamlConfig || {};
25
+ } catch (rcError) {
26
+ log.debug('Could not load .ageneratorrc file:', rcError);
27
+ // Try to load config from package.json
28
+ try {
29
+ const configPath = path.resolve(templateDir, SECONDARY_CONFIG_FILE);
30
+ const json = await readFile(configPath, { encoding: 'utf8' });
31
+ const generatorProp = JSON.parse(json).generator;
32
+ templateConfig = generatorProp || {};
33
+ } catch (packageError) {
34
+ log.debug('Could not load generator config from package.json:', packageError);
35
+ }
36
+ }
37
+ loadDefaultValues(templateConfig, templateParams);
38
+ return templateConfig;
39
+ }
40
+
41
+ /**
42
+ * Loads default values of parameters from template config. If value was already set as parameter it will not be overriden.
43
+ * @param {Object} templateConfig Template configuration.
44
+ * @param {Object} templateParams Params specified when running generator.
45
+ * @returns {void}
46
+ */
47
+ function loadDefaultValues(templateConfig, templateParams) {
48
+ const parameters = templateConfig.parameters;
49
+ const defaultValues = Object.keys(parameters || {}).filter(key => parameters[key].default);
50
+
51
+ defaultValues.filter(dv => !Object.prototype.hasOwnProperty.call(templateParams, dv)).forEach(dv =>
52
+ Object.defineProperty(templateParams, dv, {
53
+ enumerable: true,
54
+ get() {
55
+ return parameters[dv].default;
56
+ }
57
+ })
58
+ );
59
+ }
60
+
61
+ module.exports = {
62
+ loadTemplateConfig,
63
+ loadDefaultValues
64
+ };
@@ -1,10 +1,10 @@
1
1
  const semver = require('semver');
2
2
  const Ajv = require('ajv');
3
- const { getGeneratorVersion } = require('./utils');
3
+ const { getGeneratorVersion } = require('../../utils');
4
4
  const levenshtein = require('levenshtein-edit-distance');
5
5
  // eslint-disable-next-line no-unused-vars
6
6
  const {AsyncAPIDocumentInterface, AsyncAPIDocument} = require('@asyncapi/parser');
7
- const { usesNewAPI } = require('./parser');
7
+ const { usesNewAPI } = require('../../parser');
8
8
 
9
9
  const ajv = new Ajv({ allErrors: true });
10
10
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@asyncapi/generator",
3
- "version": "2.8.2",
3
+ "version": "2.8.4",
4
4
  "description": "The AsyncAPI generator. It can generate documentation, code, anything!",
5
5
  "main": "./lib/generator.js",
6
6
  "bin": {
@@ -52,6 +52,8 @@
52
52
  "license": "Apache-2.0",
53
53
  "homepage": "https://github.com/asyncapi/generator",
54
54
  "dependencies": {
55
+ "@asyncapi/generator-components": "*",
56
+ "@asyncapi/generator-helpers": "*",
55
57
  "@asyncapi/generator-hooks": "*",
56
58
  "@asyncapi/generator-react-sdk": "*",
57
59
  "@asyncapi/multi-parser": "^2.1.1",
@@ -1,60 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- require('source-map-support/register');
6
- var generatorReactSdk = require('@asyncapi/generator-react-sdk');
7
- var jsxRuntime = require('/home/runner/work/generator/generator/node_modules/react/cjs/react-jsx-runtime.production.min.js');
8
-
9
- function Connect({
10
- title
11
- }) {
12
- return /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
13
- newLines: 2,
14
- indent: 2,
15
- children: `/// Method to establish a WebSocket connection
16
- Future<void> connect() async {
17
- if (_channel != null) {
18
- print('Already connected to ${title} server');
19
- return;
20
- }
21
- try {
22
- final wsUrl = Uri.parse(_url);
23
- _channel = WebSocketChannel.connect(wsUrl);
24
- print('Connected to ${title} server');
25
-
26
- /// Listen to the incoming message stream
27
- _channel?.stream.listen(
28
- (message) {
29
- if (_messageHandlers.isNotEmpty) {
30
- for (var handler in _messageHandlers) {
31
- _handleMessage(message, handler);
32
- }
33
- } else {
34
- print('Message received: $message');
35
- }
36
- },
37
- onError: (error) {
38
- if (_errorHandlers.isNotEmpty) {
39
- for (var handler in _errorHandlers) {
40
- handler(error);
41
- }
42
- } else {
43
- print('WebSocket Error: $error');
44
- }
45
- },
46
- onDone: () {
47
- _channel = null;
48
- print('Disconnected from ${title} server');
49
- },
50
- );
51
- } catch (error) {
52
- print('Connection failed: $error');
53
- rethrow;
54
- }
55
- }`
56
- });
57
- }
58
-
59
- exports.Connect = Connect;
60
- //# sourceMappingURL=Connect.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Connect.js","sources":["../../../../../../../../packages/templates/clients/websocket/dart/components/Connect.js"],"sourcesContent":["import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function Connect({ title }) {\n return (\n <Text newLines={2} indent={2}>\n {`/// Method to establish a WebSocket connection\nFuture<void> connect() async {\n if (_channel != null) {\n print('Already connected to ${title} server');\n return;\n }\n try {\n final wsUrl = Uri.parse(_url);\n _channel = WebSocketChannel.connect(wsUrl);\n print('Connected to ${title} server');\n\n /// Listen to the incoming message stream\n _channel?.stream.listen(\n (message) {\n if (_messageHandlers.isNotEmpty) {\n for (var handler in _messageHandlers) {\n _handleMessage(message, handler);\n }\n } else {\n print('Message received: $message');\n }\n },\n onError: (error) {\n if (_errorHandlers.isNotEmpty) {\n for (var handler in _errorHandlers) {\n handler(error);\n }\n } else {\n print('WebSocket Error: $error');\n }\n },\n onDone: () {\n _channel = null;\n print('Disconnected from ${title} server');\n },\n );\n } catch (error) {\n print('Connection failed: $error');\n rethrow;\n }\n}`}\n </Text>\n );\n}"],"names":["Connect","title","_jsx","Text","newLines","indent","children"],"mappings":";;;;;;;;AAEO,SAASA,OAAOA,CAAC;AAAEC,EAAAA,KAAAA;AAAM,CAAC,EAAE;EACjC,oBACEC,cAAA,CAACC,sBAAI,EAAA;AAACC,IAAAA,QAAQ,EAAE,CAAE;AAACC,IAAAA,MAAM,EAAE,CAAE;AAAAC,IAAAA,QAAA,EAC1B,CAAA;AACP;AACA;AACA,gCAAA,EAAkCL,KAAK,CAAA;AACvC;AACA;AACA;AACA;AACA;AACA,wBAAA,EAA0BA,KAAK,CAAA;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAA,EAAmCA,KAAK,CAAA;AACxC;AACA;AACA;AACA;AACA;AACA;AACA,CAAA,CAAA;AAAE,GACQ,CAAC,CAAA;AAEX;;;;"}
@@ -1,21 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- require('source-map-support/register');
6
- var generatorReactSdk = require('@asyncapi/generator-react-sdk');
7
- var jsxRuntime = require('/home/runner/work/generator/generator/node_modules/react/cjs/react-jsx-runtime.production.min.js');
8
-
9
- function HandleMessage() {
10
- return /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
11
- newLines: 2,
12
- indent: 2,
13
- children: `/// Method to handle message with callback
14
- void _handleMessage(dynamic message, void Function(String) cb) {
15
- cb(message is String ? message : message.toString());
16
- }`
17
- });
18
- }
19
-
20
- exports.HandleMessage = HandleMessage;
21
- //# sourceMappingURL=HandleMessage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HandleMessage.js","sources":["../../../../../../../../packages/templates/clients/websocket/dart/components/HandleMessage.js"],"sourcesContent":["import { Text } from '@asyncapi/generator-react-sdk';\n\nexport function HandleMessage() {\n return (\n <Text newLines={2} indent={2}>\n {\n `/// Method to handle message with callback\nvoid _handleMessage(dynamic message, void Function(String) cb) {\n cb(message is String ? message : message.toString());\n}`\n }\n </Text>\n );\n}\n"],"names":["HandleMessage","_jsx","Text","newLines","indent","children"],"mappings":";;;;;;;;AAEO,SAASA,aAAaA,GAAG;EAC9B,oBACEC,cAAA,CAACC,sBAAI,EAAA;AAACC,IAAAA,QAAQ,EAAE,CAAE;AAACC,IAAAA,MAAM,EAAE,CAAE;AAAAC,IAAAA,QAAA,EAEzB,CAAA;AACR;AACA;AACA,CAAA,CAAA;AAAE,GAEQ,CAAC,CAAA;AAEX;;;;"}