@izara_project/izara-market-library-service-schemas 1.0.23 → 1.0.24

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 (398) hide show
  1. package/index.js +2 -2
  2. package/package.json +2 -2
  3. package/src/GenerateCodeLibs/index.js +1 -0
  4. package/src/MainLibs/index.js +2 -1
  5. package/src/MainLibs/src/Consts.js +485 -0
  6. package/src/MainLibs/src/GenerateCodeUtils.js +59 -0
  7. package/src/TemplateManager/src/ProcessLogical/Handler/data.js +2 -2
  8. package/src/TemplateManager/src/ProcessLogical/ProcessLogicalYaml/data.js +2 -2
  9. package/src/TemplateManager/src/ProcessLogical/mainFunction/data.js +1 -1
  10. package/src/TemplateManager/src/externalService/FunctionNameConfig/data.js +2 -3
  11. package/src/reStructure/GenerateCode.js +151 -0
  12. package/src/reStructure/TemplateConfig.js +31 -0
  13. package/src/reStructure/TemplateData/externalService/functionNameConfig/data.js +162 -0
  14. package/src/reStructure/TemplateData/externalService/functionNameConfig/template.ejs +14 -0
  15. package/src/reStructure/TemplateData/externalService/functionNameConfig/templateIntTesting.ejs +31 -0
  16. package/src/reStructure/TemplateData/externalService/functionNameConfig/templateYaml.ejs +10 -0
  17. package/src/reStructure/TemplateData/externalService/generateTemplateData.js +59 -0
  18. package/src/reStructure/TemplateData/externalService/lambdaRole/data.js +435 -0
  19. package/src/reStructure/TemplateData/externalService/lambdaRole/request.json +18 -0
  20. package/src/reStructure/TemplateData/externalService/lambdaRole/template.ejs +57 -0
  21. package/src/reStructure/TemplateData/externalService/snsTopicSubscriptions/data.js +177 -0
  22. package/src/reStructure/TemplateData/externalService/snsTopicSubscriptions/request.json +12 -0
  23. package/src/reStructure/TemplateData/externalService/snsTopicSubscriptions/template.ejs +28 -0
  24. package/src/reStructure/TemplateData/findData/GetByStorage/getByDynamo.ejs +53 -0
  25. package/src/reStructure/TemplateData/findData/GetByStorage/getByGraph.ejs +100 -0
  26. package/src/reStructure/TemplateData/findData/findDataYaml/data.js +195 -0
  27. package/src/reStructure/TemplateData/findData/findDataYaml/template.ejs +14 -0
  28. package/src/reStructure/TemplateData/findData/generateTemplateData.js +65 -0
  29. package/src/reStructure/TemplateData/findData/handler/data.js +63 -0
  30. package/src/reStructure/TemplateData/findData/handler/template.ejs +140 -0
  31. package/src/reStructure/TemplateData/findData/mainFunction/data.js +297 -0
  32. package/src/reStructure/TemplateData/findData/mainFunction/template.ejs +151 -0
  33. package/src/reStructure/TemplateData/flowSchema/components/schema/inProcess/functionYaml/data.js +76 -0
  34. package/src/reStructure/TemplateData/flowSchema/components/schema/inProcess/functionYaml/template.ejs +37 -0
  35. package/src/reStructure/TemplateData/flowSchema/components/schema/inProcess/handler/data.js +46 -0
  36. package/src/reStructure/TemplateData/flowSchema/components/schema/inProcess/handler/template.ejs +103 -0
  37. package/src/reStructure/TemplateData/flowSchema/components/schema/inProcess/mainFunction/data.js +45 -0
  38. package/src/reStructure/TemplateData/flowSchema/components/schema/inProcess/sns-sqs/data.js +35 -0
  39. package/src/reStructure/TemplateData/flowSchema/components/schema/outComplete/functionYaml/data.js +34 -0
  40. package/src/reStructure/TemplateData/flowSchema/components/schema/outComplete/functionYaml/template.ejs +0 -0
  41. package/src/reStructure/TemplateData/flowSchema/components/schema/outComplete/handler/data.js +34 -0
  42. package/src/reStructure/TemplateData/flowSchema/components/schema/outComplete/handler/template.ejs +0 -0
  43. package/src/reStructure/TemplateData/flowSchema/components/schema/outComplete/mainFunction/data.js +34 -0
  44. package/src/reStructure/TemplateData/flowSchema/components/schema/outComplete/mainFunction/template.ejs +0 -0
  45. package/src/reStructure/TemplateData/flowSchema/components/schema/outComplete/sns-sqs/data.js +34 -0
  46. package/src/reStructure/TemplateData/flowSchema/components/schema/outComplete/sns-sqs/template.ejs +0 -0
  47. package/src/reStructure/TemplateData/flowSchema/components/upload/confirmReserved/functionYaml/data.js +118 -0
  48. package/src/reStructure/TemplateData/flowSchema/components/upload/confirmReserved/functionYaml/template.ejs +30 -0
  49. package/src/reStructure/TemplateData/flowSchema/components/upload/confirmReserved/handler/data.js +56 -0
  50. package/src/reStructure/TemplateData/flowSchema/components/upload/confirmReserved/handler/template.ejs +126 -0
  51. package/src/reStructure/TemplateData/flowSchema/components/upload/confirmReserved/mainFunction/data.js +51 -0
  52. package/src/reStructure/TemplateData/flowSchema/components/upload/confirmReserved/mainFunction/template.ejs +121 -0
  53. package/src/reStructure/TemplateData/flowSchema/components/upload/confirmReserved/queue/data.js +64 -0
  54. package/src/reStructure/TemplateData/flowSchema/components/upload/confirmReserved/queue/template.ejs +45 -0
  55. package/src/reStructure/TemplateData/flowSchema/components/upload/createObject/functionYaml/data.js +140 -0
  56. package/src/reStructure/TemplateData/flowSchema/components/upload/createObject/functionYaml/template.ejs +37 -0
  57. package/src/reStructure/TemplateData/flowSchema/components/upload/createObject/handler/data.js +74 -0
  58. package/src/reStructure/TemplateData/flowSchema/components/upload/createObject/handler/template.ejs +120 -0
  59. package/src/reStructure/TemplateData/flowSchema/components/upload/createObject/mainFunction/data.js +54 -0
  60. package/src/reStructure/TemplateData/flowSchema/components/upload/createObject/mainFunction/template.ejs +133 -0
  61. package/src/reStructure/TemplateData/flowSchema/components/upload/createObjectComplete/functionYaml/data.js +115 -0
  62. package/src/reStructure/TemplateData/flowSchema/components/upload/createObjectComplete/functionYaml/template.ejs +30 -0
  63. package/src/reStructure/TemplateData/flowSchema/components/upload/createObjectComplete/handler/data.js +70 -0
  64. package/src/reStructure/TemplateData/flowSchema/components/upload/createObjectComplete/handler/template.ejs +103 -0
  65. package/src/reStructure/TemplateData/flowSchema/components/upload/createObjectComplete/mainFunction/data.js +55 -0
  66. package/src/reStructure/TemplateData/flowSchema/components/upload/createObjectComplete/mainFunction/template.ejs +86 -0
  67. package/src/reStructure/TemplateData/flowSchema/components/upload/createObjectComplete/sns-sqs/data.js +72 -0
  68. package/src/reStructure/TemplateData/flowSchema/components/upload/createObjectComplete/sns-sqs/template.ejs +49 -0
  69. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/handler/data.js +93 -0
  70. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/handler/templateAsyncHandler.ejs +110 -0
  71. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/handler/templateSyncHandler.ejs +49 -0
  72. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/hookLogic/data.js +43 -0
  73. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/mainFunction/data.js +65 -0
  74. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/mainFunction/template.ejs +7 -0
  75. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/queue/data.js +72 -0
  76. package/src/reStructure/TemplateData/flowSchema/components/upload/hook/queue/snsTemplate.ejs +59 -0
  77. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/getSignUrls/functionYaml/data.js +102 -0
  78. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/getSignUrls/functionYaml/template.ejs +27 -0
  79. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/getSignUrls/handler/data.js +57 -0
  80. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/getSignUrls/handler/template.ejs +120 -0
  81. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/getSignUrls/mainFunction/data.js +51 -0
  82. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/getSignUrls/mainFunction/template.ejs +164 -0
  83. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/getSignUrls/sqs/data.js +65 -0
  84. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/getSignUrls/sqs/template.ejs +53 -0
  85. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/reservedLimit/functionYaml/data.js +131 -0
  86. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/reservedLimit/functionYaml/template.ejs +30 -0
  87. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/reservedLimit/handler/data.js +57 -0
  88. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/reservedLimit/handler/template.ejs +126 -0
  89. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/reservedLimit/mainFunction/data.js +54 -0
  90. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/reservedLimit/mainFunction/template.ejs +254 -0
  91. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/reservedLimit/queue/data.js +64 -0
  92. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/reservedLimit/queue/template.ejs +45 -0
  93. package/src/reStructure/TemplateData/flowSchema/components/upload/processFile/functionYml/HdrDsq/data.js +87 -0
  94. package/src/{TemplateManager/src/TranslateIdReq/TranslateIds/functionYaml → reStructure/TemplateData/flowSchema/components/upload/processFile/functionYml}/HdrDsq/template.ejs +4 -4
  95. package/src/reStructure/TemplateData/flowSchema/components/upload/processFile/functionYml/HdrS3/data.js +127 -0
  96. package/src/{TemplateManager/src/TranslateIdReq/ProcessingTranslateIds/functionYaml → reStructure/TemplateData/flowSchema/components/upload/processFile/functionYml/HdrS3}/template.ejs +11 -3
  97. package/src/reStructure/TemplateData/flowSchema/components/upload/processFile/handler/handlerDsq/data.js +45 -0
  98. package/src/reStructure/TemplateData/flowSchema/components/upload/processFile/handler/handlerDsq/template.ejs +151 -0
  99. package/src/reStructure/TemplateData/flowSchema/components/upload/processFile/handler/handlerS3/data.js +58 -0
  100. package/src/reStructure/TemplateData/flowSchema/components/upload/processFile/handler/handlerS3/template.ejs +68 -0
  101. package/src/reStructure/TemplateData/flowSchema/components/upload/processFile/mainFunction/data.js +58 -0
  102. package/src/reStructure/TemplateData/flowSchema/components/upload/processFile/mainFunction/template.ejs +392 -0
  103. package/src/reStructure/TemplateData/flowSchema/components/upload/processFile/queue/data.js +77 -0
  104. package/src/reStructure/TemplateData/flowSchema/components/upload/processFile/queue/dsqTemplatePath.ejs +32 -0
  105. package/src/reStructure/TemplateData/flowSchema/components/upload/processFile/queue/s3Template.ejs +59 -0
  106. package/src/reStructure/TemplateData/flowSchema/components/upload/relate/S3/data.js +51 -0
  107. package/src/reStructure/TemplateData/flowSchema/components/upload/relate/S3/template.ejs +13 -0
  108. package/src/reStructure/TemplateData/flowSchema/components/upload/relate/libs/data.js +42 -0
  109. package/src/reStructure/TemplateData/flowSchema/components/upload/relate/libs/template.ejs +137 -0
  110. package/src/reStructure/TemplateData/flowSchema/components/websocket/connect/functionYaml/data.js +73 -0
  111. package/src/reStructure/TemplateData/flowSchema/components/websocket/connect/functionYaml/template.ejs +29 -0
  112. package/src/reStructure/TemplateData/flowSchema/components/websocket/connect/handler/data.js +54 -0
  113. package/src/reStructure/TemplateData/flowSchema/components/websocket/connect/handler/template.ejs +68 -0
  114. package/src/reStructure/TemplateData/flowSchema/components/websocket/dynamoDb/ReservedTableData.js +62 -0
  115. package/src/reStructure/TemplateData/flowSchema/components/websocket/dynamoDb/WebSocketTaskData.js +62 -0
  116. package/src/reStructure/TemplateData/flowSchema/generateTemplateData.js +210 -0
  117. package/src/reStructure/TemplateData/flowSchema/legacy/hookCode-old/functionYaml/data.js +101 -0
  118. package/src/reStructure/TemplateData/flowSchema/legacy/hookCode-old/functionYaml/template.ejs +43 -0
  119. package/src/reStructure/TemplateData/flowSchema/legacy/hookCode-old/handler/data.js +93 -0
  120. package/src/reStructure/TemplateData/flowSchema/legacy/hookCode-old/handler/templateAsyncHandler.ejs +110 -0
  121. package/src/reStructure/TemplateData/flowSchema/legacy/hookCode-old/handler/templateSyncHandler.ejs +49 -0
  122. package/src/reStructure/TemplateData/flowSchema/legacy/hookCode-old/hookLogic/data.js +64 -0
  123. package/src/reStructure/TemplateData/flowSchema/legacy/hookCode-old/mainFunction/data.js +66 -0
  124. package/src/reStructure/TemplateData/flowSchema/legacy/hookCode-old/mainFunction/template.ejs +30 -0
  125. package/src/reStructure/TemplateData/flowSchema/legacy/hookCode-old/queue/data.js +124 -0
  126. package/src/reStructure/TemplateData/flowSchema/legacy/hookCode-old/queue/snsTemplate.ejs +59 -0
  127. package/src/reStructure/TemplateData/flowSchema/legacy/hookCode-old/queue/sqsTemplate.ejs +43 -0
  128. package/src/reStructure/TemplateData/generateRole/createSharedResource.js +276 -0
  129. package/src/reStructure/TemplateData/generateRole/sharedResourceTemplate.ejs +58 -0
  130. package/src/reStructure/TemplateData/perActionComplete/create/handler/data.js +69 -0
  131. package/src/reStructure/TemplateData/perActionComplete/create/handler/template.ejs +130 -0
  132. package/src/reStructure/TemplateData/perActionComplete/create/mainFunction/createObjectComplete_main.js +172 -0
  133. package/src/reStructure/TemplateData/perActionComplete/create/mainFunction/data.js +65 -0
  134. package/src/reStructure/TemplateData/perActionComplete/create/mainFunction/template.ejs +170 -0
  135. package/src/reStructure/TemplateData/perActionComplete/create/sns-in-sqs/data.js +69 -0
  136. package/src/reStructure/TemplateData/perActionComplete/create/sns-in-sqs/template.ejs +47 -0
  137. package/src/reStructure/TemplateData/perActionComplete/create/sns-out/data.js +73 -0
  138. package/src/reStructure/TemplateData/perActionComplete/create/sns-out/template.ejs +10 -0
  139. package/src/reStructure/TemplateData/perActionComplete/create/yaml/data.js +130 -0
  140. package/src/reStructure/TemplateData/perActionComplete/create/yaml/template.ejs +20 -0
  141. package/src/reStructure/TemplateData/perActionComplete/delete/handler/data.js +66 -0
  142. package/src/reStructure/TemplateData/perActionComplete/delete/handler/template.ejs +129 -0
  143. package/src/reStructure/TemplateData/perActionComplete/delete/mainFunction/data.js +59 -0
  144. package/src/reStructure/TemplateData/perActionComplete/delete/mainFunction/template.ejs +93 -0
  145. package/src/reStructure/TemplateData/perActionComplete/delete/sns-in-sqs/data.js +62 -0
  146. package/src/reStructure/TemplateData/perActionComplete/delete/sns-in-sqs/template.ejs +47 -0
  147. package/src/reStructure/TemplateData/perActionComplete/delete/sns-out/data.js +69 -0
  148. package/src/reStructure/TemplateData/perActionComplete/delete/yaml/data.js +124 -0
  149. package/src/reStructure/TemplateData/perActionComplete/delete/yaml/template.ejs +20 -0
  150. package/src/reStructure/TemplateData/perActionComplete/generateTemplateData.js +126 -0
  151. package/src/{TemplateManager/src/TranslateIdReq/ProcessingTranslateIds/handler/dataHdrDsq.js → reStructure/TemplateData/perActionComplete/get/handler/data.js} +20 -14
  152. package/src/reStructure/TemplateData/perActionComplete/get/handler/template.ejs +129 -0
  153. package/src/reStructure/TemplateData/perActionComplete/get/mainFunction/data.js +52 -0
  154. package/src/reStructure/TemplateData/perActionComplete/get/mainFunction/template.ejs +130 -0
  155. package/src/{TemplateManager/src/TranslateIdReq/ProcessingTranslateIds/sqs-sns → reStructure/TemplateData/perActionComplete/get/sns-in-sqs}/data.js +12 -12
  156. package/src/reStructure/TemplateData/perActionComplete/get/sns-in-sqs/template.ejs +47 -0
  157. package/src/reStructure/TemplateData/perActionComplete/get/sns-out/data.js +71 -0
  158. package/src/reStructure/TemplateData/perActionComplete/get/yaml/data.js +105 -0
  159. package/src/reStructure/TemplateData/perActionComplete/get/yaml/template.ejs +20 -0
  160. package/src/reStructure/TemplateData/perActionComplete/update/handler/data.js +65 -0
  161. package/src/reStructure/TemplateData/perActionComplete/update/handler/template.ejs +129 -0
  162. package/src/reStructure/TemplateData/perActionComplete/update/mainFunction/data.js +58 -0
  163. package/src/reStructure/TemplateData/perActionComplete/update/mainFunction/template.ejs +130 -0
  164. package/src/reStructure/TemplateData/perActionComplete/update/sns-in-sqs/data.js +66 -0
  165. package/src/reStructure/TemplateData/perActionComplete/update/sns-in-sqs/template.ejs +47 -0
  166. package/src/reStructure/TemplateData/perActionComplete/update/sns-out/data.js +73 -0
  167. package/src/reStructure/TemplateData/perActionComplete/update/yaml/data.js +132 -0
  168. package/src/reStructure/TemplateData/perActionComplete/update/yaml/template.ejs +20 -0
  169. package/src/reStructure/TemplateData/perActionEndpoint/generateTemplateData.js +101 -0
  170. package/src/reStructure/TemplateData/perActionEndpoint/handler/api/data.js +93 -0
  171. package/src/reStructure/TemplateData/perActionEndpoint/handler/api/request.json +7 -0
  172. package/src/reStructure/TemplateData/perActionEndpoint/handler/api/template.ejs +76 -0
  173. package/src/reStructure/TemplateData/perActionEndpoint/handler/dsq/data.js +95 -0
  174. package/src/reStructure/TemplateData/perActionEndpoint/handler/dsq/request.json +7 -0
  175. package/src/reStructure/TemplateData/perActionEndpoint/handler/dsq/template.ejs +127 -0
  176. package/src/reStructure/TemplateData/perActionEndpoint/handler/inv/data.js +88 -0
  177. package/src/reStructure/TemplateData/perActionEndpoint/handler/inv/request.json +7 -0
  178. package/src/reStructure/TemplateData/perActionEndpoint/handler/inv/template.ejs +81 -0
  179. package/src/reStructure/TemplateData/perActionEndpoint/handler/sqs/data.js +94 -0
  180. package/src/reStructure/TemplateData/perActionEndpoint/handler/sqs/request.json +7 -0
  181. package/src/reStructure/TemplateData/perActionEndpoint/handler/sqs/template.ejs +130 -0
  182. package/src/reStructure/TemplateData/perActionEndpoint/handler/webSocket/data.js +75 -0
  183. package/src/reStructure/TemplateData/perActionEndpoint/handler/webSocket/template.ejs +141 -0
  184. package/src/reStructure/TemplateData/perActionEndpoint/handler/webSocketConnect/data.js +55 -0
  185. package/src/reStructure/TemplateData/perActionEndpoint/handler/webSocketConnect/template.ejs +55 -0
  186. package/src/{TemplateManager/src/TranslateIdReq/ProcessingTranslateIds/mainFunction → reStructure/TemplateData/perActionEndpoint/libs}/data.js +25 -13
  187. package/src/reStructure/TemplateData/perActionEndpoint/libs/template.ejs +46 -0
  188. package/src/reStructure/TemplateData/perActionEndpoint/mainFunction/create/data.js +74 -0
  189. package/src/reStructure/TemplateData/perActionEndpoint/mainFunction/create/request.json +0 -0
  190. package/src/reStructure/TemplateData/perActionEndpoint/mainFunction/create/template.ejs +629 -0
  191. package/src/reStructure/TemplateData/perActionEndpoint/mainFunction/delete/data.js +74 -0
  192. package/src/reStructure/TemplateData/perActionEndpoint/mainFunction/delete/template.ejs +192 -0
  193. package/src/reStructure/TemplateData/perActionEndpoint/mainFunction/get/data.js +76 -0
  194. package/src/reStructure/TemplateData/perActionEndpoint/mainFunction/get/request.json +5 -0
  195. package/src/reStructure/TemplateData/perActionEndpoint/mainFunction/get/template.ejs +265 -0
  196. package/src/reStructure/TemplateData/perActionEndpoint/mainFunction/get/testParam.json +5 -0
  197. package/src/reStructure/TemplateData/perActionEndpoint/mainFunction/update/data.js +70 -0
  198. package/src/reStructure/TemplateData/perActionEndpoint/mainFunction/update/request.json +0 -0
  199. package/src/reStructure/TemplateData/perActionEndpoint/mainFunction/update/template.ejs +351 -0
  200. package/src/reStructure/TemplateData/perActionEndpoint/yaml/api/data.js +198 -0
  201. package/src/reStructure/TemplateData/perActionEndpoint/yaml/api/request.json +14 -0
  202. package/src/reStructure/TemplateData/perActionEndpoint/yaml/api/template.ejs +20 -0
  203. package/src/reStructure/TemplateData/perActionEndpoint/yaml/dsq/data.js +207 -0
  204. package/src/reStructure/TemplateData/perActionEndpoint/yaml/dsq/request.json +19 -0
  205. package/src/reStructure/TemplateData/perActionEndpoint/yaml/dsq/template.ejs +17 -0
  206. package/src/reStructure/TemplateData/perActionEndpoint/yaml/inv/data.js +189 -0
  207. package/src/reStructure/TemplateData/perActionEndpoint/yaml/inv/example req.js +15 -0
  208. package/src/reStructure/TemplateData/perActionEndpoint/yaml/inv/request.json +14 -0
  209. package/src/reStructure/TemplateData/perActionEndpoint/yaml/inv/template.ejs +13 -0
  210. package/src/reStructure/TemplateData/perActionEndpoint/yaml/sqs/data.js +208 -0
  211. package/src/reStructure/TemplateData/perActionEndpoint/yaml/sqs/request.json +19 -0
  212. package/src/reStructure/TemplateData/perActionEndpoint/yaml/sqs/template.ejs +17 -0
  213. package/src/reStructure/TemplateData/perActionEndpoint/yaml/wbs/data.js +170 -0
  214. package/src/reStructure/TemplateData/perActionEndpoint/yaml/wbs/request.json +19 -0
  215. package/src/{TemplateManager/src/TranslateIdReq/TranslateIds/functionYaml/HdrSqs → reStructure/TemplateData/perActionEndpoint/yaml/wbs}/template.ejs +2 -3
  216. package/src/reStructure/TemplateData/perActionEndpoint/yaml/webSocketConnect/data.js +59 -0
  217. package/src/reStructure/TemplateData/perActionEndpoint/yaml/webSocketConnect/template.ejs +10 -0
  218. package/src/reStructure/TemplateData/processLogical/generateTemplateData.js +57 -0
  219. package/src/reStructure/TemplateData/processLogical/handler/data.js +50 -0
  220. package/src/reStructure/TemplateData/processLogical/handler/template.ejs +129 -0
  221. package/src/reStructure/TemplateData/processLogical/mainFunction/data.js +47 -0
  222. package/src/reStructure/TemplateData/processLogical/mainFunction/template.ejs +429 -0
  223. package/src/reStructure/TemplateData/processLogical/yaml/data.js +160 -0
  224. package/src/reStructure/TemplateData/processLogical/yaml/template.ejs +12 -0
  225. package/src/{TemplateManager/src/TranslateIdReq/ProcessingTranslateIds/sns-out → reStructure/TemplateData/processLogicalPagination/DsqYaml}/data.js +16 -13
  226. package/src/reStructure/TemplateData/processLogicalPagination/DsqYaml/template.ejs +32 -0
  227. package/src/reStructure/TemplateData/processLogicalPagination/generateTemplateData.js +64 -0
  228. package/src/reStructure/TemplateData/processLogicalPagination/handler/dsq/data.js +48 -0
  229. package/src/reStructure/TemplateData/processLogicalPagination/handler/dsq/template.ejs +163 -0
  230. package/src/reStructure/TemplateData/processLogicalPagination/handler/sqs/data.js +48 -0
  231. package/src/reStructure/TemplateData/processLogicalPagination/handler/sqs/template.ejs +146 -0
  232. package/src/reStructure/TemplateData/processLogicalPagination/mainFunction/data.js +48 -0
  233. package/src/reStructure/TemplateData/processLogicalPagination/mainFunction/template.ejs +212 -0
  234. package/src/reStructure/TemplateData/processLogicalPagination/yaml/dsq/data.js +154 -0
  235. package/src/reStructure/TemplateData/processLogicalPagination/yaml/dsq/template.ejs +12 -0
  236. package/src/reStructure/TemplateData/processLogicalPagination/yaml/sqs/data.js +157 -0
  237. package/src/reStructure/TemplateData/processLogicalPagination/yaml/sqs/template.ejs +12 -0
  238. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/api/data.js +98 -0
  239. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/api/template.ejs +20 -0
  240. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/dsq/data.js +111 -0
  241. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/dsq/template.ejs +17 -0
  242. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/inv/data.js +97 -0
  243. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/inv/template.ejs +13 -0
  244. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/sqs/data.js +110 -0
  245. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/sqs/template.ejs +17 -0
  246. package/src/reStructure/TemplateData/relationshipPerAction/create/action/handler/api/data.js +57 -0
  247. package/src/reStructure/TemplateData/relationshipPerAction/create/action/handler/api/request.json +0 -0
  248. package/src/reStructure/TemplateData/relationshipPerAction/create/action/handler/api/template.ejs +138 -0
  249. package/src/{TemplateManager/src/TranslateIdReq/TranslateIds/handler/HdrDsq → reStructure/TemplateData/relationshipPerAction/create/action/handler/dsq}/data.js +18 -20
  250. package/src/reStructure/TemplateData/relationshipPerAction/create/action/handler/dsq/request.json +0 -0
  251. package/src/reStructure/TemplateData/relationshipPerAction/create/action/handler/dsq/template.ejs +184 -0
  252. package/src/reStructure/TemplateData/relationshipPerAction/create/action/handler/inv/data.js +59 -0
  253. package/src/reStructure/TemplateData/relationshipPerAction/create/action/handler/inv/request.json +0 -0
  254. package/src/reStructure/TemplateData/relationshipPerAction/create/action/handler/inv/template.ejs +126 -0
  255. package/src/{TemplateManager/src/TranslateIdReq/TranslateIds/handler/HdrSqs → reStructure/TemplateData/relationshipPerAction/create/action/handler/sqs}/data.js +16 -16
  256. package/src/reStructure/TemplateData/relationshipPerAction/create/action/handler/sqs/request.json +0 -0
  257. package/src/reStructure/TemplateData/relationshipPerAction/create/action/handler/sqs/template.ejs +163 -0
  258. package/src/reStructure/TemplateData/relationshipPerAction/create/action/mainFunction/data.js +59 -0
  259. package/src/reStructure/TemplateData/relationshipPerAction/create/action/mainFunction/template.ejs +380 -0
  260. package/src/reStructure/TemplateData/relationshipPerAction/create/action/sns-in-sqs/data.js +77 -0
  261. package/src/reStructure/TemplateData/relationshipPerAction/create/action/sns-in-sqs/snsTemplate.ejs +59 -0
  262. package/src/reStructure/TemplateData/relationshipPerAction/create/action/sns-in-sqs/sqsTemplate.ejs +43 -0
  263. package/src/{TemplateManager/src/TranslateIdReq/TranslateIds/functionYaml/HdrSqs → reStructure/TemplateData/relationshipPerAction/create/complete/functionYaml}/data.js +48 -29
  264. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/functionYaml/request.json +0 -0
  265. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/functionYaml/template.ejs +20 -0
  266. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/handler/sqs/data.js +60 -0
  267. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/handler/sqs/request.json +0 -0
  268. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/handler/sqs/template.ejs +125 -0
  269. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/mainFunction/data.js +55 -0
  270. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/mainFunction/request.json +0 -0
  271. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/mainFunction/template.ejs +141 -0
  272. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/sns-in-sqs/data.js +71 -0
  273. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/sns-in-sqs/request.json +0 -0
  274. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/sns-in-sqs/template.ejs +47 -0
  275. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/sns-out/data.js +71 -0
  276. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/sns-out/request.json +0 -0
  277. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/sns-out/template.ejs +10 -0
  278. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/api/data.js +98 -0
  279. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/api/template.ejs +20 -0
  280. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/dsq/data.js +111 -0
  281. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/dsq/template.ejs +17 -0
  282. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/inv/data.js +97 -0
  283. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/inv/template.ejs +13 -0
  284. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/sqs/data.js +111 -0
  285. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/sqs/template.ejs +17 -0
  286. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/api/data.js +57 -0
  287. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/api/request.json +0 -0
  288. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/api/template.ejs +138 -0
  289. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/dsq/data.js +58 -0
  290. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/dsq/request.json +0 -0
  291. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/dsq/template.ejs +184 -0
  292. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/inv/data.js +59 -0
  293. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/inv/request.json +0 -0
  294. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/inv/template.ejs +126 -0
  295. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/sqs/data.js +59 -0
  296. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/sqs/request.json +0 -0
  297. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/sqs/template.ejs +162 -0
  298. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/mainFunction/data.js +59 -0
  299. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/mainFunction/template.ejs +337 -0
  300. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/sns-in-sqs/data.js +77 -0
  301. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/sns-in-sqs/snsTemplate.ejs +59 -0
  302. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/sns-in-sqs/sqsTemplate.ejs +43 -0
  303. package/src/{TemplateManager/src/TranslateIdReq/TranslateIds/functionYaml/HdrDsq → reStructure/TemplateData/relationshipPerAction/delete/complete/functionYaml}/data.js +49 -30
  304. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/functionYaml/request.json +0 -0
  305. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/functionYaml/template.ejs +20 -0
  306. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/handler/sqs/data.js +60 -0
  307. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/handler/sqs/request.json +0 -0
  308. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/handler/sqs/template.ejs +125 -0
  309. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/mainFunction/data.js +55 -0
  310. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/mainFunction/request.json +0 -0
  311. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/mainFunction/template.ejs +140 -0
  312. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/sns-in-sqs/data.js +70 -0
  313. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/sns-in-sqs/request.json +0 -0
  314. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/sns-in-sqs/template.ejs +47 -0
  315. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/sns-out/data.js +72 -0
  316. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/sns-out/request.json +0 -0
  317. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/sns-out/template.ejs +10 -0
  318. package/src/reStructure/TemplateData/relationshipPerAction/generateTemplateData.js +238 -0
  319. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/api/data.js +120 -0
  320. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/api/request.json +0 -0
  321. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/api/template.ejs +20 -0
  322. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/dsq/data.js +131 -0
  323. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/dsq/request.json +0 -0
  324. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/dsq/template.ejs +17 -0
  325. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/inv/data.js +124 -0
  326. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/inv/request.json +0 -0
  327. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/inv/template.ejs +13 -0
  328. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/sqs/data.js +135 -0
  329. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/sqs/request.json +0 -0
  330. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/sqs/template.ejs +17 -0
  331. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/api/data.js +77 -0
  332. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/api/request.json +7 -0
  333. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/api/template.ejs +140 -0
  334. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/dsq/data.js +75 -0
  335. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/dsq/request.json +7 -0
  336. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/dsq/template.ejs +184 -0
  337. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/inv/data.js +77 -0
  338. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/inv/request.json +5 -0
  339. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/inv/template.ejs +145 -0
  340. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/sqs/data.js +74 -0
  341. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/sqs/request.json +7 -0
  342. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/sqs/template.ejs +163 -0
  343. package/src/reStructure/TemplateData/relationshipPerAction/update/action/mainFunction/data.js +72 -0
  344. package/src/reStructure/TemplateData/relationshipPerAction/update/action/mainFunction/request.json +1 -0
  345. package/src/reStructure/TemplateData/relationshipPerAction/update/action/mainFunction/template.ejs +340 -0
  346. package/src/reStructure/TemplateData/relationshipPerAction/update/action/sns-in-sqs/data.js +92 -0
  347. package/src/reStructure/TemplateData/relationshipPerAction/update/action/sns-in-sqs/request.json +3 -0
  348. package/src/reStructure/TemplateData/relationshipPerAction/update/action/sns-in-sqs/snsTemplate.ejs +59 -0
  349. package/src/reStructure/TemplateData/relationshipPerAction/update/action/sns-in-sqs/sqsTemplate.ejs +43 -0
  350. package/src/reStructure/TemplateData/relationshipPerAction/update/action/sns-out/data.js +70 -0
  351. package/src/reStructure/TemplateData/relationshipPerAction/update/action/sns-out/request.json +3 -0
  352. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/functionYaml/data.js +110 -0
  353. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/functionYaml/request.json +3 -0
  354. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/functionYaml/template.ejs +20 -0
  355. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/handler/sqs/data.js +61 -0
  356. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/handler/sqs/request.json +0 -0
  357. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/handler/sqs/template.ejs +127 -0
  358. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/mainFunction/data.js +63 -0
  359. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/mainFunction/request.json +1 -0
  360. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/mainFunction/template.ejs +143 -0
  361. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/sns-in-sqs/data.js +71 -0
  362. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/sns-in-sqs/request.json +3 -0
  363. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/sns-in-sqs/template.ejs +46 -0
  364. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/sns-out/data.js +70 -0
  365. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/sns-out/request.json +3 -0
  366. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/sns-out/template.ejs +10 -0
  367. package/src/reStructure/TemplateData/resourceYaml/CreateSourceData.js +73 -0
  368. package/src/reStructure/TemplateData/resourceYaml/dynamodb/defaultDynamoDbTable.js +146 -0
  369. package/src/reStructure/TemplateData/resourceYaml/dynamodb/mainResourcePerObjectSchemaData.js +178 -0
  370. package/src/reStructure/TemplateData/resourceYaml/dynamodb/request.json +7 -0
  371. package/src/reStructure/TemplateData/resourceYaml/dynamodb/template.ejs +31 -0
  372. package/src/reStructure/TemplateData/resourceYaml/generateTemplateData.js +99 -0
  373. package/src/reStructure/TemplateData/resourceYaml/sns-in-sqs/defaultSnsInSqsForFindDataAndProcessLogical.js +96 -0
  374. package/src/reStructure/TemplateData/resourceYaml/sns-in-sqs/request.json +4 -0
  375. package/src/reStructure/TemplateData/resourceYaml/sns-in-sqs/snsAndSqsPerActionData.js +108 -0
  376. package/src/reStructure/TemplateData/resourceYaml/sns-in-sqs/snsTemplate.ejs +59 -0
  377. package/src/reStructure/TemplateData/resourceYaml/sns-in-sqs/sqsTemplate.ejs +43 -0
  378. package/src/reStructure/TemplateData/resourceYaml/sns-out/data.js +88 -0
  379. package/src/reStructure/TemplateData/resourceYaml/sns-out/defaultSnsOutForFindDataAndProcessLogical.js +75 -0
  380. package/src/reStructure/TemplateData/resourceYaml/sns-out/request.json +3 -0
  381. package/src/reStructure/TemplateData/resourceYaml/sns-out/template.ejs +10 -0
  382. package/src/reStructure/test.bash +192 -0
  383. package/src/TemplateManager/src/TranslateIdReq/ProcessingTranslateIds/functionYaml/data.js +0 -94
  384. package/src/TemplateManager/src/TranslateIdReq/ProcessingTranslateIds/handler/template.ejs +0 -192
  385. package/src/TemplateManager/src/TranslateIdReq/ProcessingTranslateIds/mainFunction/template.ejs +0 -299
  386. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/handler/HdrDsq/template.ejs +0 -155
  387. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/handler/HdrSqs/template.ejs +0 -163
  388. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/mainFunction/data.js +0 -61
  389. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/mainFunction/template.ejs +0 -145
  390. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/resourceYaml/dynamoDb/data.js +0 -120
  391. package/src/TemplateManager/src/TranslateIdReq/TranslateIds/resourceYaml/sns-sqs/data.js +0 -75
  392. package/src/TemplateManager/src/reStructureExample/GenerateCodeTest.js +0 -31
  393. package/src/TemplateManager/src/reStructureExample/TemplateConfig.js +0 -15
  394. package/src/TemplateManager/src/reStructureExample/TemplateData/perAction/generateCodeShared.js +0 -1
  395. package/src/TemplateManager/src/reStructureExample/TemplateData/perAction/generatePerAction.js +0 -12
  396. /package/src/{TemplateManager/src/reStructureExample/TemplateData/perAction → reStructure/TemplateData/flowSchema/components/schema/inProcess/mainFunction}/template.ejs +0 -0
  397. /package/src/{TemplateManager/src/reStructureExample/TemplateData/perAction/data.js → reStructure/TemplateData/flowSchema/components/schema/inProcess/sns-sqs/template.ejs} +0 -0
  398. /package/src/{TemplateManager/src/TranslateIdReq/ProcessingTranslateIds/sqs-sns/template.ejs → reStructure/TemplateData/flowSchema/components/upload/hook/queue/sqsTemplate.ejs} +0 -0
@@ -0,0 +1,151 @@
1
+ /*
2
+ Copyright (C) 2020 Sven Mason <http://izara.io>
3
+
4
+ This program is free software: you can redistribute it and/or modify
5
+ it under the terms of the GNU Affero General Public License as
6
+ published by the Free Software Foundation, either version 3 of the
7
+ License, or (at your option) any later version.
8
+
9
+ This program is distributed in the hope that it will be useful,
10
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ GNU Affero General Public License for more details.
13
+
14
+ You should have received a copy of the GNU Affero General Public License
15
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
16
+ */
17
+
18
+ 'use strict';
19
+
20
+ const { join, resolve } = require("path");
21
+ const { readFileSync } = require("fs");
22
+
23
+ const templateConfig = require("./TemplateConfig");
24
+
25
+ // SourceManager
26
+ const { deleteFileInDir, createHookFunction } = require("../SourceManager/src/Utils");
27
+ const { createSource } = require("../SourceManager/src/CreateSource");
28
+
29
+ const { SOURCE_PATH } = require('../TemplateManager/src/libs/Consts');
30
+
31
+ //* get functionNameConfig
32
+ const functionNameConfigYamlData = require('./TemplateData/externalService/functionNameConfig/data');
33
+ const { createSharedResource } = require('./TemplateData/generateRole/createSharedResource');
34
+
35
+ async function generateCodeWithTemplate(_izContext, objSchemaPath) {
36
+ try {
37
+ console.log('objSchemaPath', objSchemaPath);
38
+ // --------- Prepare path -------------
39
+ // point to app/src
40
+ let saveFilePath = join(objSchemaPath, `../`);
41
+
42
+ // // define path for store yml file
43
+ const GENERATE_CODE_SOURCE_PATH = {
44
+ appYaml: join(saveFilePath, SOURCE_PATH.appYaml),
45
+ resourceYaml: join(saveFilePath, SOURCE_PATH.resourceYaml),
46
+ lambdaPerAction: join(saveFilePath, SOURCE_PATH.lambdaPerAction),
47
+ externalService: join(saveFilePath, SOURCE_PATH.externalService),
48
+ relationshipPerAction: join(saveFilePath, SOURCE_PATH.relationshipPerAction),
49
+ webSocketEndpoint: join(saveFilePath, SOURCE_PATH.webSocket),
50
+ generateCodeLib: join(saveFilePath, SOURCE_PATH.generateCodeLib),
51
+ };
52
+
53
+
54
+ //------ Start Create Source ------
55
+
56
+ // collect all result of template data for execute createSource
57
+ let allCreateSource = []
58
+
59
+ // Store original console.log function
60
+ const originalConsoleLog = console.log;
61
+
62
+ // * iterate templateConfig for generate data
63
+ for (const templateName in templateConfig.TemplateAndData) {
64
+ // Display log indicating which template is being loaded
65
+ console.log('Loading template:', templateName);
66
+
67
+ // Temporarily disable console.log before calling generateTemplateData
68
+ console.log = () => { };
69
+
70
+ let generateTemplateData = require(join(__dirname, templateConfig.TemplateAndData[templateName]));
71
+ let createSourceResult = await generateTemplateData(_izContext, objSchemaPath);
72
+
73
+ // Restore the original console.log function
74
+ console.log = originalConsoleLog;
75
+
76
+ // Filter out empty or invalid objects before adding to allCreateSource
77
+ if (Array.isArray(createSourceResult)) {
78
+ const validResults = createSourceResult.filter(item =>
79
+ item && item.templatePath && item.templateData && item.setting
80
+ );
81
+ allCreateSource.push(...validResults);
82
+ }
83
+ }
84
+
85
+ // Generate function name configuration
86
+ const functionNameConfigs = functionNameConfigYamlData(_izContext, allCreateSource, saveFilePath);
87
+ allCreateSource.push(...functionNameConfigs);
88
+
89
+ // ? create Generate-Shared-resource
90
+ const generateSharedResource = createSharedResource(_izContext, allCreateSource, saveFilePath);
91
+ allCreateSource.push(generateSharedResource);
92
+ // console.log('---> allCreateSource', allCreateSource);
93
+
94
+ // check each allCreateSource valid
95
+ for (let item of allCreateSource) {
96
+ // throw Error('Skipping invalid source item:', item);
97
+ if (!item || !item.templatePath || !item.templateData || !item.setting) {
98
+ console.log('throw Error Skipping invalid source item:', item);
99
+ throw Error('Skipping invalid source item:', item);
100
+ }
101
+
102
+
103
+ const { templatePath, templateData, setting } = item;
104
+ setting.checkCreateSourcePass = true;
105
+
106
+ let [status, errors] = await createSource(
107
+ readFileSync(templatePath, 'utf8'),
108
+ templateData,
109
+ setting,
110
+ );
111
+
112
+ if (status === false) {
113
+ throw Error(errors)
114
+ }
115
+ }
116
+
117
+
118
+ for (let folderPathToEmpty of Object.keys(GENERATE_CODE_SOURCE_PATH)) {
119
+ await deleteFileInDir(GENERATE_CODE_SOURCE_PATH[folderPathToEmpty]);
120
+ }
121
+
122
+
123
+ // generate all source
124
+ for (let item of allCreateSource) {
125
+ // throw error if item is invalid
126
+ if (!item || !item.templatePath || !item.templateData || !item.setting) {
127
+ console.log('Throwing invalid source item:', item);
128
+ throw Error('Throwing invalid source item:', item);
129
+ }
130
+
131
+ const { templatePath, templateData, setting } = item;
132
+ setting.checkCreateSourcePass = false;
133
+
134
+ await createSource(
135
+ readFileSync(templatePath, 'utf8'),
136
+ templateData,
137
+ setting,
138
+ );
139
+ }
140
+
141
+ console.log('Generated all source files');
142
+ return 'return values';
143
+ } catch (error) {
144
+ console.error('Error generating code:', error);
145
+ throw error;
146
+ }
147
+ }
148
+
149
+ module.exports = {
150
+ generateCodeWithTemplate
151
+ }
@@ -0,0 +1,31 @@
1
+ module.exports = {
2
+ TemplateAndData: {
3
+ // ** PerActionEndpoint **
4
+ perActionEndpoint: './TemplateData/perActionEndpoint/generateTemplateData.js',
5
+ // ** perActionComplete **
6
+ perActionComplete: './TemplateData/perActionComplete/generateTemplateData.js',
7
+ // ** Resource YAML **
8
+ resourceYaml: './TemplateData/resourceYaml/generateTemplateData.js',
9
+
10
+ // ** External Service **
11
+ externalService: './TemplateData/externalService/generateTemplateData.js',
12
+
13
+ // ** Relationship Per Action **
14
+ relationshipPerAction: './TemplateData/relationshipPerAction/generateTemplateData.js',
15
+
16
+ // ** Find Data **
17
+ findData: './TemplateData/findData/generateTemplateData.js',
18
+
19
+ // ** Process Logical **
20
+ processLogical: './TemplateData/processLogical/generateTemplateData.js',
21
+
22
+ // ** Process Logical Paginate **
23
+ processLogicalPaginate: './TemplateData/processLogicalPagination/generateTemplateData.js',
24
+
25
+ // ** flowSchema **
26
+ flowSchema: './TemplateData/flowSchema/generateTemplateData.js',
27
+ },
28
+ Plugin: {
29
+
30
+ }
31
+ }
@@ -0,0 +1,162 @@
1
+ /*
2
+ Copyright (C) 2020 Sven Mason <http://izara.io>
3
+
4
+ This program is free software: you can redistribute it and/or modify
5
+ it under the terms of the GNU Affero General Public License as
6
+ published by the Free Software Foundation, either version 3 of the
7
+ License, or (at your option) any later version.
8
+
9
+ This program is distributed in the hope that it will be useful,
10
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ GNU Affero General Public License for more details.
13
+
14
+ You should have received a copy of the GNU Affero General Public License
15
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
16
+ */
17
+
18
+ 'use strict';
19
+
20
+ const path = require('path');
21
+ const { firstLetterLowerCase: lowerCase, firstLetterUpperCase: upperCase } = require("../../../../MainLibs/index.js").utils;
22
+ const templateYamlPath = path.join(__dirname, "./templateYaml.ejs");
23
+ const templatePathIntTestPath = path.join(__dirname, "./templateIntTesting.ejs");
24
+ const { SOURCE_PATH, SOURCE_GENERATE_IAM_ROLE } = require("../../../../MainLibs/index.js").consts;
25
+
26
+
27
+ function data(_izContext, createSourceParams, srcPath) {
28
+ // ! old code
29
+ // function createFunctionNameConfigFileYaml(functionNameConfigs, srcPath) {
30
+ // let createFunctionNameConfigYaml = []
31
+ // createFunctionNameConfigYaml.push(
32
+ // {
33
+ // templatePath: templateYamlPath,
34
+ // templateData: {
35
+ // functionNameConfigs: functionNameConfigs
36
+ // },
37
+ // setting: {
38
+ // savePath: path.join(srcPath, SOURCE_PATH.appYaml),
39
+ // saveFileName: "FunctionNameConfig",
40
+ // fileExtension: ".yml",
41
+ // isAppend: true
42
+ // }
43
+ // }
44
+ // )
45
+ // return createFunctionNameConfigYaml
46
+ // }
47
+
48
+ // Extract role names from object types in createSourceParams
49
+ const roleNameConfigs = new Set();
50
+ const roleNameConcatConfigs = new Set();
51
+
52
+ // Add default IAM roles from configuration
53
+ Object.entries(SOURCE_GENERATE_IAM_ROLE)
54
+ .filter(([_, enabled]) => enabled)
55
+ .forEach(([_, value]) => {
56
+ roleNameConfigs.add(`${upperCase(value)}Role`);
57
+ roleNameConcatConfigs.add(`${upperCase(value)}`);
58
+ });
59
+
60
+ // Extract role names from templateData in createSourceParams
61
+ createSourceParams.forEach(({ templateData }) => {
62
+ if (templateData) {
63
+ const sourceName = templateData.roleName || templateData.objectType;
64
+ if (sourceName) {
65
+ const upperCasedName = upperCase(sourceName);
66
+ roleNameConfigs.add(`${upperCasedName}Role`);
67
+ roleNameConcatConfigs.add(upperCasedName);
68
+ }
69
+ }
70
+ });
71
+
72
+
73
+ // Generate YAML and JS configurations
74
+ const roleConfigYaml = createRoleNameConfigFileYaml(roleNameConfigs, srcPath);
75
+ const roleConfigJs = createRoleNameConfigFileJs(roleNameConcatConfigs, srcPath);
76
+
77
+ // Combine and return all configurations
78
+ return [...roleConfigYaml, ...roleConfigJs];
79
+ }
80
+
81
+
82
+ // ! old code
83
+ // function createFunctionNameConfigFileYaml(functionNameConfigs, srcPath) {
84
+ // let createFunctionNameConfigYaml = []
85
+ // createFunctionNameConfigYaml.push(
86
+ // {
87
+ // templatePath: templateYamlPath,
88
+ // templateData: {
89
+ // functionNameConfigs: functionNameConfigs
90
+ // },
91
+ // setting: {
92
+ // savePath: path.join(srcPath, SOURCE_PATH.appYaml),
93
+ // saveFileName: "FunctionNameConfig",
94
+ // fileExtension: ".yml",
95
+ // isAppend: true
96
+ // }
97
+ // }
98
+ // )
99
+ // return createFunctionNameConfigYaml
100
+ // }
101
+
102
+ // ! old code
103
+ // function createFunctionNameConfigFileJs(functionNameConfigs, srcPath) {
104
+ // let createFunctionNameConfigJs = []
105
+ // createFunctionNameConfigJs.push(
106
+ // {
107
+ // templatePath: templatePathIntTestPath,
108
+ // templateData: {
109
+ // functionNameConfigs: functionNameConfigs
110
+ // },
111
+ // setting: {
112
+ // savePath: path.join(srcPath, SOURCE_PATH.externalService),
113
+ // saveFileName: "FunctionNameConfig",
114
+ // fileExtension: ".js",
115
+ // isAppend: true
116
+ // }
117
+ // }
118
+ // )
119
+
120
+ // return createFunctionNameConfigJs
121
+ // }
122
+
123
+ function createRoleNameConfigFileYaml(roleNameConfigs, srcPath) {
124
+ let createRoleNameConfigYaml = []
125
+ createRoleNameConfigYaml.push(
126
+ {
127
+ templatePath: templateYamlPath,
128
+ templateData: {
129
+ roleNameConfigs: roleNameConfigs
130
+ },
131
+ setting: {
132
+ savePath: path.join(srcPath, SOURCE_PATH.appYaml),
133
+ saveFileName: "RoleNameConfig",
134
+ fileExtension: ".yml",
135
+ isAppend: true
136
+ }
137
+ }
138
+ )
139
+ return createRoleNameConfigYaml
140
+ }
141
+
142
+ function createRoleNameConfigFileJs(roleNameConfigs, srcPath) {
143
+ let createRoleNameConfigJs = []
144
+ createRoleNameConfigJs.push(
145
+ {
146
+ templatePath: templatePathIntTestPath,
147
+ templateData: {
148
+ roleNameConfigs: roleNameConfigs
149
+ },
150
+ setting: {
151
+ savePath: path.join(srcPath, SOURCE_PATH.externalService),
152
+ saveFileName: "RoleNameConfig",
153
+ fileExtension: ".js",
154
+ isAppend: true
155
+ }
156
+ }
157
+ )
158
+
159
+ return createRoleNameConfigJs
160
+ }
161
+
162
+ module.exports = data;
@@ -0,0 +1,14 @@
1
+ # for createIamRole
2
+
3
+ <% functionNameConfigs.forEach(functionNameConfig => { _%>
4
+ - ${self:custom.iz_prefixIamRole}<%- firstLetterUpperCase(functionNameConfig) %>${self:custom.iz_suffixIamRole}
5
+ <% }) _%>
6
+
7
+ # for createIntTest
8
+ <% functionNameConfigs.forEach(functionNameConfig => { _%>
9
+ "<%- firstLetterUpperCase(functionNameConfig) %>",
10
+ <% }) _%>
11
+
12
+ <%_function firstLetterUpperCase(text) {
13
+ return text.charAt(0).toUpperCase() + text.slice(1)
14
+ } %>
@@ -0,0 +1,31 @@
1
+ /*
2
+ Copyright (C) 2020 Sven Mason <http://izara.io>
3
+
4
+ This program is free software: you can redistribute it and/or modify
5
+ it under the terms of the GNU Affero General Public License as
6
+ published by the Free Software Foundation, either version 3 of the
7
+ License, or (at your option) any later version.
8
+
9
+ This program is distributed in the hope that it will be useful,
10
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ GNU Affero General Public License for more details.
13
+
14
+ You should have received a copy of the GNU Affero General Public License
15
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
16
+ */
17
+
18
+ 'use strict';
19
+
20
+ module.exports.generatedIntTestRoleNameConfig = () => {
21
+ let roleNameConfigIntTest = [
22
+ <% roleNameConfigs.forEach(roleNameConfig => { _%>
23
+ "<%- firstLetterUpperCase(roleNameConfig) %>",
24
+ <% }) _%>
25
+ ]
26
+ return roleNameConfigIntTest
27
+ }
28
+
29
+ <%_function firstLetterUpperCase(text) {
30
+ return text.charAt(0).toUpperCase() + text.slice(1)
31
+ } %>
@@ -0,0 +1,10 @@
1
+ # for createIamRole
2
+
3
+ <% roleNameConfigs.forEach(roleNameConfig => { _%>
4
+ - arn:aws:iam::${self:custom.iz_accountId}:role/${self:custom.iz_resourcePrefix}<%- firstLetterUpperCase(roleNameConfig) %>
5
+ <% }) _%>
6
+
7
+
8
+ <%_function firstLetterUpperCase(text) {
9
+ return text.charAt(0).toUpperCase() + text.slice(1)
10
+ } %>
@@ -0,0 +1,59 @@
1
+ /*
2
+ Copyright (C) 2020 Sven Mason <http://izara.io>
3
+
4
+ This program is free software: you can redistribute it and/or modify
5
+ it under the terms of the GNU Affero General Public License as
6
+ published by the Free Software Foundation, either version 3 of the
7
+ License, or (at your option) any later version.
8
+
9
+ This program is distributed in the hope that it will be useful,
10
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ GNU Affero General Public License for more details.
13
+
14
+ You should have received a copy of the GNU Affero General Public License
15
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
16
+ */
17
+
18
+ 'use strict';
19
+
20
+ // Import required modules
21
+ const { join } = require('path');
22
+
23
+ const {
24
+ getAllLocalObjectSchemasWithHierarchy,
25
+ getAllLocalRelationshipSchema,
26
+ getAllLocalFlowSchemas
27
+ } = require('@izara_project/izara-core-library-service-schemas/src/GetObjectSchema');
28
+
29
+ // create External Service
30
+ const createExternalLambdaRole = require('./lambdaRole/data');
31
+ const createExternalSnsSubscriptions = require('./snsTopicSubscriptions/data');
32
+
33
+ /**
34
+ * Generates code with templates for different actions
35
+ * @param {Object} _izContext - Context object
36
+ * @param {string} objSchemaPath - Path to the schema
37
+ * @returns {Array} Array of generated code parameters
38
+ */
39
+ async function generateCodeWithTemplate(_izContext, objSchemaPath) {
40
+ try {
41
+ const saveFilePath = join(objSchemaPath, '../');
42
+ const createSourceParams = [];
43
+ const allObjSchemas = await getAllLocalObjectSchemasWithHierarchy(_izContext, objSchemaPath);
44
+ const allObjectRelationships = getAllLocalRelationshipSchema(_izContext, objSchemaPath);
45
+ const allLocalFlowSchemas = await getAllLocalFlowSchemas(_izContext, objSchemaPath);
46
+ // create External service
47
+ const createFunctionIamRole = await createExternalLambdaRole(_izContext, allObjSchemas.records, allObjectRelationships, allLocalFlowSchemas.records, saveFilePath);
48
+ const createSnsSubscription = await createExternalSnsSubscriptions(_izContext, allObjSchemas.records, allObjectRelationships, allLocalFlowSchemas.records, saveFilePath);
49
+
50
+ createSourceParams.push(createFunctionIamRole, createSnsSubscription);
51
+
52
+ return createSourceParams;
53
+ } catch (error) {
54
+ _izContext.logger.error('Error generating code with template:', error);
55
+ return [];
56
+ }
57
+ }
58
+
59
+ module.exports = generateCodeWithTemplate;