@aws-amplify/cli-internal-gen2-migration-experimental-alpha 0.1.0 → 0.2.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 (281) hide show
  1. package/aws-amplify-cli-internal-gen2-migration-experimental-alpha-0.2.0.tgz +0 -0
  2. package/lib/commands/drift-detection/detect-local-drift.d.ts +3 -6
  3. package/lib/commands/drift-detection/detect-local-drift.d.ts.map +1 -1
  4. package/lib/commands/drift-detection/detect-local-drift.js +4 -8
  5. package/lib/commands/drift-detection/detect-local-drift.js.map +1 -1
  6. package/lib/commands/drift-detection/detect-stack-drift.d.ts +3 -2
  7. package/lib/commands/drift-detection/detect-stack-drift.d.ts.map +1 -1
  8. package/lib/commands/drift-detection/detect-stack-drift.js +12 -0
  9. package/lib/commands/drift-detection/detect-stack-drift.js.map +1 -1
  10. package/lib/commands/drift-detection/detect-template-drift.d.ts +4 -5
  11. package/lib/commands/drift-detection/detect-template-drift.d.ts.map +1 -1
  12. package/lib/commands/drift-detection/detect-template-drift.js +122 -94
  13. package/lib/commands/drift-detection/detect-template-drift.js.map +1 -1
  14. package/lib/commands/drift-detection/index.d.ts +3 -2
  15. package/lib/commands/drift-detection/index.d.ts.map +1 -1
  16. package/lib/commands/drift-detection/index.js +3 -1
  17. package/lib/commands/drift-detection/index.js.map +1 -1
  18. package/lib/commands/drift-detection/services/cloudformation-service.d.ts.map +1 -1
  19. package/lib/commands/drift-detection/services/cloudformation-service.js +3 -5
  20. package/lib/commands/drift-detection/services/cloudformation-service.js.map +1 -1
  21. package/lib/commands/drift-detection/services/drift-formatter.d.ts +4 -5
  22. package/lib/commands/drift-detection/services/drift-formatter.d.ts.map +1 -1
  23. package/lib/commands/drift-detection/services/drift-formatter.js +15 -38
  24. package/lib/commands/drift-detection/services/drift-formatter.js.map +1 -1
  25. package/lib/commands/drift.d.ts +0 -2
  26. package/lib/commands/drift.d.ts.map +1 -1
  27. package/lib/commands/drift.js +47 -57
  28. package/lib/commands/drift.js.map +1 -1
  29. package/lib/commands/gen2-migration/_step.d.ts +2 -1
  30. package/lib/commands/gen2-migration/_step.d.ts.map +1 -1
  31. package/lib/commands/gen2-migration/_step.js +2 -1
  32. package/lib/commands/gen2-migration/_step.js.map +1 -1
  33. package/lib/commands/gen2-migration/generate/adapters/auth/index.d.ts +24 -0
  34. package/lib/commands/gen2-migration/generate/adapters/auth/index.d.ts.map +1 -0
  35. package/lib/commands/gen2-migration/generate/adapters/auth/index.js +297 -0
  36. package/lib/commands/gen2-migration/generate/adapters/auth/index.js.map +1 -0
  37. package/lib/commands/gen2-migration/generate/adapters/auth/index.test.d.ts +2 -0
  38. package/lib/commands/gen2-migration/generate/adapters/auth/index.test.d.ts.map +1 -0
  39. package/lib/commands/gen2-migration/generate/adapters/auth/index.test.js +140 -0
  40. package/lib/commands/gen2-migration/generate/adapters/auth/index.test.js.map +1 -0
  41. package/lib/commands/gen2-migration/generate/adapters/data/index.d.ts +5 -0
  42. package/lib/commands/gen2-migration/generate/adapters/data/index.d.ts.map +1 -0
  43. package/lib/commands/gen2-migration/generate/adapters/data/index.js +17 -0
  44. package/lib/commands/gen2-migration/generate/adapters/data/index.js.map +1 -0
  45. package/lib/commands/gen2-migration/generate/adapters/functions/index.d.ts +17 -0
  46. package/lib/commands/gen2-migration/generate/adapters/functions/index.d.ts.map +1 -0
  47. package/lib/commands/gen2-migration/generate/adapters/functions/index.js +46 -0
  48. package/lib/commands/gen2-migration/generate/adapters/functions/index.js.map +1 -0
  49. package/lib/commands/gen2-migration/generate/adapters/project/index.d.ts +2 -0
  50. package/lib/commands/gen2-migration/generate/adapters/project/index.d.ts.map +1 -0
  51. package/lib/commands/gen2-migration/generate/adapters/project/index.js +7 -0
  52. package/lib/commands/gen2-migration/generate/adapters/project/index.js.map +1 -0
  53. package/lib/commands/gen2-migration/generate/adapters/storage/gen1_storage_codegen_adapter.d.ts +30 -0
  54. package/lib/commands/gen2-migration/generate/adapters/storage/gen1_storage_codegen_adapter.d.ts.map +1 -0
  55. package/lib/commands/gen2-migration/generate/adapters/storage/gen1_storage_codegen_adapter.js +18 -0
  56. package/lib/commands/gen2-migration/generate/adapters/storage/gen1_storage_codegen_adapter.js.map +1 -0
  57. package/lib/commands/gen2-migration/generate/adapters/storage/gen1_storage_codegen_adapter.test.d.ts +2 -0
  58. package/lib/commands/gen2-migration/generate/adapters/storage/gen1_storage_codegen_adapter.test.d.ts.map +1 -0
  59. package/lib/commands/gen2-migration/generate/adapters/storage/gen1_storage_codegen_adapter.test.js +181 -0
  60. package/lib/commands/gen2-migration/generate/adapters/storage/gen1_storage_codegen_adapter.test.js.map +1 -0
  61. package/lib/commands/gen2-migration/generate/adapters/storage/index.d.ts +3 -0
  62. package/lib/commands/gen2-migration/generate/adapters/storage/index.d.ts.map +1 -0
  63. package/lib/commands/gen2-migration/generate/adapters/storage/index.js +6 -0
  64. package/lib/commands/gen2-migration/generate/adapters/storage/index.js.map +1 -0
  65. package/lib/commands/gen2-migration/generate/adapters/storage/storage_access.d.ts +14 -0
  66. package/lib/commands/gen2-migration/generate/adapters/storage/storage_access.d.ts.map +1 -0
  67. package/lib/commands/gen2-migration/generate/adapters/storage/storage_access.js +27 -0
  68. package/lib/commands/gen2-migration/generate/adapters/storage/storage_access.js.map +1 -0
  69. package/lib/commands/gen2-migration/generate/backend/synthesizer.d.ts +80 -0
  70. package/lib/commands/gen2-migration/generate/backend/synthesizer.d.ts.map +1 -0
  71. package/lib/commands/gen2-migration/generate/backend/synthesizer.js +901 -0
  72. package/lib/commands/gen2-migration/generate/backend/synthesizer.js.map +1 -0
  73. package/lib/commands/gen2-migration/generate/backend/synthesizer.test.d.ts +2 -0
  74. package/lib/commands/gen2-migration/generate/backend/synthesizer.test.d.ts.map +1 -0
  75. package/lib/commands/gen2-migration/generate/backend/synthesizer.test.js +700 -0
  76. package/lib/commands/gen2-migration/generate/backend/synthesizer.test.js.map +1 -0
  77. package/lib/commands/gen2-migration/generate/codegen-head/amplify_stack_parser.d.ts +14 -0
  78. package/lib/commands/gen2-migration/generate/codegen-head/amplify_stack_parser.d.ts.map +1 -0
  79. package/lib/commands/gen2-migration/generate/codegen-head/amplify_stack_parser.js +82 -0
  80. package/lib/commands/gen2-migration/generate/codegen-head/amplify_stack_parser.js.map +1 -0
  81. package/lib/commands/gen2-migration/generate/codegen-head/analytics.d.ts +10 -0
  82. package/lib/commands/gen2-migration/generate/codegen-head/analytics.d.ts.map +1 -0
  83. package/lib/commands/gen2-migration/generate/codegen-head/analytics.js +11 -0
  84. package/lib/commands/gen2-migration/generate/codegen-head/analytics.js.map +1 -0
  85. package/lib/commands/gen2-migration/generate/codegen-head/app_analytics_definition_fetcher.d.ts +13 -0
  86. package/lib/commands/gen2-migration/generate/codegen-head/app_analytics_definition_fetcher.d.ts.map +1 -0
  87. package/lib/commands/gen2-migration/generate/codegen-head/app_analytics_definition_fetcher.js +22 -0
  88. package/lib/commands/gen2-migration/generate/codegen-head/app_analytics_definition_fetcher.js.map +1 -0
  89. package/lib/commands/gen2-migration/generate/codegen-head/app_auth_definition_fetcher.d.ts +24 -0
  90. package/lib/commands/gen2-migration/generate/codegen-head/app_auth_definition_fetcher.d.ts.map +1 -0
  91. package/lib/commands/gen2-migration/generate/codegen-head/app_auth_definition_fetcher.js +167 -0
  92. package/lib/commands/gen2-migration/generate/codegen-head/app_auth_definition_fetcher.js.map +1 -0
  93. package/lib/commands/gen2-migration/generate/codegen-head/app_functions_definition_fetcher.d.ts +19 -0
  94. package/lib/commands/gen2-migration/generate/codegen-head/app_functions_definition_fetcher.d.ts.map +1 -0
  95. package/lib/commands/gen2-migration/generate/codegen-head/app_functions_definition_fetcher.js +133 -0
  96. package/lib/commands/gen2-migration/generate/codegen-head/app_functions_definition_fetcher.js.map +1 -0
  97. package/lib/commands/gen2-migration/generate/codegen-head/app_storage_definition_fetcher.d.ts +23 -0
  98. package/lib/commands/gen2-migration/generate/codegen-head/app_storage_definition_fetcher.d.ts.map +1 -0
  99. package/lib/commands/gen2-migration/generate/codegen-head/app_storage_definition_fetcher.js +172 -0
  100. package/lib/commands/gen2-migration/generate/codegen-head/app_storage_definition_fetcher.js.map +1 -0
  101. package/lib/commands/gen2-migration/generate/codegen-head/backend_downloader.d.ts +10 -0
  102. package/lib/commands/gen2-migration/generate/codegen-head/backend_downloader.d.ts.map +1 -0
  103. package/lib/commands/gen2-migration/generate/codegen-head/backend_downloader.js +48 -0
  104. package/lib/commands/gen2-migration/generate/codegen-head/backend_downloader.js.map +1 -0
  105. package/lib/commands/gen2-migration/generate/codegen-head/backend_environment_selector.d.ts +11 -0
  106. package/lib/commands/gen2-migration/generate/codegen-head/backend_environment_selector.d.ts.map +1 -0
  107. package/lib/commands/gen2-migration/generate/codegen-head/backend_environment_selector.js +38 -0
  108. package/lib/commands/gen2-migration/generate/codegen-head/backend_environment_selector.js.map +1 -0
  109. package/lib/commands/gen2-migration/generate/codegen-head/command-handlers.d.ts +13 -0
  110. package/lib/commands/gen2-migration/generate/codegen-head/command-handlers.d.ts.map +1 -0
  111. package/lib/commands/gen2-migration/generate/codegen-head/command-handlers.js +462 -0
  112. package/lib/commands/gen2-migration/generate/codegen-head/command-handlers.js.map +1 -0
  113. package/lib/commands/gen2-migration/generate/codegen-head/data_definition_fetcher.d.ts +47 -0
  114. package/lib/commands/gen2-migration/generate/codegen-head/data_definition_fetcher.d.ts.map +1 -0
  115. package/lib/commands/gen2-migration/generate/codegen-head/data_definition_fetcher.js +222 -0
  116. package/lib/commands/gen2-migration/generate/codegen-head/data_definition_fetcher.js.map +1 -0
  117. package/lib/commands/gen2-migration/generate/codegen-head/directory_exists.d.ts +2 -0
  118. package/lib/commands/gen2-migration/generate/codegen-head/directory_exists.d.ts.map +1 -0
  119. package/lib/commands/gen2-migration/generate/codegen-head/directory_exists.js +15 -0
  120. package/lib/commands/gen2-migration/generate/codegen-head/directory_exists.js.map +1 -0
  121. package/lib/commands/gen2-migration/generate/codegen-head/format.d.ts +8 -0
  122. package/lib/commands/gen2-migration/generate/codegen-head/format.d.ts.map +1 -0
  123. package/lib/commands/gen2-migration/generate/codegen-head/format.js +66 -0
  124. package/lib/commands/gen2-migration/generate/codegen-head/format.js.map +1 -0
  125. package/lib/commands/gen2-migration/generate/codegen-head/logger.d.ts +15 -0
  126. package/lib/commands/gen2-migration/generate/codegen-head/logger.d.ts.map +1 -0
  127. package/lib/commands/gen2-migration/generate/codegen-head/logger.js +14 -0
  128. package/lib/commands/gen2-migration/generate/codegen-head/logger.js.map +1 -0
  129. package/lib/commands/gen2-migration/generate/codegen-head/printer.d.ts +26 -0
  130. package/lib/commands/gen2-migration/generate/codegen-head/printer.d.ts.map +1 -0
  131. package/lib/commands/gen2-migration/generate/codegen-head/printer.js +103 -0
  132. package/lib/commands/gen2-migration/generate/codegen-head/printer.js.map +1 -0
  133. package/lib/commands/gen2-migration/generate/core/migration-pipeline.d.ts +26 -0
  134. package/lib/commands/gen2-migration/generate/core/migration-pipeline.d.ts.map +1 -0
  135. package/lib/commands/gen2-migration/generate/core/migration-pipeline.js +233 -0
  136. package/lib/commands/gen2-migration/generate/core/migration-pipeline.js.map +1 -0
  137. package/lib/commands/gen2-migration/generate/custom-resources/generator/backend-updater.d.ts.map +1 -0
  138. package/lib/commands/gen2-migration/generate/custom-resources/generator/backend-updater.js.map +1 -0
  139. package/lib/commands/gen2-migration/generate/custom-resources/generator/dependency-merger.d.ts.map +1 -0
  140. package/lib/commands/gen2-migration/generate/custom-resources/generator/dependency-merger.js.map +1 -0
  141. package/lib/commands/gen2-migration/generate/custom-resources/generator/file-converter.d.ts.map +1 -0
  142. package/lib/commands/gen2-migration/generate/custom-resources/generator/file-converter.js.map +1 -0
  143. package/lib/commands/gen2-migration/generate/custom-resources/generator/gen2-file-generator.d.ts.map +1 -0
  144. package/lib/commands/gen2-migration/generate/custom-resources/generator/gen2-file-generator.js.map +1 -0
  145. package/lib/commands/gen2-migration/generate/custom-resources/parser/cdk-stack-parser.d.ts.map +1 -0
  146. package/lib/commands/gen2-migration/generate/custom-resources/parser/cdk-stack-parser.js.map +1 -0
  147. package/lib/commands/gen2-migration/generate/custom-resources/parser/pattern-detector.d.ts.map +1 -0
  148. package/lib/commands/gen2-migration/generate/custom-resources/parser/pattern-detector.js.map +1 -0
  149. package/lib/commands/gen2-migration/generate/custom-resources/scanner/custom-resource-scanner.d.ts.map +1 -0
  150. package/lib/commands/gen2-migration/generate/custom-resources/scanner/custom-resource-scanner.js.map +1 -0
  151. package/lib/commands/gen2-migration/generate/custom-resources/transformer/amplify-helper-transformer.d.ts.map +1 -0
  152. package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/transformer/amplify-helper-transformer.js +25 -3
  153. package/lib/commands/gen2-migration/generate/custom-resources/transformer/amplify-helper-transformer.js.map +1 -0
  154. package/lib/commands/gen2-migration/generate/custom-resources/types.d.ts.map +1 -0
  155. package/lib/commands/gen2-migration/generate/custom-resources/types.js.map +1 -0
  156. package/lib/commands/gen2-migration/generate/generators/analytics/index.d.ts +9 -0
  157. package/lib/commands/gen2-migration/generate/generators/analytics/index.d.ts.map +1 -0
  158. package/lib/commands/gen2-migration/generate/generators/analytics/index.js +40 -0
  159. package/lib/commands/gen2-migration/generate/generators/analytics/index.js.map +1 -0
  160. package/lib/commands/gen2-migration/generate/generators/auth/index.d.ts +106 -0
  161. package/lib/commands/gen2-migration/generate/generators/auth/index.d.ts.map +1 -0
  162. package/lib/commands/gen2-migration/generate/generators/auth/index.js +286 -0
  163. package/lib/commands/gen2-migration/generate/generators/auth/index.js.map +1 -0
  164. package/lib/commands/gen2-migration/generate/generators/auth/index.test.d.ts +2 -0
  165. package/lib/commands/gen2-migration/generate/generators/auth/index.test.d.ts.map +1 -0
  166. package/lib/commands/gen2-migration/generate/generators/auth/index.test.js +437 -0
  167. package/lib/commands/gen2-migration/generate/generators/auth/index.test.js.map +1 -0
  168. package/lib/commands/gen2-migration/generate/generators/data/index.d.ts +35 -0
  169. package/lib/commands/gen2-migration/generate/generators/data/index.d.ts.map +1 -0
  170. package/lib/commands/gen2-migration/generate/generators/data/index.js +199 -0
  171. package/lib/commands/gen2-migration/generate/generators/data/index.js.map +1 -0
  172. package/lib/commands/gen2-migration/generate/generators/data/index.test.d.ts +2 -0
  173. package/lib/commands/gen2-migration/generate/generators/data/index.test.d.ts.map +1 -0
  174. package/lib/commands/gen2-migration/generate/generators/data/index.test.js +50 -0
  175. package/lib/commands/gen2-migration/generate/generators/data/index.test.js.map +1 -0
  176. package/lib/commands/gen2-migration/generate/generators/functions/index.d.ts +17 -0
  177. package/lib/commands/gen2-migration/generate/generators/functions/index.d.ts.map +1 -0
  178. package/lib/commands/gen2-migration/generate/generators/functions/index.js +125 -0
  179. package/lib/commands/gen2-migration/generate/generators/functions/index.js.map +1 -0
  180. package/lib/commands/gen2-migration/generate/generators/functions/lambda.d.ts +6 -0
  181. package/lib/commands/gen2-migration/generate/generators/functions/lambda.d.ts.map +1 -0
  182. package/lib/commands/gen2-migration/generate/generators/functions/lambda.js +16 -0
  183. package/lib/commands/gen2-migration/generate/generators/functions/lambda.js.map +1 -0
  184. package/lib/commands/gen2-migration/generate/generators/storage/access.d.ts +4 -0
  185. package/lib/commands/gen2-migration/generate/generators/storage/access.d.ts.map +1 -0
  186. package/lib/commands/gen2-migration/generate/generators/storage/access.js +53 -0
  187. package/lib/commands/gen2-migration/generate/generators/storage/access.js.map +1 -0
  188. package/lib/commands/gen2-migration/generate/generators/storage/index.d.ts +31 -0
  189. package/lib/commands/gen2-migration/generate/generators/storage/index.d.ts.map +1 -0
  190. package/lib/commands/gen2-migration/generate/generators/storage/index.js +66 -0
  191. package/lib/commands/gen2-migration/generate/generators/storage/index.js.map +1 -0
  192. package/lib/commands/gen2-migration/generate/npm_package/renderer.d.ts +27 -0
  193. package/lib/commands/gen2-migration/generate/npm_package/renderer.d.ts.map +1 -0
  194. package/lib/commands/gen2-migration/generate/npm_package/renderer.js +28 -0
  195. package/lib/commands/gen2-migration/generate/npm_package/renderer.js.map +1 -0
  196. package/lib/commands/gen2-migration/generate/render_pipeline.d.ts +9 -0
  197. package/lib/commands/gen2-migration/generate/render_pipeline.d.ts.map +1 -0
  198. package/lib/commands/gen2-migration/generate/render_pipeline.js +15 -0
  199. package/lib/commands/gen2-migration/generate/render_pipeline.js.map +1 -0
  200. package/lib/commands/gen2-migration/generate/renderers/ensure_directory.d.ts +7 -0
  201. package/lib/commands/gen2-migration/generate/renderers/ensure_directory.d.ts.map +1 -0
  202. package/lib/commands/gen2-migration/generate/renderers/ensure_directory.js +17 -0
  203. package/lib/commands/gen2-migration/generate/renderers/ensure_directory.js.map +1 -0
  204. package/lib/commands/gen2-migration/generate/renderers/package_json.d.ts +8 -0
  205. package/lib/commands/gen2-migration/generate/renderers/package_json.d.ts.map +1 -0
  206. package/lib/commands/gen2-migration/generate/renderers/package_json.js +15 -0
  207. package/lib/commands/gen2-migration/generate/renderers/package_json.js.map +1 -0
  208. package/lib/commands/gen2-migration/generate/renderers/typescript_block_node.d.ts +11 -0
  209. package/lib/commands/gen2-migration/generate/renderers/typescript_block_node.d.ts.map +1 -0
  210. package/lib/commands/gen2-migration/generate/renderers/typescript_block_node.js +22 -0
  211. package/lib/commands/gen2-migration/generate/renderers/typescript_block_node.js.map +1 -0
  212. package/lib/commands/gen2-migration/generate/resource/resource.d.ts +20 -0
  213. package/lib/commands/gen2-migration/generate/resource/resource.d.ts.map +1 -0
  214. package/lib/commands/gen2-migration/generate/resource/resource.js +60 -0
  215. package/lib/commands/gen2-migration/generate/resource/resource.js.map +1 -0
  216. package/lib/commands/gen2-migration/generate/test_utils/import_regex.d.ts +2 -0
  217. package/lib/commands/gen2-migration/generate/test_utils/import_regex.d.ts.map +1 -0
  218. package/lib/commands/gen2-migration/generate/test_utils/import_regex.js +6 -0
  219. package/lib/commands/gen2-migration/generate/test_utils/import_regex.js.map +1 -0
  220. package/lib/commands/gen2-migration/generate/test_utils/ts_node_printer.d.ts +4 -0
  221. package/lib/commands/gen2-migration/generate/test_utils/ts_node_printer.d.ts.map +1 -0
  222. package/lib/commands/gen2-migration/generate/test_utils/ts_node_printer.js +22 -0
  223. package/lib/commands/gen2-migration/generate/test_utils/ts_node_printer.js.map +1 -0
  224. package/lib/commands/gen2-migration/generate/todo_error.d.ts +3 -0
  225. package/lib/commands/gen2-migration/generate/todo_error.d.ts.map +1 -0
  226. package/lib/commands/gen2-migration/generate/todo_error.js +11 -0
  227. package/lib/commands/gen2-migration/generate/todo_error.js.map +1 -0
  228. package/lib/commands/gen2-migration/generate/ts_factory_utils.d.ts +3 -0
  229. package/lib/commands/gen2-migration/generate/ts_factory_utils.d.ts.map +1 -0
  230. package/lib/commands/gen2-migration/generate/ts_factory_utils.js +10 -0
  231. package/lib/commands/gen2-migration/generate/ts_factory_utils.js.map +1 -0
  232. package/lib/commands/gen2-migration/generate/types.d.ts +4 -0
  233. package/lib/commands/gen2-migration/generate/types.d.ts.map +1 -0
  234. package/lib/commands/gen2-migration/generate/types.js +3 -0
  235. package/lib/commands/gen2-migration/generate/types.js.map +1 -0
  236. package/lib/commands/gen2-migration/generate/unsupported/cdk-from-cfn.d.ts +26 -0
  237. package/lib/commands/gen2-migration/generate/unsupported/cdk-from-cfn.d.ts.map +1 -0
  238. package/lib/commands/gen2-migration/generate/unsupported/cdk-from-cfn.js +152 -0
  239. package/lib/commands/gen2-migration/generate/unsupported/cdk-from-cfn.js.map +1 -0
  240. package/lib/commands/gen2-migration/generate.js +2 -2
  241. package/lib/commands/gen2-migration/generate.js.map +1 -1
  242. package/lib/commands/gen2-migration.d.ts.map +1 -1
  243. package/lib/commands/gen2-migration.js +2 -1
  244. package/lib/commands/gen2-migration.js.map +1 -1
  245. package/package.json +2 -1
  246. package/aws-amplify-cli-internal-gen2-migration-experimental-alpha-0.1.0.tgz +0 -0
  247. package/lib/commands/gen2-migration/codegen-custom-resources/generator/backend-updater.d.ts.map +0 -1
  248. package/lib/commands/gen2-migration/codegen-custom-resources/generator/backend-updater.js.map +0 -1
  249. package/lib/commands/gen2-migration/codegen-custom-resources/generator/dependency-merger.d.ts.map +0 -1
  250. package/lib/commands/gen2-migration/codegen-custom-resources/generator/dependency-merger.js.map +0 -1
  251. package/lib/commands/gen2-migration/codegen-custom-resources/generator/file-converter.d.ts.map +0 -1
  252. package/lib/commands/gen2-migration/codegen-custom-resources/generator/file-converter.js.map +0 -1
  253. package/lib/commands/gen2-migration/codegen-custom-resources/generator/gen2-file-generator.d.ts.map +0 -1
  254. package/lib/commands/gen2-migration/codegen-custom-resources/generator/gen2-file-generator.js.map +0 -1
  255. package/lib/commands/gen2-migration/codegen-custom-resources/parser/cdk-stack-parser.d.ts.map +0 -1
  256. package/lib/commands/gen2-migration/codegen-custom-resources/parser/cdk-stack-parser.js.map +0 -1
  257. package/lib/commands/gen2-migration/codegen-custom-resources/parser/pattern-detector.d.ts.map +0 -1
  258. package/lib/commands/gen2-migration/codegen-custom-resources/parser/pattern-detector.js.map +0 -1
  259. package/lib/commands/gen2-migration/codegen-custom-resources/scanner/custom-resource-scanner.d.ts.map +0 -1
  260. package/lib/commands/gen2-migration/codegen-custom-resources/scanner/custom-resource-scanner.js.map +0 -1
  261. package/lib/commands/gen2-migration/codegen-custom-resources/transformer/amplify-helper-transformer.d.ts.map +0 -1
  262. package/lib/commands/gen2-migration/codegen-custom-resources/transformer/amplify-helper-transformer.js.map +0 -1
  263. package/lib/commands/gen2-migration/codegen-custom-resources/types.d.ts.map +0 -1
  264. package/lib/commands/gen2-migration/codegen-custom-resources/types.js.map +0 -1
  265. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/generator/backend-updater.d.ts +0 -0
  266. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/generator/backend-updater.js +0 -0
  267. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/generator/dependency-merger.d.ts +0 -0
  268. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/generator/dependency-merger.js +0 -0
  269. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/generator/file-converter.d.ts +0 -0
  270. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/generator/file-converter.js +0 -0
  271. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/generator/gen2-file-generator.d.ts +0 -0
  272. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/generator/gen2-file-generator.js +0 -0
  273. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/parser/cdk-stack-parser.d.ts +0 -0
  274. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/parser/cdk-stack-parser.js +0 -0
  275. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/parser/pattern-detector.d.ts +0 -0
  276. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/parser/pattern-detector.js +0 -0
  277. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/scanner/custom-resource-scanner.d.ts +0 -0
  278. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/scanner/custom-resource-scanner.js +0 -0
  279. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/transformer/amplify-helper-transformer.d.ts +0 -0
  280. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/types.d.ts +0 -0
  281. /package/lib/commands/gen2-migration/{codegen-custom-resources → generate/custom-resources}/types.js +0 -0
@@ -0,0 +1,462 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || (function () {
20
+ var ownKeys = function(o) {
21
+ ownKeys = Object.getOwnPropertyNames || function (o) {
22
+ var ar = [];
23
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
+ return ar;
25
+ };
26
+ return ownKeys(o);
27
+ };
28
+ return function (mod) {
29
+ if (mod && mod.__esModule) return mod;
30
+ var result = {};
31
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
+ __setModuleDefault(result, mod);
33
+ return result;
34
+ };
35
+ })();
36
+ var __importDefault = (this && this.__importDefault) || function (mod) {
37
+ return (mod && mod.__esModule) ? mod : { "default": mod };
38
+ };
39
+ Object.defineProperty(exports, "__esModule", { value: true });
40
+ exports.getAuthTriggersConnections = exports.GEN1_CONFIGURATION_FILES = void 0;
41
+ exports.updateAmplifyYmlFile = updateAmplifyYmlFile;
42
+ exports.updateGitIgnoreForGen2 = updateGitIgnoreForGen2;
43
+ exports.updateCustomResources = updateCustomResources;
44
+ exports.updateCdkStackFile = updateCdkStackFile;
45
+ exports.prepare = prepare;
46
+ const node_path_1 = __importDefault(require("node:path"));
47
+ const promises_1 = __importDefault(require("node:fs/promises"));
48
+ const node_assert_1 = __importDefault(require("node:assert"));
49
+ const uuid_1 = require("uuid");
50
+ const migration_pipeline_1 = require("../core/migration-pipeline");
51
+ const amplify_usageData_1 = require("../../../../domain/amplify-usageData");
52
+ const client_amplify_1 = require("@aws-sdk/client-amplify");
53
+ const client_cloudformation_1 = require("@aws-sdk/client-cloudformation");
54
+ const client_cognito_identity_provider_1 = require("@aws-sdk/client-cognito-identity-provider");
55
+ const client_cognito_identity_1 = require("@aws-sdk/client-cognito-identity");
56
+ const client_s3_1 = require("@aws-sdk/client-s3");
57
+ const client_lambda_1 = require("@aws-sdk/client-lambda");
58
+ const client_cloudwatch_events_1 = require("@aws-sdk/client-cloudwatch-events");
59
+ const client_sts_1 = require("@aws-sdk/client-sts");
60
+ const backend_downloader_1 = require("./backend_downloader");
61
+ const backend_environment_selector_1 = require("./backend_environment_selector");
62
+ const analytics_1 = require("./analytics");
63
+ const app_auth_definition_fetcher_1 = require("./app_auth_definition_fetcher");
64
+ const app_storage_definition_fetcher_1 = require("./app_storage_definition_fetcher");
65
+ const amplify_cli_core_1 = require("@aws-amplify/amplify-cli-core");
66
+ const data_definition_fetcher_1 = require("./data_definition_fetcher");
67
+ const amplify_stack_parser_1 = require("./amplify_stack_parser");
68
+ const app_functions_definition_fetcher_1 = require("./app_functions_definition_fetcher");
69
+ const ora_1 = __importDefault(require("ora"));
70
+ const app_analytics_definition_fetcher_1 = require("./app_analytics_definition_fetcher");
71
+ const ts = __importStar(require("typescript"));
72
+ const amplify_helper_transformer_1 = require("../custom-resources/transformer/amplify-helper-transformer");
73
+ const dependency_merger_1 = require("../custom-resources/generator/dependency-merger");
74
+ const file_converter_1 = require("../custom-resources/generator/file-converter");
75
+ const backend_updater_1 = require("../custom-resources/generator/backend-updater");
76
+ const execa_1 = __importDefault(require("execa"));
77
+ const TEMP_GEN_2_OUTPUT_DIR = 'amplify-gen2';
78
+ const AMPLIFY_DIR = 'amplify';
79
+ const GEN1_COMMAND = '- amplifyPush --simple';
80
+ const GEN2_INSTALL_COMMAND = '- npm ci --cache .npm --prefer-offline';
81
+ const GEN2_COMMAND = '- npx ampx pipeline-deploy --branch $AWS_BRANCH --app-id $AWS_APP_ID';
82
+ const GEN2_COMMAND_GENERATION_MESSAGE_SUFFIX = 'your Gen 2 backend code';
83
+ const GEN1_CUSTOM_RESOURCES_SUFFIX = 'your Gen 1 custom resources';
84
+ exports.GEN1_CONFIGURATION_FILES = ['aws-exports.js', 'amplifyconfiguration.json', 'awsconfiguration.json'];
85
+ const CUSTOM_DIR = 'custom';
86
+ const TYPES_DIR = 'types';
87
+ const BACKEND_DIR = 'backend';
88
+ const GEN2_COMMAND_REPLACE_STRING = `${GEN2_INSTALL_COMMAND}\n${' '.repeat(8)}${GEN2_COMMAND}`;
89
+ var GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS;
90
+ (function (GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS) {
91
+ GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS["DOT_AMPLIFY"] = ".amplify";
92
+ GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS["AMPLIFY_OUTPUTS"] = "amplify_outputs*";
93
+ GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS["AMPLIFY_CONFIGURATION"] = "amplifyconfiguration*";
94
+ GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS["NODE_MODULES"] = "node_modules";
95
+ GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS["BUILD"] = "build";
96
+ GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS["DIST"] = "dist";
97
+ })(GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS || (GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS = {}));
98
+ const generateGen2Code = async ({ outputDirectory, backendEnvironmentName, rootStackName, cloudFormationClient, authDefinitionFetcher, dataDefinitionFetcher, storageDefinitionFetcher, functionsDefinitionFetcher, analyticsDefinitionFetcher, ccbFetcher, backendEnvironment, logger, }) => {
99
+ logger.info('Fetching definitions from AWS for category: Auth');
100
+ const auth = await authDefinitionFetcher.getDefinition();
101
+ logger.info('Fetching definitions from AWS for category: Storage');
102
+ const storage = await storageDefinitionFetcher.getDefinition();
103
+ logger.info('Fetching definitions from AWS for category: Api');
104
+ const data = await dataDefinitionFetcher.getDefinition();
105
+ logger.info('Fetching definitions from AWS for category: Functions');
106
+ const functions = await functionsDefinitionFetcher.getDefinition();
107
+ logger.info('Fetching definitions from AWS for category: Analytics');
108
+ const analytics = await analyticsDefinitionFetcher.getDefinition();
109
+ logger.debug(`Auth: ${auth ? 'EXISTS' : 'UNDEFINED'}`);
110
+ logger.debug(`Storage: ${storage ? 'EXISTS' : 'UNDEFINED'}`);
111
+ logger.debug(`Data: ${data ? JSON.stringify(data, null, 2) : 'UNDEFINED'}`);
112
+ logger.debug(`Functions: ${functions ? `${functions.length} functions` : 'UNDEFINED'}`);
113
+ logger.debug(`Backend env: ${backendEnvironmentName}`);
114
+ logger.debug(`Analytics: ${analytics ? JSON.stringify(analytics, null, 2) : 'UNDEFINED'}`);
115
+ const gen2RenderOptions = {
116
+ outputDir: outputDirectory,
117
+ backendEnvironmentName: backendEnvironmentName,
118
+ rootStackName: rootStackName,
119
+ cfnClient: cloudFormationClient,
120
+ auth,
121
+ storage,
122
+ data,
123
+ functions,
124
+ analytics,
125
+ customResources: await getCustomResourceMap(ccbFetcher, backendEnvironment),
126
+ unsupportedCategories: await unsupportedCategories(ccbFetcher, backendEnvironment),
127
+ };
128
+ (0, node_assert_1.default)(gen2RenderOptions);
129
+ const pipeline = (0, migration_pipeline_1.createGen2Renderer)(gen2RenderOptions);
130
+ (0, node_assert_1.default)(backendEnvironmentName);
131
+ logger.info(`Generating ${GEN2_COMMAND_GENERATION_MESSAGE_SUFFIX}`);
132
+ await pipeline.render();
133
+ };
134
+ const getFunctionPath = (functionName) => {
135
+ return node_path_1.default.join(AMPLIFY_DIR, BACKEND_DIR, 'function', functionName, 'src');
136
+ };
137
+ const getUsageDataMetric = async (envName) => {
138
+ const usageData = amplify_usageData_1.UsageData.Instance;
139
+ const accountId = await getAccountId();
140
+ (0, node_assert_1.default)(accountId);
141
+ usageData.init((0, uuid_1.v4)(), '', {
142
+ command: 'to-gen-2',
143
+ argv: process.argv,
144
+ }, accountId, {
145
+ envName,
146
+ }, Date.now());
147
+ return usageData;
148
+ };
149
+ const getAccountId = async () => {
150
+ const stsClient = new client_sts_1.STSClient();
151
+ const callerIdentityResult = await stsClient.send(new client_sts_1.GetCallerIdentityCommand());
152
+ return callerIdentityResult.Account;
153
+ };
154
+ const getAuthTriggersConnections = async (ccbFetcher, backendEnvironment) => {
155
+ var _a;
156
+ const currentCloudBackendDirectory = await ccbFetcher.getCurrentCloudBackend(backendEnvironment.deploymentArtifacts);
157
+ const amplifyMetaPath = node_path_1.default.join(currentCloudBackendDirectory, 'amplify-meta.json');
158
+ const amplifyMeta = amplify_cli_core_1.JSONUtilities.readJson(amplifyMetaPath, { throwIfNotExist: true });
159
+ if (!amplifyMeta.auth) {
160
+ return {};
161
+ }
162
+ const resourceName = (_a = Object.entries(amplifyMeta.auth).find(([, resource]) => resource.service === 'Cognito')) === null || _a === void 0 ? void 0 : _a[0];
163
+ (0, node_assert_1.default)(resourceName);
164
+ const authInputs = amplify_cli_core_1.stateManager.getResourceInputsJson(undefined, amplify_cli_core_1.AmplifyCategories.AUTH, resourceName);
165
+ if (authInputs && typeof authInputs === 'object' && 'cognitoConfig' in authInputs && typeof authInputs.cognitoConfig === 'object') {
166
+ let triggerConnections = [];
167
+ if ('authTriggerConnections' in authInputs.cognitoConfig) {
168
+ try {
169
+ if (typeof authInputs.cognitoConfig.authTriggerConnections === 'string') {
170
+ triggerConnections = JSON.parse(authInputs.cognitoConfig.authTriggerConnections);
171
+ }
172
+ else {
173
+ triggerConnections = authInputs.cognitoConfig.authTriggerConnections.map((connection) => JSON.parse(connection));
174
+ }
175
+ return triggerConnections.reduce((prev, curr) => {
176
+ prev[curr.triggerType] = getFunctionPath(curr.lambdaFunctionName);
177
+ return prev;
178
+ }, {});
179
+ }
180
+ catch (e) {
181
+ throw new Error('Error parsing auth trigger connections');
182
+ }
183
+ }
184
+ else if ('triggers' in authInputs.cognitoConfig && typeof authInputs.cognitoConfig.triggers === 'object') {
185
+ const authTriggers = authInputs.cognitoConfig.triggers;
186
+ return Object.keys(authTriggers).reduce((prev, authTrigger) => {
187
+ const triggerResourceName = `${resourceName}${authTrigger}`;
188
+ prev[authTrigger] = getFunctionPath(triggerResourceName);
189
+ return prev;
190
+ }, {});
191
+ }
192
+ }
193
+ return {};
194
+ };
195
+ exports.getAuthTriggersConnections = getAuthTriggersConnections;
196
+ const unsupportedCategories = async (ccbFetcher, backendEnvironment) => {
197
+ const unsupportedCategories = new Map();
198
+ const urlPrefix = 'https://docs.amplify.aws/react/build-a-backend/add-aws-services';
199
+ const restAPIKey = 'rest api';
200
+ const analyticsKey = 'analytics';
201
+ unsupportedCategories.set('geo', `${urlPrefix}/geo/`);
202
+ unsupportedCategories.set('analytics', `${urlPrefix}/analytics/`);
203
+ unsupportedCategories.set('predictions', `${urlPrefix}/predictions/`);
204
+ unsupportedCategories.set('notifications', `${urlPrefix}/in-app-messaging/`);
205
+ unsupportedCategories.set('interactions', `${urlPrefix}/interactions/`);
206
+ unsupportedCategories.set(restAPIKey, `${urlPrefix}/rest-api/`);
207
+ const currentCloudBackendDirectory = await ccbFetcher.getCurrentCloudBackend(backendEnvironment.deploymentArtifacts);
208
+ const amplifyMetaPath = node_path_1.default.join(currentCloudBackendDirectory, 'amplify-meta.json');
209
+ const meta = amplify_cli_core_1.JSONUtilities.readJson(amplifyMetaPath, { throwIfNotExist: true });
210
+ const categories = Object.keys(meta);
211
+ const unsupportedCategoriesList = new Map();
212
+ categories.forEach((category) => {
213
+ var _a;
214
+ if (category === 'analytics') {
215
+ const analytics = (_a = meta === null || meta === void 0 ? void 0 : meta.analytics) !== null && _a !== void 0 ? _a : {};
216
+ Object.keys(analytics).forEach((analytic) => {
217
+ const analyticObj = analytics[analytic];
218
+ if (analyticObj.service === 'Pinpoint') {
219
+ const analyticsDocLink = unsupportedCategories.get(analyticsKey);
220
+ (0, node_assert_1.default)(analyticsDocLink);
221
+ unsupportedCategoriesList.set(`Pinpoint ${analyticsKey}`, analyticsDocLink);
222
+ }
223
+ });
224
+ }
225
+ else {
226
+ if (unsupportedCategories.has(category) && Object.entries(meta[category]).length > 0) {
227
+ const unsupportedCategoryDocLink = unsupportedCategories.get(category);
228
+ (0, node_assert_1.default)(unsupportedCategoryDocLink);
229
+ unsupportedCategoriesList.set(category, unsupportedCategoryDocLink);
230
+ }
231
+ }
232
+ });
233
+ return unsupportedCategoriesList;
234
+ };
235
+ async function updateAmplifyYmlFile(amplifyClient, appId) {
236
+ const rootDir = amplify_cli_core_1.pathManager.findProjectRoot();
237
+ (0, node_assert_1.default)(rootDir);
238
+ const amplifyYmlPath = node_path_1.default.join(rootDir, 'amplify.yml');
239
+ try {
240
+ const amplifyYmlContent = await promises_1.default.readFile(amplifyYmlPath, 'utf-8');
241
+ await writeToAmplifyYmlFile(amplifyYmlPath, amplifyYmlContent);
242
+ }
243
+ catch (error) {
244
+ if (error.code === 'ENOENT') {
245
+ const getAppResponse = await amplifyClient.send(new client_amplify_1.GetAppCommand({ appId }));
246
+ (0, node_assert_1.default)(getAppResponse.app, 'App not found');
247
+ const buildSpec = getAppResponse.app.buildSpec;
248
+ if (buildSpec) {
249
+ await writeToAmplifyYmlFile(amplifyYmlPath, buildSpec);
250
+ }
251
+ }
252
+ else {
253
+ throw error;
254
+ }
255
+ }
256
+ }
257
+ async function writeToAmplifyYmlFile(amplifyYmlPath, content) {
258
+ content = content.replace(new RegExp(GEN1_COMMAND, 'g'), GEN2_COMMAND_REPLACE_STRING);
259
+ await promises_1.default.writeFile(amplifyYmlPath, content, { encoding: 'utf-8' });
260
+ }
261
+ async function updateGitIgnoreForGen2() {
262
+ const cwd = process.cwd();
263
+ let gitIgnore = '';
264
+ try {
265
+ gitIgnore = await promises_1.default.readFile(`${cwd}/.gitignore`, { encoding: 'utf-8' });
266
+ }
267
+ catch (e) {
268
+ }
269
+ const regex = /#amplify-do-not-edit-begin[\s\S]*#amplify-do-not-edit-end/g;
270
+ let newGitIgnore = gitIgnore.replace(regex, '');
271
+ if (!newGitIgnore.includes(GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS.DOT_AMPLIFY)) {
272
+ newGitIgnore = `${newGitIgnore}\n# amplify\n${GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS.DOT_AMPLIFY}`;
273
+ }
274
+ if (!newGitIgnore.includes(GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS.AMPLIFY_OUTPUTS)) {
275
+ newGitIgnore = `${newGitIgnore}\n${GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS.AMPLIFY_OUTPUTS}`;
276
+ }
277
+ if (!newGitIgnore.includes(GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS.AMPLIFY_CONFIGURATION)) {
278
+ newGitIgnore = `${newGitIgnore}\n${GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS.AMPLIFY_CONFIGURATION}`;
279
+ }
280
+ if (!newGitIgnore.includes(GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS.NODE_MODULES)) {
281
+ newGitIgnore = `${newGitIgnore}\n# node_modules\n${GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS.NODE_MODULES}`;
282
+ }
283
+ if (!newGitIgnore.includes(GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS.BUILD)) {
284
+ newGitIgnore = `${newGitIgnore}\n${GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS.BUILD}`;
285
+ }
286
+ if (!newGitIgnore.includes(GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS.DIST)) {
287
+ newGitIgnore = `${newGitIgnore}\n${GEN2_AMPLIFY_GITIGNORE_FILES_OR_DIRS.DIST}`;
288
+ }
289
+ newGitIgnore = newGitIgnore.replace(/^\s*[\r\n]/gm, '');
290
+ await promises_1.default.writeFile(`${cwd}/.gitignore`, newGitIgnore, { encoding: 'utf-8' });
291
+ }
292
+ const getCustomResources = async (ccbFetcher, backendEnvironment) => {
293
+ const currentCloudBackendDirectory = await ccbFetcher.getCurrentCloudBackend(backendEnvironment.deploymentArtifacts);
294
+ const amplifyMetaPath = node_path_1.default.join(currentCloudBackendDirectory, 'amplify-meta.json');
295
+ const meta = amplify_cli_core_1.JSONUtilities.readJson(amplifyMetaPath, { throwIfNotExist: true });
296
+ const customCategory = meta === null || meta === void 0 ? void 0 : meta.custom;
297
+ return customCategory ? Object.keys(customCategory) : [];
298
+ };
299
+ const getCustomResourceMap = async (ccbFetcher, backendEnvironment) => {
300
+ var _a;
301
+ const customResources = await getCustomResources(ccbFetcher, backendEnvironment);
302
+ const customResourceMap = new Map();
303
+ const rootDir = amplify_cli_core_1.pathManager.findProjectRoot();
304
+ (0, node_assert_1.default)(rootDir);
305
+ const amplifyGen1BackendDir = node_path_1.default.join(rootDir, AMPLIFY_DIR, BACKEND_DIR);
306
+ const sourceCustomResourcePath = node_path_1.default.join(amplifyGen1BackendDir, CUSTOM_DIR);
307
+ for (const resource of customResources) {
308
+ const cdkStackFilePath = node_path_1.default.join(sourceCustomResourcePath, resource, 'cdk-stack.ts');
309
+ const cdkStackContent = await promises_1.default.readFile(cdkStackFilePath, { encoding: 'utf-8' });
310
+ const className = (_a = cdkStackContent.match(/export class (\w+)/)) === null || _a === void 0 ? void 0 : _a[1];
311
+ if (className) {
312
+ customResourceMap.set(resource, className);
313
+ }
314
+ }
315
+ return customResourceMap;
316
+ };
317
+ async function updateCustomResources(ccbFetcher, backendEnvironment) {
318
+ const customResources = await getCustomResources(ccbFetcher, backendEnvironment);
319
+ if (customResources.length > 0) {
320
+ const movingGen1CustomResources = (0, ora_1.default)(`Moving ${GEN1_CUSTOM_RESOURCES_SUFFIX}`).start();
321
+ const rootDir = amplify_cli_core_1.pathManager.findProjectRoot();
322
+ (0, node_assert_1.default)(rootDir);
323
+ const amplifyGen1BackendDir = node_path_1.default.join(rootDir, AMPLIFY_DIR, BACKEND_DIR);
324
+ const amplifyGen2Dir = node_path_1.default.join(TEMP_GEN_2_OUTPUT_DIR, AMPLIFY_DIR);
325
+ const sourceCustomResourcePath = node_path_1.default.join(amplifyGen1BackendDir, CUSTOM_DIR);
326
+ const destinationCustomResourcePath = node_path_1.default.join(amplifyGen2Dir, CUSTOM_DIR);
327
+ const filterFiles = ['package.json', 'yarn.lock'];
328
+ await promises_1.default.mkdir(destinationCustomResourcePath, { recursive: true });
329
+ await promises_1.default.cp(sourceCustomResourcePath, destinationCustomResourcePath, {
330
+ recursive: true,
331
+ filter: (src) => {
332
+ const fileName = node_path_1.default.basename(src);
333
+ return !filterFiles.includes(fileName);
334
+ },
335
+ });
336
+ const sourceTypesPath = node_path_1.default.join(amplifyGen1BackendDir, TYPES_DIR);
337
+ const destinationTypesPath = node_path_1.default.join(amplifyGen2Dir, TYPES_DIR);
338
+ await promises_1.default.mkdir(destinationTypesPath, { recursive: true });
339
+ await promises_1.default.cp(sourceTypesPath, destinationTypesPath, { recursive: true });
340
+ await updateCdkStackFile(customResources, destinationCustomResourcePath, rootDir);
341
+ const gen2PackageJsonPath = node_path_1.default.join(amplifyGen2Dir, '..', 'package.json');
342
+ const dependencyMerger = new dependency_merger_1.DependencyMerger();
343
+ await dependencyMerger.mergeDependencies(sourceCustomResourcePath, gen2PackageJsonPath);
344
+ const fileConverter = new file_converter_1.FileConverter();
345
+ await fileConverter.convertCdkStackToResource(destinationCustomResourcePath);
346
+ await fileConverter.removeBuildArtifacts(destinationCustomResourcePath);
347
+ const backendFilePath = node_path_1.default.join(amplifyGen2Dir, 'backend.ts');
348
+ const customResourceMap = await getCustomResourceMap(ccbFetcher, backendEnvironment);
349
+ const backendUpdater = new backend_updater_1.BackendUpdater();
350
+ await backendUpdater.updateBackendFile(backendFilePath, customResourceMap);
351
+ movingGen1CustomResources.succeed(`Moved ${GEN1_CUSTOM_RESOURCES_SUFFIX}`);
352
+ }
353
+ }
354
+ async function updateCdkStackFile(customResources, destinationCustomResourcePath, rootDir) {
355
+ let projectName;
356
+ try {
357
+ const projectConfigPath = node_path_1.default.join(rootDir, AMPLIFY_DIR, '.config', 'project-config.json');
358
+ const projectConfig = JSON.parse(await promises_1.default.readFile(projectConfigPath, { encoding: 'utf-8' }));
359
+ projectName = projectConfig.projectName;
360
+ }
361
+ catch (e) {
362
+ }
363
+ for (const resource of customResources) {
364
+ const cdkStackFilePath = node_path_1.default.join(destinationCustomResourcePath, resource, 'cdk-stack.ts');
365
+ try {
366
+ let cdkStackContent = await promises_1.default.readFile(cdkStackFilePath, { encoding: 'utf-8' });
367
+ if (hasUncommentedDependency(cdkStackContent, 'AmplifyHelpers.addResourceDependency')) {
368
+ cdkStackContent = cdkStackContent.replace(/export class/, `throw new Error('Follow https://docs.amplify.aws/react/start/migrate-to-gen2/ to update the resource dependency');\n\nexport class`);
369
+ }
370
+ if (!cdkStackContent.includes("from 'constructs'")) {
371
+ const importRegex = /(import.*from.*['"]; ?\s*\n)/g;
372
+ let lastImportMatch;
373
+ let match;
374
+ while ((match = importRegex.exec(cdkStackContent)) !== null) {
375
+ lastImportMatch = match;
376
+ }
377
+ if (lastImportMatch) {
378
+ const insertIndex = lastImportMatch.index + lastImportMatch[0].length;
379
+ cdkStackContent =
380
+ cdkStackContent.slice(0, insertIndex) + "import { Construct } from 'constructs';\n" + cdkStackContent.slice(insertIndex);
381
+ }
382
+ else {
383
+ cdkStackContent = "import { Construct } from 'constructs';\n" + cdkStackContent;
384
+ }
385
+ }
386
+ cdkStackContent = cdkStackContent.replace(/new cdk\.CfnParameter\(this, ['"]env['"], {[\s\S]*?}\);/, `new cdk.CfnParameter(this, "env", {
387
+ type: "String",
388
+ description: "Current Amplify CLI env name",
389
+ default: \`\${branchName}\`
390
+ });`);
391
+ const sourceFile = ts.createSourceFile(cdkStackFilePath, cdkStackContent, ts.ScriptTarget.Latest, true);
392
+ const transformedFile = amplify_helper_transformer_1.AmplifyHelperTransformer.transform(sourceFile, projectName);
393
+ const transformedWithBranchName = amplify_helper_transformer_1.AmplifyHelperTransformer.addBranchNameVariable(transformedFile, projectName);
394
+ const printer = ts.createPrinter({ newLine: ts.NewLineKind.LineFeed });
395
+ cdkStackContent = printer.printFile(transformedWithBranchName);
396
+ await promises_1.default.writeFile(cdkStackFilePath, cdkStackContent, { encoding: 'utf-8' });
397
+ }
398
+ catch (error) {
399
+ throw new Error(`Error updating the custom resource ${resource}`, { cause: error });
400
+ }
401
+ }
402
+ }
403
+ const hasUncommentedDependency = (fileContent, matchString) => {
404
+ const lines = fileContent.split('\n');
405
+ for (const line of lines) {
406
+ const trimmedLine = line.trim();
407
+ if (trimmedLine.includes(matchString) &&
408
+ !trimmedLine.startsWith('//') &&
409
+ !trimmedLine.startsWith('/*') &&
410
+ !trimmedLine.includes('*/') &&
411
+ !trimmedLine.match(/^\s*\*/)) {
412
+ return true;
413
+ }
414
+ }
415
+ return false;
416
+ };
417
+ async function prepare(logger, appId, envName, region) {
418
+ const amplifyClient = new client_amplify_1.AmplifyClient();
419
+ const backendEnvironmentResolver = new backend_environment_selector_1.BackendEnvironmentResolver(appId, envName, amplifyClient);
420
+ const backendEnvironment = await backendEnvironmentResolver.selectBackendEnvironment();
421
+ (0, node_assert_1.default)(backendEnvironment);
422
+ (0, node_assert_1.default)(backendEnvironmentResolver);
423
+ (0, node_assert_1.default)(backendEnvironment.environmentName);
424
+ const s3Client = new client_s3_1.S3Client();
425
+ const cloudFormationClient = new client_cloudformation_1.CloudFormationClient();
426
+ const cognitoIdentityProviderClient = new client_cognito_identity_provider_1.CognitoIdentityProviderClient();
427
+ const cognitoIdentityPoolClient = new client_cognito_identity_1.CognitoIdentityClient();
428
+ const lambdaClient = new client_lambda_1.LambdaClient({ region });
429
+ const cloudWatchEventsClient = new client_cloudwatch_events_1.CloudWatchEventsClient();
430
+ const amplifyStackParser = new amplify_stack_parser_1.AmplifyStackParser(cloudFormationClient);
431
+ const ccbFetcher = new backend_downloader_1.BackendDownloader(s3Client);
432
+ await generateGen2Code({
433
+ outputDirectory: TEMP_GEN_2_OUTPUT_DIR,
434
+ storageDefinitionFetcher: new app_storage_definition_fetcher_1.AppStorageDefinitionFetcher(backendEnvironmentResolver, new backend_downloader_1.BackendDownloader(s3Client), s3Client),
435
+ authDefinitionFetcher: new app_auth_definition_fetcher_1.AppAuthDefinitionFetcher(cognitoIdentityPoolClient, cognitoIdentityProviderClient, amplifyStackParser, backendEnvironmentResolver, () => (0, exports.getAuthTriggersConnections)(ccbFetcher, backendEnvironment), ccbFetcher),
436
+ dataDefinitionFetcher: new data_definition_fetcher_1.DataDefinitionFetcher(backendEnvironmentResolver, new backend_downloader_1.BackendDownloader(s3Client)),
437
+ functionsDefinitionFetcher: new app_functions_definition_fetcher_1.AppFunctionsDefinitionFetcher(lambdaClient, cloudWatchEventsClient, backendEnvironmentResolver, amplify_cli_core_1.stateManager, ccbFetcher),
438
+ analyticsDefinitionFetcher: new app_analytics_definition_fetcher_1.AppAnalyticsDefinitionFetcher(backendEnvironmentResolver, amplify_cli_core_1.stateManager),
439
+ analytics: new analytics_1.AppAnalytics(appId),
440
+ logger: logger,
441
+ ccbFetcher,
442
+ backendEnvironment,
443
+ backendEnvironmentName: backendEnvironment.environmentName,
444
+ rootStackName: backendEnvironment.stackName,
445
+ cloudFormationClient: cloudFormationClient,
446
+ });
447
+ logger.info(`Creating 'amplify.yml' file for amplify hosting deployments`);
448
+ await updateAmplifyYmlFile(amplifyClient, appId);
449
+ logger.info('Updating .gitignore');
450
+ await updateGitIgnoreForGen2();
451
+ await updateCustomResources(ccbFetcher, backendEnvironment);
452
+ const cwd = process.cwd();
453
+ logger.info(`Overriding local 'amplify' folder`);
454
+ await promises_1.default.rm(AMPLIFY_DIR, { recursive: true });
455
+ await promises_1.default.rename(`${TEMP_GEN_2_OUTPUT_DIR}/amplify`, `${cwd}/amplify`);
456
+ await promises_1.default.rename(`${TEMP_GEN_2_OUTPUT_DIR}/package.json`, `${cwd}/package.json`);
457
+ await promises_1.default.rm(TEMP_GEN_2_OUTPUT_DIR, { recursive: true });
458
+ logger.info('Installing dependencies');
459
+ await (0, execa_1.default)('npm', ['install']);
460
+ await (0, execa_1.default)('npm', ['install']);
461
+ }
462
+ //# sourceMappingURL=command-handlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-handlers.js","sourceRoot":"","sources":["../../../../../src/commands/gen2-migration/generate/codegen-head/command-handlers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import { DataDefinition } from '../core/migration-pipeline';
2
+ interface Gen1ApiObject {
3
+ service: string;
4
+ dependsOn?: Array<{
5
+ category: string;
6
+ resourceName: string;
7
+ }>;
8
+ }
9
+ export interface RestApiDefinition {
10
+ apiName: string;
11
+ functionName: string;
12
+ paths: RestApiPath[];
13
+ authType?: string;
14
+ corsConfiguration?: CorsConfiguration;
15
+ uniqueFunctions?: string[];
16
+ }
17
+ export interface RestApiPath {
18
+ path: string;
19
+ methods: string[];
20
+ authType?: string;
21
+ lambdaFunction?: string;
22
+ userPoolGroups?: string[];
23
+ }
24
+ export interface CorsConfiguration {
25
+ allowCredentials?: boolean;
26
+ allowHeaders?: string[];
27
+ allowMethods?: string[];
28
+ allowOrigins?: string[];
29
+ exposeHeaders?: string[];
30
+ maxAge?: number;
31
+ }
32
+ import { BackendEnvironmentResolver } from './backend_environment_selector';
33
+ import { BackendDownloader } from './backend_downloader';
34
+ export declare class DataDefinitionFetcher {
35
+ private backendEnvironmentResolver;
36
+ private ccbFetcher;
37
+ constructor(backendEnvironmentResolver: BackendEnvironmentResolver, ccbFetcher: BackendDownloader);
38
+ private readJsonFile;
39
+ getRestApis: (apis: Record<string, Gen1ApiObject>) => Promise<RestApiDefinition[]>;
40
+ private extractMethodsFromPath;
41
+ getSchema: (apis: any) => Promise<string>;
42
+ private getAdditionalAuthProvidersFromConsole;
43
+ private getLoggingConfigFromConsole;
44
+ getDefinition: () => Promise<DataDefinition | undefined>;
45
+ }
46
+ export {};
47
+ //# sourceMappingURL=data_definition_fetcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data_definition_fetcher.d.ts","sourceRoot":"","sources":["../../../../../src/commands/gen2-migration/generate/codegen-head/data_definition_fetcher.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AA0B5D,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,KAAK,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC,CAAC;CACJ;AAGD,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAEtC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAGD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAGD,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAiBzD,qBAAa,qBAAqB;IAOpB,OAAO,CAAC,0BAA0B;IAA8B,OAAO,CAAC,UAAU;gBAA1E,0BAA0B,EAAE,0BAA0B,EAAU,UAAU,EAAE,iBAAiB;IASjH,OAAO,CAAC,YAAY,CAGlB;IAKF,WAAW,GAAU,MAAM,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,KAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAkFrF;IAUF,OAAO,CAAC,sBAAsB;IA2C9B,SAAS,GAAU,MAAM,GAAG,KAAG,OAAO,CAAC,MAAM,CAAC,CAiD5C;IAKF,OAAO,CAAC,qCAAqC,CAgB3C;IAKF,OAAO,CAAC,2BAA2B,CAkBjC;IAeF,aAAa,QAAa,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAqD3D;CACH"}