@asyncapi/generator 2.8.3 → 2.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/README.md +3 -0
  3. package/docs/api.md +1 -50
  4. package/docs/baked-in-templates.md +1 -1
  5. package/docs/jsdoc2md-handlebars/main-index/global-index/global-index-dl.hbs +13 -0
  6. package/docs/jsdoc2md-handlebars/member-index-grouped.hbs +6 -0
  7. package/docs/jsdoc2md-handlebars/member-index-list.hbs +6 -0
  8. package/docs/jsdoc2md-handlebars/members.hbs +1 -0
  9. package/docs/migration-nunjucks-react.md +2 -2
  10. package/jest.config.js +7 -5
  11. package/lib/__mocks__/templateConfigValidator.js +1 -1
  12. package/lib/generator.js +4 -59
  13. package/lib/templates/BakedInTemplatesList.json +7 -0
  14. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/.ageneratorrc +33 -0
  15. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/README.md +35 -0
  16. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ClientConsumer.js +30 -0
  17. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ClientConsumer.js.map +1 -0
  18. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ClientEndpoint.js +46 -0
  19. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ClientEndpoint.js.map +1 -0
  20. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ClientProducer.js +30 -0
  21. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ClientProducer.js.map +1 -0
  22. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ConsumeEvent.js +26 -0
  23. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ConsumeEvent.js.map +1 -0
  24. 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
  25. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ConsumerFields.js.map +1 -0
  26. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/EndpointFields.js +44 -0
  27. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/EndpointFields.js.map +1 -0
  28. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/MiddleService.js +46 -0
  29. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/MiddleService.js.map +1 -0
  30. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ProduceEvent.js +48 -0
  31. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ProduceEvent.js.map +1 -0
  32. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ProducerFields.js +26 -0
  33. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/ProducerFields.js.map +1 -0
  34. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/SendEvent.js +40 -0
  35. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/SendEvent.js.map +1 -0
  36. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/dependencies/ConsumerDependencies.js +18 -0
  37. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/dependencies/ConsumerDependencies.js.map +1 -0
  38. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/dependencies/EndpointDependencies.js +18 -0
  39. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/dependencies/EndpointDependencies.js.map +1 -0
  40. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/dependencies/ProducerDependencies.js +18 -0
  41. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/components/dependencies/ProducerDependencies.js.map +1 -0
  42. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/jest.config.js +13 -0
  43. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/jest.config.js.map +1 -0
  44. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/client.java.js +183 -0
  45. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/client.java.js.map +1 -0
  46. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/consumer.java.js +86 -0
  47. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/consumer.java.js.map +1 -0
  48. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/models/model.js +19 -0
  49. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/models/model.js.map +1 -0
  50. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/producer.java.js +102 -0
  51. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/producer.java.js.map +1 -0
  52. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/resources/AppProperties.js +73 -0
  53. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/__transpiled/template/src/main/resources/AppProperties.js.map +1 -0
  54. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/ClientConsumer.js +20 -0
  55. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/ClientEndpoint.js +32 -0
  56. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/ClientProducer.js +21 -0
  57. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/ConsumeEvent.js +18 -0
  58. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/ConsumerFields.js +9 -0
  59. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/EndpointFields.js +40 -0
  60. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/MiddleService.js +37 -0
  61. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/ProduceEvent.js +39 -0
  62. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/ProducerFields.js +16 -0
  63. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/SendEvent.js +33 -0
  64. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/dependencies/ConsumerDependencies.js +11 -0
  65. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/dependencies/EndpointDependencies.js +11 -0
  66. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/components/dependencies/ProducerDependencies.js +11 -0
  67. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/jest.config.js +14 -0
  68. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/package.json +49 -0
  69. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/.dockerignore +5 -0
  70. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/.mvn/wrapper/MavenWrapperDownloader.java +93 -0
  71. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/.mvn/wrapper/maven-wrapper.properties +20 -0
  72. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/README.md +59 -0
  73. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/mvnw +332 -0
  74. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/mvnw.cmd +206 -0
  75. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/pom.xml +123 -0
  76. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/src/main/docker/Dockerfile.jvm +98 -0
  77. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/src/main/docker/docker-compose.yaml +28 -0
  78. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/src/main/java/com/asyncapi/client.java.js +27 -0
  79. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/src/main/java/com/asyncapi/consumer.java.js +22 -0
  80. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/src/main/java/com/asyncapi/models/model.js +6 -0
  81. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/src/main/java/com/asyncapi/producer.java.js +23 -0
  82. package/lib/templates/bakedInTemplates/core-template-client-kafka-java-quarkus/template/src/main/resources/AppProperties.js +75 -0
  83. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/ClientClass.js +10 -5
  84. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/ClientClass.js.map +1 -1
  85. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/jest.config.js +13 -0
  86. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/jest.config.js.map +1 -0
  87. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/template/client.dart.js +10 -74
  88. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/template/client.dart.js.map +1 -1
  89. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/ClientClass.js +11 -7
  90. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/jest.config.js +14 -0
  91. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/package.json +1 -15
  92. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/README.md +88 -6
  93. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ClientConnector.js +22 -5
  94. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ClientConnector.js.map +1 -1
  95. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ClientFields.js +19 -2
  96. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ClientFields.js.map +1 -1
  97. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ConnectorFields.js +8 -2
  98. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ConnectorFields.js.map +1 -1
  99. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/Constructor.js +44 -0
  100. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/Constructor.js.map +1 -0
  101. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ConstructorSignature.js +28 -0
  102. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/ConstructorSignature.js.map +1 -0
  103. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/DefaultConstructorSignature.js +32 -0
  104. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/DefaultConstructorSignature.js.map +1 -0
  105. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/EchoWebSocket.js +20 -5
  106. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/EchoWebSocket.js.map +1 -1
  107. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/HandleError.js +1 -2
  108. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/HandleError.js.map +1 -1
  109. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/InitConnector.js +23 -33
  110. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/InitConnector.js.map +1 -1
  111. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnTextMessageHandler.js +42 -9
  112. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnTextMessageHandler.js.map +1 -1
  113. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/TimedConnection.js +39 -0
  114. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/TimedConnection.js.map +1 -0
  115. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/URIParams.js +63 -0
  116. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/URIParams.js.map +1 -0
  117. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/dependencies/ClientDependencies.js +13 -17
  118. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/dependencies/ClientDependencies.js.map +1 -1
  119. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/dependencies/ConnectorDependencies.js +16 -15
  120. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/dependencies/ConnectorDependencies.js.map +1 -1
  121. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/jest.config.js +13 -0
  122. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/jest.config.js.map +1 -0
  123. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/client.java.js +153 -57
  124. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/client.java.js.map +1 -1
  125. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/connector.java.js +152 -51
  126. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/connector.java.js.map +1 -1
  127. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/models/model.js +2 -35
  128. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/java/com/asyncapi/models/model.js.map +1 -1
  129. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/resources/AppProperties.js +3 -1
  130. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/template/src/main/resources/AppProperties.js.map +1 -1
  131. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/ClientConnector.js +12 -5
  132. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/ClientFields.js +18 -2
  133. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/ConnectorFields.js +7 -2
  134. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/Constructor.js +30 -0
  135. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/ConstructorSignature.js +19 -0
  136. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/DefaultConstructorSignature.js +23 -0
  137. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/EchoWebSocket.js +17 -7
  138. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/HandleError.js +2 -2
  139. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/InitConnector.js +13 -30
  140. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/OnTextMessageHandler.js +55 -15
  141. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/TimedConnection.js +31 -0
  142. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/URIParams.js +60 -0
  143. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/dependencies/ClientDependencies.js +12 -18
  144. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/dependencies/ConnectorDependencies.js +16 -16
  145. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/jest.config.js +14 -0
  146. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/package.json +1 -15
  147. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/pom.xml +15 -1
  148. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/src/main/java/com/asyncapi/client.java.js +4 -3
  149. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/src/main/java/com/asyncapi/connector.java.js +7 -3
  150. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/src/main/java/com/asyncapi/models/model.js +2 -32
  151. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/template/src/main/resources/AppProperties.js +5 -2
  152. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/.ageneratorrc +8 -0
  153. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/ClientClass.js +15 -7
  154. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/ClientClass.js.map +1 -1
  155. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/CompileOperationSchemas.js +48 -0
  156. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/CompileOperationSchemas.js.map +1 -0
  157. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/Constructor.js +7 -1
  158. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/Constructor.js.map +1 -1
  159. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/jest.config.js +13 -0
  160. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/jest.config.js.map +1 -0
  161. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/template/client.js.js +51 -116
  162. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/template/client.js.js.map +1 -1
  163. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/ClientClass.js +19 -11
  164. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/CompileOperationSchemas.js +40 -0
  165. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/Constructor.js +7 -1
  166. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/jest.config.js +14 -0
  167. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/package.json +5 -18
  168. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/template/client.js.js +5 -1
  169. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/README.md +20 -5
  170. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/ClientClass.js +15 -8
  171. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/ClientClass.js.map +1 -1
  172. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Constructor.js +3 -2
  173. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Constructor.js.map +1 -1
  174. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/jest.config.js +13 -0
  175. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/jest.config.js.map +1 -0
  176. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/template/client.py.js +41 -174
  177. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/template/client.py.js.map +1 -1
  178. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/ClientClass.js +20 -10
  179. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/Constructor.js +5 -2
  180. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/jest.config.js +14 -0
  181. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/package.json +1 -15
  182. package/lib/templates/config/loader.js +64 -0
  183. package/lib/{templateConfigValidator.js → templates/config/validator.js} +2 -2
  184. package/package.json +3 -3
  185. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/Connect.js +0 -60
  186. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/Connect.js.map +0 -1
  187. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/HandleMessage.js +0 -21
  188. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/HandleMessage.js.map +0 -1
  189. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/RegisterErrorHandler.js +0 -21
  190. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/__transpiled/components/RegisterErrorHandler.js.map +0 -1
  191. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/Connect.js +0 -49
  192. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/HandleMessage.js +0 -14
  193. package/lib/templates/bakedInTemplates/core-template-client-websocket-dart/components/RegisterErrorHandler.js +0 -14
  194. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnClose.js +0 -23
  195. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnClose.js.map +0 -1
  196. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnOpen.js +0 -25
  197. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/__transpiled/components/OnOpen.js.map +0 -1
  198. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/OnClose.js +0 -16
  199. package/lib/templates/bakedInTemplates/core-template-client-websocket-java-quarkus/components/OnOpen.js +0 -16
  200. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/Connect.js +0 -63
  201. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/Connect.js.map +0 -1
  202. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/HandleMessage.js.map +0 -1
  203. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/RegisterErrorHandler.js +0 -25
  204. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/RegisterErrorHandler.js.map +0 -1
  205. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/SendOperation.js +0 -53
  206. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/__transpiled/components/SendOperation.js.map +0 -1
  207. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/Connect.js +0 -54
  208. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/HandleMessage.js +0 -14
  209. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/RegisterErrorHandler.js +0 -18
  210. package/lib/templates/bakedInTemplates/core-template-client-websocket-javascript/components/SendOperation.js +0 -44
  211. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Connect.js +0 -58
  212. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/Connect.js.map +0 -1
  213. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/HandleMessage.js +0 -24
  214. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/HandleMessage.js.map +0 -1
  215. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/QueryParamsVariables.js +0 -36
  216. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/QueryParamsVariables.js.map +0 -1
  217. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/RegisterErrorHandler.js +0 -23
  218. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/RegisterErrorHandler.js.map +0 -1
  219. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/SendOperation.js +0 -56
  220. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/__transpiled/components/SendOperation.js.map +0 -1
  221. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/Connect.js +0 -49
  222. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/HandleMessage.js +0 -17
  223. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/QueryParamsVariables.js +0 -27
  224. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/RegisterErrorHandler.js +0 -16
  225. package/lib/templates/bakedInTemplates/core-template-client-websocket-python/components/SendOperation.js +0 -50
@@ -0,0 +1,102 @@
1
+ 'use strict';
2
+
3
+ require('source-map-support/register');
4
+ var generatorReactSdk = require('@asyncapi/generator-react-sdk');
5
+ var generatorComponents = require('@asyncapi/generator-components');
6
+ var jsxRuntime = require('/home/runner/work/generator/generator/node_modules/react/cjs/react-jsx-runtime.production.min.js');
7
+ var generatorHelpers = require('@asyncapi/generator-helpers');
8
+
9
+ function ProducerDependencies() {
10
+ return /*#__PURE__*/jsxRuntime.jsx(generatorComponents.DependencyProvider, {
11
+ language: "java",
12
+ framework: "quarkus",
13
+ role: "producer"
14
+ });
15
+ }
16
+
17
+ function ProducerFields({
18
+ clientName
19
+ }) {
20
+ const className = generatorHelpers.upperFirst(clientName);
21
+ return /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
22
+ newLines: 2,
23
+ children: `
24
+ private static final Logger logger = Logger.getLogger(${className}.class);
25
+
26
+ @Inject
27
+ @Channel("producer-channel")
28
+ Emitter<String> ${clientName}Emitter;`
29
+ });
30
+ }
31
+
32
+ function SendEvent({
33
+ eventName
34
+ }) {
35
+ const className = generatorHelpers.upperFirst(eventName);
36
+ return /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
37
+ newLines: 2,
38
+ children: `
39
+ public String send${className}(String requestId, String value) {
40
+ try{
41
+ // Generate requestId if null
42
+ if (requestId == null || requestId.trim().isEmpty()) {
43
+ requestId = UUID.randomUUID().toString();
44
+ }
45
+
46
+ if(value == null || value.trim().isEmpty()) {
47
+ value = "ASYNCAPI - TEST";
48
+ }
49
+ Message<String> message = KafkaRecord.of(requestId, value);
50
+ ${eventName}Emitter.send(message);
51
+ logger.infof("Sent costing request with ID: %s and value: %s", requestId, value);
52
+ }catch (Exception e) {
53
+ throw new RuntimeException(String.format("Failed to produce event: %s", e.getMessage()));
54
+ }
55
+
56
+
57
+ return requestId;
58
+ }
59
+ }`
60
+ });
61
+ }
62
+
63
+ function ClientProducer({
64
+ className
65
+ }) {
66
+ const clientName = generatorHelpers.lowerFirst(className);
67
+ return /*#__PURE__*/jsxRuntime.jsxs(generatorReactSdk.Text, {
68
+ newLines: 2,
69
+ children: [/*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
70
+ newLines: 2,
71
+ children: `
72
+ @ApplicationScoped
73
+ public class ${className}{`
74
+ }), /*#__PURE__*/jsxRuntime.jsx(ProducerFields, {
75
+ clientName: clientName
76
+ }), /*#__PURE__*/jsxRuntime.jsx(SendEvent, {
77
+ eventName: clientName
78
+ })]
79
+ });
80
+ }
81
+
82
+ function producer_java ({
83
+ asyncapi,
84
+ params
85
+ }) {
86
+ const operations = asyncapi.operations();
87
+ const sendOperations = operations.filterBySend();
88
+ return sendOperations.map((operation, index) => {
89
+ const topicName = generatorHelpers.toCamelCase(operation.channels()[index].id());
90
+ const producerName = `${generatorHelpers.upperFirst(topicName)}Producer`;
91
+ const producerFileName = generatorHelpers.upperFirst(`${producerName}.java`);
92
+ return /*#__PURE__*/jsxRuntime.jsxs(generatorReactSdk.File, {
93
+ name: producerFileName,
94
+ children: [/*#__PURE__*/jsxRuntime.jsx(ProducerDependencies, {}), /*#__PURE__*/jsxRuntime.jsx(ClientProducer, {
95
+ className: producerName
96
+ })]
97
+ });
98
+ });
99
+ }
100
+
101
+ module.exports = producer_java;
102
+ //# sourceMappingURL=producer.java.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"producer.java.js","sources":["../../../../../../../../../../../../../packages/templates/clients/kafka/java/quarkus/components/dependencies/ProducerDependencies.js","../../../../../../../../../../../../../packages/templates/clients/kafka/java/quarkus/components/ProducerFields.js","../../../../../../../../../../../../../packages/templates/clients/kafka/java/quarkus/components/SendEvent.js","../../../../../../../../../../../../../packages/templates/clients/kafka/java/quarkus/components/ClientProducer.js","../../../../../../../../../../../../../packages/templates/clients/kafka/java/quarkus/template/src/main/java/com/asyncapi/producer.java.js"],"sourcesContent":["import { DependencyProvider } from '@asyncapi/generator-components';\n\nexport function ProducerDependencies() {\n return (\n <DependencyProvider\n language=\"java\"\n framework=\"quarkus\"\n role=\"producer\"\n />\n );\n} ","import { Text } from '@asyncapi/generator-react-sdk';\nimport { upperFirst } from '@asyncapi/generator-helpers';\n\nexport function ProducerFields({ clientName }) {\n const className = upperFirst(clientName);\n return (\n <Text newLines={2}>\n {`\n private static final Logger logger = Logger.getLogger(${className}.class);\n\n @Inject \n @Channel(\"producer-channel\")\n Emitter<String> ${clientName}Emitter;`}\n </Text>\n );\n}\n","import { Text } from '@asyncapi/generator-react-sdk';\nimport { upperFirst } from '@asyncapi/generator-helpers';\n\nexport default function SendEvent({ eventName }) {\n const className = upperFirst(eventName);\n \n return (\n <Text newLines={2}>\n {`\n public String send${className}(String requestId, String value) {\n try{\n // Generate requestId if null\n if (requestId == null || requestId.trim().isEmpty()) {\n requestId = UUID.randomUUID().toString();\n } \n \n if(value == null || value.trim().isEmpty()) {\n value = \"ASYNCAPI - TEST\";\n }\n Message<String> message = KafkaRecord.of(requestId, value);\n ${eventName}Emitter.send(message);\n logger.infof(\"Sent costing request with ID: %s and value: %s\", requestId, value);\n }catch (Exception e) {\n throw new RuntimeException(String.format(\"Failed to produce event: %s\", e.getMessage()));\n }\n\n\n return requestId;\n }\n}`}\n </Text>\n );\n}","import { ProducerFields } from './ProducerFields';\nimport { Text } from '@asyncapi/generator-react-sdk';\nimport SendEvent from './SendEvent';\nimport { lowerFirst } from '@asyncapi/generator-helpers';\n\nexport default function ClientProducer({ className }) {\n const clientName = lowerFirst(className);\n\n return (\n <Text newLines={2}>\n <Text newLines={2}>\n {`\n@ApplicationScoped \npublic class ${className}{`}\n </Text>\n <ProducerFields clientName={clientName} />\n <SendEvent eventName={clientName}/>\n \n </Text>\n );\n}","import { File } from '@asyncapi/generator-react-sdk';\nimport { ProducerDependencies } from '../../../../../../components/dependencies/ProducerDependencies';\nimport ClientProducer from '../../../../../../components/ClientProducer';\nimport { toCamelCase, upperFirst } from '@asyncapi/generator-helpers';\n\nexport default function ({ asyncapi, params }) {\n const operations = asyncapi.operations(); \n\n const sendOperations = operations.filterBySend(); \n \n return sendOperations.map((operation, index) => {\n const topicName = toCamelCase(operation.channels()[index].id());\n const producerName = `${upperFirst(topicName) }Producer`;\n const producerFileName = upperFirst(`${producerName}.java`);\n \n return (\n <File name={producerFileName}>\n <ProducerDependencies />\n <ClientProducer className={producerName}/>\n </File>\n );\n });\n}"],"names":["ProducerDependencies","_jsx","DependencyProvider","language","framework","role","ProducerFields","clientName","className","upperFirst","Text","newLines","children","SendEvent","eventName","ClientProducer","lowerFirst","_jsxs","asyncapi","params","operations","sendOperations","filterBySend","map","operation","index","topicName","toCamelCase","channels","id","producerName","producerFileName","File","name"],"mappings":";;;;;;;;AAEO,SAASA,oBAAoBA,GAAG;EACrC,oBACEC,cAAA,CAACC,sCAAkB,EAAA;AACjBC,IAAAA,QAAQ,EAAC,MAAM;AACfC,IAAAA,SAAS,EAAC,SAAS;AACnBC,IAAAA,IAAI,EAAC,UAAA;AAAU,GAChB,CAAC,CAAA;AAEN;;ACPO,SAASC,cAAcA,CAAC;AAAEC,EAAAA,UAAAA;AAAW,CAAC,EAAE;AAC7C,EAAA,MAAMC,SAAS,GAAGC,2BAAU,CAACF,UAAU,CAAC,CAAA;EACxC,oBACEN,cAAA,CAACS,sBAAI,EAAA;AAACC,IAAAA,QAAQ,EAAE,CAAE;AAAAC,IAAAA,QAAA,EACf,CAAA;AACP,0DAAA,EAA4DJ,SAAS,CAAA;AACrE;AACA;AACA;AACA,oBAAA,EAAsBD,UAAU,CAAA,QAAA,CAAA;AAAU,GAChC,CAAC,CAAA;AAEX;;ACZe,SAASM,SAASA,CAAC;AAAEC,EAAAA,SAAAA;AAAU,CAAC,EAAE;AAC/C,EAAA,MAAMN,SAAS,GAAGC,2BAAU,CAACK,SAAS,CAAC,CAAA;EAEvC,oBACEb,cAAA,CAACS,sBAAI,EAAA;AAACC,IAAAA,QAAQ,EAAE,CAAE;AAAAC,IAAAA,QAAA,EACf,CAAA;AACP,sBAAA,EAAwBJ,SAAS,CAAA;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAA,EAAYM,SAAS,CAAA;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAA,CAAA;AAAE,GACQ,CAAC,CAAA;AAEX;;AC3Be,SAASC,cAAcA,CAAC;AAAEP,EAAAA,SAAAA;AAAU,CAAC,EAAE;AACpD,EAAA,MAAMD,UAAU,GAAGS,2BAAU,CAACR,SAAS,CAAC,CAAA;EAExC,oBACES,eAAA,CAACP,sBAAI,EAAA;AAACC,IAAAA,QAAQ,EAAE,CAAE;IAAAC,QAAA,EAAA,cAChBX,cAAA,CAACS,sBAAI,EAAA;AAACC,MAAAA,QAAQ,EAAE,CAAE;AAAAC,MAAAA,QAAA,EACf,CAAA;AACT;AACA,aAAA,EAAeJ,SAAS,CAAA,CAAA,CAAA;AAAG,KACf,CAAC,eACPP,cAAA,CAACK,cAAc,EAAA;AAACC,MAAAA,UAAU,EAAEA,UAAAA;AAAW,KAAE,CAAC,eAC1CN,cAAA,CAACY,SAAS,EAAA;AAACC,MAAAA,SAAS,EAAEP,UAAAA;AAAW,KAAC,CAAC,CAAA;AAAA,GAE/B,CAAC,CAAA;AAEX;;ACfe,sBAAU,EAAA;EAAEW,QAAQ;AAAEC,EAAAA,MAAAA;AAAO,CAAC,EAAE;AAC7C,EAAA,MAAMC,UAAU,GAAGF,QAAQ,CAACE,UAAU,EAAE,CAAA;AAExC,EAAA,MAAMC,cAAc,GAAGD,UAAU,CAACE,YAAY,EAAE,CAAA;EAEhD,OAAOD,cAAc,CAACE,GAAG,CAAC,CAACC,SAAS,EAAEC,KAAK,KAAK;AAC9C,IAAA,MAAMC,SAAS,GAAGC,4BAAW,CAACH,SAAS,CAACI,QAAQ,EAAE,CAACH,KAAK,CAAC,CAACI,EAAE,EAAE,CAAC,CAAA;AAC/D,IAAA,MAAMC,YAAY,GAAG,CAAA,EAAGrB,2BAAU,CAACiB,SAAS,CAAC,CAAY,QAAA,CAAA,CAAA;AACzD,IAAA,MAAMK,gBAAgB,GAAGtB,2BAAU,CAAC,CAAGqB,EAAAA,YAAY,OAAO,CAAC,CAAA;IAE3D,oBACEb,eAAA,CAACe,sBAAI,EAAA;AAACC,MAAAA,IAAI,EAAEF,gBAAiB;MAAAnB,QAAA,EAAA,cAC3BX,cAAA,CAACD,oBAAoB,IAAE,CAAC,eACxBC,cAAA,CAACc,cAAc,EAAA;AAACP,QAAAA,SAAS,EAAEsB,YAAAA;AAAa,OAAC,CAAC,CAAA;AAAA,KACtC,CAAC,CAAA;AAEX,GAAC,CAAC,CAAA;AACJ;;;;"}
@@ -0,0 +1,73 @@
1
+ 'use strict';
2
+
3
+ require('source-map-support/register');
4
+ var generatorReactSdk = require('@asyncapi/generator-react-sdk');
5
+ var jsxRuntime = require('/home/runner/work/generator/generator/node_modules/react/cjs/react-jsx-runtime.production.min.js');
6
+
7
+ function AppProperties({
8
+ asyncapi,
9
+ params
10
+ }) {
11
+ const channels = asyncapi.channels();
12
+ const operations = asyncapi.operations();
13
+ const receiveOperations = operations.filterByReceive();
14
+ const sendOperations = operations.filterBySend();
15
+ if (!sendOperations || !receiveOperations) {
16
+ return null;
17
+ }
18
+ const version = params.version;
19
+ const env = params.env;
20
+ let producerActualTopic = '';
21
+ let consumerActualTopic = '';
22
+ return /*#__PURE__*/jsxRuntime.jsxs(generatorReactSdk.File, {
23
+ name: "application.properties",
24
+ children: [/*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
25
+ children: `
26
+ # application.properties
27
+
28
+ # Kafka broker configuration
29
+ kafka.bootstrap.servers=localhost:9092`
30
+ }), sendOperations.length > 0 && sendOperations.map((operation, index) => {
31
+ const address = operation.channels()[index].address();
32
+ producerActualTopic = address.replace('{env}', env).replace('{version}', version);
33
+ return /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
34
+ newLines: 2,
35
+ children: `
36
+ # Configure outgoing channel for costing requests (writing to Kafka) - producer
37
+ mp.messaging.outgoing.producer-channel.connector=smallrye-kafka
38
+ mp.messaging.outgoing.producer-channel.topic=${producerActualTopic}
39
+ mp.messaging.outgoing.producer-channel.key.serializer=org.apache.kafka.common.serialization.StringSerializer
40
+ mp.messaging.outgoing.producer-channel.value.serializer=org.apache.kafka.common.serialization.StringSerializer`
41
+ });
42
+ }), receiveOperations.length > 0 && receiveOperations.map((operation, index) => {
43
+ const address = operation.channels()[index].address();
44
+ consumerActualTopic = address.replace('{env}', env).replace('{version}', version);
45
+ return /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
46
+ newLines: 2,
47
+ children: `
48
+ # Configure incoming channel for costing responses (reading from Kafka) - consumer
49
+ mp.messaging.incoming.consumer-channel.connector=smallrye-kafka
50
+ mp.messaging.incoming.consumer-channel.topic=${consumerActualTopic}
51
+ mp.messaging.incoming.consumer-channel.key.deserializer=org.apache.kafka.common.serialization.StringDeserializer
52
+ mp.messaging.incoming.consumer-channel.value.deserializer=org.apache.kafka.common.serialization.StringDeserializer`
53
+ });
54
+ }), channels.length > 1 && /*#__PURE__*/jsxRuntime.jsx(generatorReactSdk.Text, {
55
+ newLines: 2,
56
+ children: `
57
+ # Incoming: read from producer's topic
58
+ mp.messaging.incoming.middle-in.connector=smallrye-kafka
59
+ mp.messaging.incoming.middle-in.topic=${producerActualTopic}
60
+ mp.messaging.incoming.middle-in.value.deserializer=org.apache.kafka.common.serialization.StringDeserializer
61
+ mp.messaging.incoming.middle-in.key.deserializer=org.apache.kafka.common.serialization.StringDeserializer
62
+
63
+ # Outgoing: write to consumer's topic
64
+ mp.messaging.outgoing.middle-out.connector=smallrye-kafka
65
+ mp.messaging.outgoing.middle-out.topic=${consumerActualTopic}
66
+ mp.messaging.outgoing.middle-out.value.serializer=org.apache.kafka.common.serialization.StringSerializer
67
+ mp.messaging.outgoing.middle-out.key.serializer=org.apache.kafka.common.serialization.StringSerializer`
68
+ })]
69
+ });
70
+ }
71
+
72
+ module.exports = AppProperties;
73
+ //# sourceMappingURL=AppProperties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppProperties.js","sources":["../../../../../../../../../../../packages/templates/clients/kafka/java/quarkus/template/src/main/resources/AppProperties.js"],"sourcesContent":["import { Text, File } from '@asyncapi/generator-react-sdk';\n\nexport default function AppProperties({ asyncapi, params }) {\n const channels = asyncapi.channels();\n const operations = asyncapi.operations();\n const receiveOperations = operations.filterByReceive();\n const sendOperations = operations.filterBySend();\n if (!sendOperations || !receiveOperations) {\n return null;\n }\n \n const version = params.version;\n const env = params.env;\n\n let producerActualTopic = '';\n let consumerActualTopic = '';\n\n return (\n <File name=\"application.properties\">\n <Text>\n {`\n# application.properties\n\n# Kafka broker configuration\nkafka.bootstrap.servers=localhost:9092`}\n </Text>\n {sendOperations.length > 0 && \n (sendOperations.map((operation, index) => {\n const address = operation.channels()[index].address();\n producerActualTopic = address.replace('{env}', env).replace('{version}', version);\n return (\n <Text newLines={2}>\n {`\n# Configure outgoing channel for costing requests (writing to Kafka) - producer\nmp.messaging.outgoing.producer-channel.connector=smallrye-kafka\nmp.messaging.outgoing.producer-channel.topic=${producerActualTopic}\nmp.messaging.outgoing.producer-channel.key.serializer=org.apache.kafka.common.serialization.StringSerializer\nmp.messaging.outgoing.producer-channel.value.serializer=org.apache.kafka.common.serialization.StringSerializer`}\n </Text>\n );\n }))}\n {receiveOperations.length > 0 && \n (receiveOperations.map((operation, index) => {\n const address = operation.channels()[index].address();\n consumerActualTopic = address.replace('{env}', env).replace('{version}', version);\n return (\n <Text newLines={2}>\n {`\n# Configure incoming channel for costing responses (reading from Kafka) - consumer\nmp.messaging.incoming.consumer-channel.connector=smallrye-kafka\nmp.messaging.incoming.consumer-channel.topic=${consumerActualTopic}\nmp.messaging.incoming.consumer-channel.key.deserializer=org.apache.kafka.common.serialization.StringDeserializer\nmp.messaging.incoming.consumer-channel.value.deserializer=org.apache.kafka.common.serialization.StringDeserializer`}\n </Text>\n );\n }))}\n {channels.length > 1 && (\n <Text newLines={2}>\n {`\n# Incoming: read from producer's topic\nmp.messaging.incoming.middle-in.connector=smallrye-kafka\nmp.messaging.incoming.middle-in.topic=${producerActualTopic}\nmp.messaging.incoming.middle-in.value.deserializer=org.apache.kafka.common.serialization.StringDeserializer\nmp.messaging.incoming.middle-in.key.deserializer=org.apache.kafka.common.serialization.StringDeserializer\n\n# Outgoing: write to consumer's topic\nmp.messaging.outgoing.middle-out.connector=smallrye-kafka\nmp.messaging.outgoing.middle-out.topic=${consumerActualTopic}\nmp.messaging.outgoing.middle-out.value.serializer=org.apache.kafka.common.serialization.StringSerializer\nmp.messaging.outgoing.middle-out.key.serializer=org.apache.kafka.common.serialization.StringSerializer`}\n </Text>\n )}\n </File>\n );\n}"],"names":["AppProperties","asyncapi","params","channels","operations","receiveOperations","filterByReceive","sendOperations","filterBySend","version","env","producerActualTopic","consumerActualTopic","_jsxs","File","name","children","_jsx","Text","length","map","operation","index","address","replace","newLines"],"mappings":";;;;;;AAEe,SAASA,aAAaA,CAAC;EAAEC,QAAQ;AAAEC,EAAAA,MAAAA;AAAO,CAAC,EAAE;AAC1D,EAAA,MAAMC,QAAQ,GAAGF,QAAQ,CAACE,QAAQ,EAAE,CAAA;AACpC,EAAA,MAAMC,UAAU,GAAGH,QAAQ,CAACG,UAAU,EAAE,CAAA;AACxC,EAAA,MAAMC,iBAAiB,GAAGD,UAAU,CAACE,eAAe,EAAE,CAAA;AACtD,EAAA,MAAMC,cAAc,GAAGH,UAAU,CAACI,YAAY,EAAE,CAAA;AAChD,EAAA,IAAI,CAACD,cAAc,IAAI,CAACF,iBAAiB,EAAE;AACzC,IAAA,OAAO,IAAI,CAAA;AACb,GAAA;AAEA,EAAA,MAAMI,OAAO,GAAGP,MAAM,CAACO,OAAO,CAAA;AAC9B,EAAA,MAAMC,GAAG,GAAGR,MAAM,CAACQ,GAAG,CAAA;EAEtB,IAAIC,mBAAmB,GAAG,EAAE,CAAA;EAC5B,IAAIC,mBAAmB,GAAG,EAAE,CAAA;EAE5B,oBACEC,eAAA,CAACC,sBAAI,EAAA;AAACC,IAAAA,IAAI,EAAC,wBAAwB;IAAAC,QAAA,EAAA,cACjCC,cAAA,CAACC,sBAAI,EAAA;AAAAF,MAAAA,QAAA,EACF,CAAA;AACT;AACA;AACA;AACA,sCAAA,CAAA;AAAuC,KAC3B,CAAC,EACNT,cAAc,CAACY,MAAM,GAAG,CAAC,IACrBZ,cAAc,CAACa,GAAG,CAAC,CAACC,SAAS,EAAEC,KAAK,KAAK;AACxC,MAAA,MAAMC,OAAO,GAAGF,SAAS,CAAClB,QAAQ,EAAE,CAACmB,KAAK,CAAC,CAACC,OAAO,EAAE,CAAA;AACrDZ,MAAAA,mBAAmB,GAAGY,OAAO,CAACC,OAAO,CAAC,OAAO,EAAEd,GAAG,CAAC,CAACc,OAAO,CAAC,WAAW,EAAEf,OAAO,CAAC,CAAA;MACjF,oBACEQ,cAAA,CAACC,sBAAI,EAAA;AAACO,QAAAA,QAAQ,EAAE,CAAE;AAAAT,QAAAA,QAAA,EACf,CAAA;AACjB;AACA;AACA,6CAAA,EAA+CL,mBAAmB,CAAA;AAClE;AACA,8GAAA,CAAA;AAA+G,OAC3F,CAAC,CAAA;AAEX,KAAC,CAAE,EACNN,iBAAiB,CAACc,MAAM,GAAG,CAAC,IACxBd,iBAAiB,CAACe,GAAG,CAAC,CAACC,SAAS,EAAEC,KAAK,KAAK;AAC3C,MAAA,MAAMC,OAAO,GAAGF,SAAS,CAAClB,QAAQ,EAAE,CAACmB,KAAK,CAAC,CAACC,OAAO,EAAE,CAAA;AACrDX,MAAAA,mBAAmB,GAAGW,OAAO,CAACC,OAAO,CAAC,OAAO,EAAEd,GAAG,CAAC,CAACc,OAAO,CAAC,WAAW,EAAEf,OAAO,CAAC,CAAA;MACjF,oBACEQ,cAAA,CAACC,sBAAI,EAAA;AAACO,QAAAA,QAAQ,EAAE,CAAE;AAAAT,QAAAA,QAAA,EACf,CAAA;AACjB;AACA;AACA,6CAAA,EAA+CJ,mBAAmB,CAAA;AAClE;AACA,kHAAA,CAAA;AAAmH,OAC/F,CAAC,CAAA;KAEV,CAAE,EACNT,QAAQ,CAACgB,MAAM,GAAG,CAAC,iBAClBF,cAAA,CAACC,sBAAI,EAAA;AAACO,MAAAA,QAAQ,EAAE,CAAE;AAAAT,MAAAA,QAAA,EACf,CAAA;AACX;AACA;AACA,sCAAA,EAAwCL,mBAAmB,CAAA;AAC3D;AACA;AACA;AACA;AACA;AACA,uCAAA,EAAyCC,mBAAmB,CAAA;AAC5D;AACA,sGAAA,CAAA;AAAuG,KACzF,CACP,CAAA;AAAA,GACG,CAAC,CAAA;AAEX;;;;"}
@@ -0,0 +1,20 @@
1
+ import ConsumeEvent from './ConsumeEvent';
2
+ import { ConsumerFields } from './ConsumerFields';
3
+ import { Text } from '@asyncapi/generator-react-sdk';
4
+
5
+ export default function ClientConsumer({ className, eventName }) {
6
+ const formattedEventName = eventName ? eventName.replace(/^\w/, (c) => c.toUpperCase()) : eventName;
7
+
8
+ return (
9
+ <Text newLines={2}>
10
+ <Text newLines={2}>
11
+ {`
12
+ @ApplicationScoped
13
+ public class ${className}{`}
14
+ </Text>
15
+ <ConsumerFields clientName={className}/>
16
+ <ConsumeEvent eventName={formattedEventName}/>
17
+
18
+ </Text>
19
+ );
20
+ }
@@ -0,0 +1,32 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+ import { EndpointFields } from './EndpointFields';
3
+ import { ProduceEvent } from './ProduceEvent';
4
+ import { MiddleService } from './MiddleService';
5
+
6
+ export default function ClientEndpoint({ className, operations, channels, correctPath }) {
7
+ if (!correctPath) {
8
+ correctPath = '/';
9
+ }
10
+
11
+ const sendOperations = operations.filterBySend();
12
+
13
+ return (
14
+ <Text newLines={2}>
15
+ <Text newLines={2}>
16
+ {`
17
+ @Path("${correctPath}")
18
+ @Consumes(MediaType.APPLICATION_JSON)
19
+ @Produces(MediaType.APPLICATION_JSON)
20
+ public class ${className}{`}
21
+ </Text>
22
+ <EndpointFields sendOperations={sendOperations} channels={channels} />
23
+ <ProduceEvent sendOperations={sendOperations}/>
24
+ <MiddleService channels={channels} />
25
+ <Text newLines={2}>
26
+ {`
27
+ }`}
28
+ </Text>
29
+
30
+ </Text>
31
+ );
32
+ }
@@ -0,0 +1,21 @@
1
+ import { ProducerFields } from './ProducerFields';
2
+ import { Text } from '@asyncapi/generator-react-sdk';
3
+ import SendEvent from './SendEvent';
4
+ import { lowerFirst } from '@asyncapi/generator-helpers';
5
+
6
+ export default function ClientProducer({ className }) {
7
+ const clientName = lowerFirst(className);
8
+
9
+ return (
10
+ <Text newLines={2}>
11
+ <Text newLines={2}>
12
+ {`
13
+ @ApplicationScoped
14
+ public class ${className}{`}
15
+ </Text>
16
+ <ProducerFields clientName={clientName} />
17
+ <SendEvent eventName={clientName}/>
18
+
19
+ </Text>
20
+ );
21
+ }
@@ -0,0 +1,18 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+
3
+ export default function ConsumeEvent({ eventName }) {
4
+ return (
5
+ <Text indent={2} newLines={2}>
6
+ {`
7
+ @Incoming("consumer-channel")
8
+ public void consume${eventName}(Record<String, String> record) {
9
+ logger.infof("Got an event, id: %s value: %s", record.key(), record.value());
10
+
11
+ // TODO: Add your business logic here for events
12
+ // - Parse the response payload using your generated models
13
+ }
14
+ }`}
15
+ </Text>
16
+
17
+ );
18
+ }
@@ -0,0 +1,9 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+
3
+ export function ConsumerFields({ clientName }) {
4
+ return (
5
+ <Text indent={2} newLines={2}>
6
+ {`private static final Logger logger = Logger.getLogger(${clientName}.class);`}
7
+ </Text>
8
+ );
9
+ }
@@ -0,0 +1,40 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+ import { toCamelCase, upperFirst } from '@asyncapi/generator-helpers';
3
+
4
+ export function EndpointFields({ sendOperations, channels }) {
5
+ if (!sendOperations || sendOperations.length === 0) {
6
+ return null;
7
+ }
8
+
9
+ return (
10
+ <>
11
+ {sendOperations.map((operation, index) => {
12
+ const topicName = toCamelCase(operation.channels()[index].id());
13
+ const producerName = `${upperFirst(topicName) }Producer`;
14
+
15
+ return (
16
+ <Text key={producerName} newLines={2}>
17
+ {`
18
+ @Inject
19
+ ${producerName} producer;`}
20
+ </Text>
21
+ );
22
+ })}
23
+
24
+ {channels.length > 1 && (
25
+ <Text newLines={2}>
26
+ {`
27
+ @Inject
28
+ @Channel("middle-out")
29
+ Emitter<String> middleEmitter;
30
+
31
+ // Modify DTO for BL
32
+ public static class DTO{
33
+ public String id;
34
+ public String value;
35
+ }`}
36
+ </Text>
37
+ )}
38
+ </>
39
+ );
40
+ }
@@ -0,0 +1,37 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+
3
+ export function MiddleService({ channels }) {
4
+ if (!channels || channels.length < 2) {
5
+ return null;
6
+ }
7
+
8
+ return (
9
+ <Text newLines={2}>
10
+ {`
11
+ @Incoming("middle-in")
12
+ public String relayEvent(Record<String, String> record) {
13
+ String key = null;
14
+ try {
15
+ Thread.sleep(1000); // simulate some work
16
+
17
+ key = record.key();
18
+ String value = record.value();
19
+ System.out.printf("Middle service received: key=%s, value=%s%n", key, value);
20
+
21
+ value = value + " - processed by middle service";
22
+
23
+ Message<String> message = KafkaRecord.of(key, value);
24
+ middleEmitter.send(message);
25
+
26
+ return key;
27
+ } catch (InterruptedException e) {
28
+ Thread.currentThread().interrupt();
29
+ System.out.println("Thread was interrupted: " + e.getMessage());
30
+ }
31
+
32
+ return key;
33
+
34
+ }`}
35
+ </Text>
36
+ );
37
+ }
@@ -0,0 +1,39 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+ import { toCamelCase, upperFirst } from '@asyncapi/generator-helpers';
3
+
4
+ export function ProduceEvent({ sendOperations }) {
5
+ return sendOperations.map((operation, index) => {
6
+ const topicName = toCamelCase(operation.channels()[index].id());
7
+ const producerName = `${upperFirst(topicName) }Producer`;
8
+
9
+ return (
10
+ <Text newLines={1}>
11
+ {`
12
+ /**
13
+ * Simple rest endpoint to simulate the event production
14
+ * */
15
+ @POST
16
+ @Consumes(MediaType.APPLICATION_JSON)
17
+ public Response produceEvent(DTO request) {
18
+ // Logic to produce an event to Kafka
19
+ System.out.println(">>> Raw body: " + request);
20
+
21
+ if (request == null) {
22
+ System.out.println("Request is null - no body provided");
23
+ return Response.status(Response.Status.BAD_REQUEST).entity("Request body is required").build();
24
+ }
25
+
26
+ String returnedID = (request.id != null) ? request.id : "";
27
+ String returnedValue = (request.value != null) ? request.value : "";
28
+
29
+ System.out.printf("Sending request: id=%s, value=%s%n", returnedID, returnedValue);
30
+
31
+ producer.send${producerName}(returnedID, returnedValue);
32
+
33
+
34
+ return Response.accepted().build();
35
+ }`}
36
+ </Text>
37
+ );
38
+ });
39
+ }
@@ -0,0 +1,16 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+ import { upperFirst } from '@asyncapi/generator-helpers';
3
+
4
+ export function ProducerFields({ clientName }) {
5
+ const className = upperFirst(clientName);
6
+ return (
7
+ <Text newLines={2}>
8
+ {`
9
+ private static final Logger logger = Logger.getLogger(${className}.class);
10
+
11
+ @Inject
12
+ @Channel("producer-channel")
13
+ Emitter<String> ${clientName}Emitter;`}
14
+ </Text>
15
+ );
16
+ }
@@ -0,0 +1,33 @@
1
+ import { Text } from '@asyncapi/generator-react-sdk';
2
+ import { upperFirst } from '@asyncapi/generator-helpers';
3
+
4
+ export default function SendEvent({ eventName }) {
5
+ const className = upperFirst(eventName);
6
+
7
+ return (
8
+ <Text newLines={2}>
9
+ {`
10
+ public String send${className}(String requestId, String value) {
11
+ try{
12
+ // Generate requestId if null
13
+ if (requestId == null || requestId.trim().isEmpty()) {
14
+ requestId = UUID.randomUUID().toString();
15
+ }
16
+
17
+ if(value == null || value.trim().isEmpty()) {
18
+ value = "ASYNCAPI - TEST";
19
+ }
20
+ Message<String> message = KafkaRecord.of(requestId, value);
21
+ ${eventName}Emitter.send(message);
22
+ logger.infof("Sent costing request with ID: %s and value: %s", requestId, value);
23
+ }catch (Exception e) {
24
+ throw new RuntimeException(String.format("Failed to produce event: %s", e.getMessage()));
25
+ }
26
+
27
+
28
+ return requestId;
29
+ }
30
+ }`}
31
+ </Text>
32
+ );
33
+ }
@@ -0,0 +1,11 @@
1
+ import { DependencyProvider } from '@asyncapi/generator-components';
2
+
3
+ export function ConsumerDependencies() {
4
+ return (
5
+ <DependencyProvider
6
+ language="java"
7
+ framework="quarkus"
8
+ role="consumer"
9
+ />
10
+ );
11
+ }
@@ -0,0 +1,11 @@
1
+ import { DependencyProvider } from '@asyncapi/generator-components';
2
+
3
+ export function EndpointDependencies() {
4
+ return (
5
+ <DependencyProvider
6
+ language="java"
7
+ framework="quarkus"
8
+ role="kafkaEndpoint"
9
+ />
10
+ );
11
+ }
@@ -0,0 +1,11 @@
1
+ import { DependencyProvider } from '@asyncapi/generator-components';
2
+
3
+ export function ProducerDependencies() {
4
+ return (
5
+ <DependencyProvider
6
+ language="java"
7
+ framework="quarkus"
8
+ role="producer"
9
+ />
10
+ );
11
+ }
@@ -0,0 +1,14 @@
1
+ const baseConfig = require('../../../../../../jest.config.base');
2
+
3
+ module.exports = {
4
+ ...baseConfig(__dirname),
5
+ moduleFileExtensions: [
6
+ 'js',
7
+ 'json',
8
+ 'jsx'
9
+ ],
10
+ transform: {
11
+ '^.+\\.jsx?$': 'babel-jest'
12
+ },
13
+ };
14
+
@@ -0,0 +1,49 @@
1
+ {
2
+ "name": "core-template-client-kafka-java-quarkus",
3
+ "private": true,
4
+ "description": "This is a template generating a Java Quarkus kafka client",
5
+ "keywords": [
6
+ "asyncapi",
7
+ "template",
8
+ "java",
9
+ "kafka",
10
+ "quarkus"
11
+ ],
12
+ "author": "Shuaib Salad <sh.salat@gmail.com>",
13
+ "license": "Apache-2.0",
14
+ "scripts": {
15
+ "test": "jest --coverage --passWithNoTests",
16
+ "test:update": "npm run test -- -u",
17
+ "lint": "eslint --max-warnings 0 --config ../../../../../../.eslintrc --ignore-path ../../../../../../.eslintignore .",
18
+ "lint:fix": "eslint --fix --max-warnings 0 --config ../../../../../../.eslintrc --ignore-path ../../../../../../.eslintignore ."
19
+ },
20
+ "dependencies": {
21
+ "@asyncapi/generator-helpers": "0.2.0",
22
+ "@asyncapi/generator-react-sdk": "^1.1.2"
23
+ },
24
+ "devDependencies": {
25
+ "@asyncapi/generator": "*",
26
+ "@asyncapi/modelina": "^5.2.5",
27
+ "@asyncapi/parser": "^3.0.14",
28
+ "@babel/cli": "^7.25.9",
29
+ "@babel/core": "^7.26.0",
30
+ "@babel/preset-env": "^7.26.0",
31
+ "@babel/preset-react": "^7.25.9",
32
+ "eslint": "^6.8.0",
33
+ "eslint-plugin-jest": "^23.8.2",
34
+ "eslint-plugin-react": "^7.34.1",
35
+ "eslint-plugin-sonarjs": "^0.5.0",
36
+ "jest-esm-transformer": "^1.0.0"
37
+ },
38
+ "babel": {
39
+ "presets": [
40
+ "@babel/preset-env",
41
+ [
42
+ "@babel/preset-react",
43
+ {
44
+ "runtime": "automatic"
45
+ }
46
+ ]
47
+ ]
48
+ }
49
+ }
@@ -0,0 +1,5 @@
1
+ *
2
+ !target/*-runner
3
+ !target/*-runner.jar
4
+ !target/lib/*
5
+ !target/quarkus-app/*