@webiny/project 6.3.0 → 6.4.0-beta.1

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 (875) hide show
  1. package/GracefulError.js +13 -15
  2. package/GracefulError.js.map +1 -1
  3. package/ProjectError.js +11 -13
  4. package/ProjectError.js.map +1 -1
  5. package/ProjectSdk.js +113 -129
  6. package/ProjectSdk.js.map +1 -1
  7. package/abstractions/createAbstraction.js +3 -2
  8. package/abstractions/createAbstraction.js.map +1 -1
  9. package/abstractions/features/BuildApp.js +2 -1
  10. package/abstractions/features/BuildApp.js.map +1 -1
  11. package/abstractions/features/BuildExtension.js +2 -1
  12. package/abstractions/features/BuildExtension.js.map +1 -1
  13. package/abstractions/features/DeployApp.js +2 -1
  14. package/abstractions/features/DeployApp.js.map +1 -1
  15. package/abstractions/features/DestroyApp.js +2 -1
  16. package/abstractions/features/DestroyApp.js.map +1 -1
  17. package/abstractions/features/ExportStack.js +2 -1
  18. package/abstractions/features/ExportStack.js.map +1 -1
  19. package/abstractions/features/GetApp.js +2 -1
  20. package/abstractions/features/GetApp.js.map +1 -1
  21. package/abstractions/features/GetAppOutput.js +2 -1
  22. package/abstractions/features/GetAppOutput.js.map +1 -1
  23. package/abstractions/features/GetAppStackOutput.js +2 -6
  24. package/abstractions/features/GetAppStackOutput.js.map +1 -1
  25. package/abstractions/features/GetFeatureFlags.js +2 -1
  26. package/abstractions/features/GetFeatureFlags.js.map +1 -1
  27. package/abstractions/features/GetLogger.js +2 -1
  28. package/abstractions/features/GetLogger.js.map +1 -1
  29. package/abstractions/features/GetProductionEnvironments.js +2 -1
  30. package/abstractions/features/GetProductionEnvironments.js.map +1 -1
  31. package/abstractions/features/GetProject.js +2 -1
  32. package/abstractions/features/GetProject.js.map +1 -1
  33. package/abstractions/features/GetProjectConfig.js +2 -1
  34. package/abstractions/features/GetProjectConfig.js.map +1 -1
  35. package/abstractions/features/GetProjectInfo.js +2 -1
  36. package/abstractions/features/GetProjectInfo.js.map +1 -1
  37. package/abstractions/features/GetPulumiResourceNamePrefix.js +2 -1
  38. package/abstractions/features/GetPulumiResourceNamePrefix.js.map +1 -1
  39. package/abstractions/features/InstallExtension.js +2 -1
  40. package/abstractions/features/InstallExtension.js.map +1 -1
  41. package/abstractions/features/IsCi.js +2 -1
  42. package/abstractions/features/IsCi.js.map +1 -1
  43. package/abstractions/features/IsTelemetryEnabled.js +2 -1
  44. package/abstractions/features/IsTelemetryEnabled.js.map +1 -1
  45. package/abstractions/features/IsWcpEnabled.js +2 -1
  46. package/abstractions/features/IsWcpEnabled.js.map +1 -1
  47. package/abstractions/features/IsWebinyJsRepo.js +2 -1
  48. package/abstractions/features/IsWebinyJsRepo.js.map +1 -1
  49. package/abstractions/features/RefreshApp.js +2 -1
  50. package/abstractions/features/RefreshApp.js.map +1 -1
  51. package/abstractions/features/RunPulumiCommand.js +2 -1
  52. package/abstractions/features/RunPulumiCommand.js.map +1 -1
  53. package/abstractions/features/ValidateProjectConfig.js +2 -1
  54. package/abstractions/features/ValidateProjectConfig.js.map +1 -1
  55. package/abstractions/features/Watch.js +2 -1
  56. package/abstractions/features/Watch.js.map +1 -1
  57. package/abstractions/features/hooks/AdminAfterBuild.js +2 -1
  58. package/abstractions/features/hooks/AdminAfterBuild.js.map +1 -1
  59. package/abstractions/features/hooks/AdminAfterDeploy.js +2 -1
  60. package/abstractions/features/hooks/AdminAfterDeploy.js.map +1 -1
  61. package/abstractions/features/hooks/AdminBeforeBuild.js +2 -1
  62. package/abstractions/features/hooks/AdminBeforeBuild.js.map +1 -1
  63. package/abstractions/features/hooks/AdminBeforeDeploy.js +2 -1
  64. package/abstractions/features/hooks/AdminBeforeDeploy.js.map +1 -1
  65. package/abstractions/features/hooks/AdminBeforeWatch.js +2 -1
  66. package/abstractions/features/hooks/AdminBeforeWatch.js.map +1 -1
  67. package/abstractions/features/hooks/AfterBuild.js +2 -1
  68. package/abstractions/features/hooks/AfterBuild.js.map +1 -1
  69. package/abstractions/features/hooks/AfterDeploy.js +2 -1
  70. package/abstractions/features/hooks/AfterDeploy.js.map +1 -1
  71. package/abstractions/features/hooks/ApiAfterBuild.js +2 -1
  72. package/abstractions/features/hooks/ApiAfterBuild.js.map +1 -1
  73. package/abstractions/features/hooks/ApiAfterDeploy.js +2 -1
  74. package/abstractions/features/hooks/ApiAfterDeploy.js.map +1 -1
  75. package/abstractions/features/hooks/ApiBeforeBuild.js +2 -1
  76. package/abstractions/features/hooks/ApiBeforeBuild.js.map +1 -1
  77. package/abstractions/features/hooks/ApiBeforeDeploy.js +2 -1
  78. package/abstractions/features/hooks/ApiBeforeDeploy.js.map +1 -1
  79. package/abstractions/features/hooks/ApiBeforeWatch.js +2 -1
  80. package/abstractions/features/hooks/ApiBeforeWatch.js.map +1 -1
  81. package/abstractions/features/hooks/BeforeBuild.js +2 -1
  82. package/abstractions/features/hooks/BeforeBuild.js.map +1 -1
  83. package/abstractions/features/hooks/BeforeDeploy.js +2 -1
  84. package/abstractions/features/hooks/BeforeDeploy.js.map +1 -1
  85. package/abstractions/features/hooks/BeforeWatch.js +2 -1
  86. package/abstractions/features/hooks/BeforeWatch.js.map +1 -1
  87. package/abstractions/features/hooks/CoreAfterBuild.js +2 -1
  88. package/abstractions/features/hooks/CoreAfterBuild.js.map +1 -1
  89. package/abstractions/features/hooks/CoreAfterDeploy.js +2 -1
  90. package/abstractions/features/hooks/CoreAfterDeploy.js.map +1 -1
  91. package/abstractions/features/hooks/CoreBeforeBuild.js +2 -1
  92. package/abstractions/features/hooks/CoreBeforeBuild.js.map +1 -1
  93. package/abstractions/features/hooks/CoreBeforeDeploy.js +2 -1
  94. package/abstractions/features/hooks/CoreBeforeDeploy.js.map +1 -1
  95. package/abstractions/features/hooks/CoreBeforeWatch.js +2 -1
  96. package/abstractions/features/hooks/CoreBeforeWatch.js.map +1 -1
  97. package/abstractions/features/hooks/index.js +0 -2
  98. package/abstractions/features/index.js +0 -2
  99. package/abstractions/index.js +0 -2
  100. package/abstractions/models/IAppModel.js +0 -3
  101. package/abstractions/models/IAppPackageModel.js +0 -3
  102. package/abstractions/models/IPathModel.js +0 -3
  103. package/abstractions/models/IProjectConfigDto.js +0 -3
  104. package/abstractions/models/IProjectConfigModel.js +0 -3
  105. package/abstractions/models/IProjectModel.js +0 -3
  106. package/abstractions/models/IUrlModel.js +0 -3
  107. package/abstractions/models/IWcpEnvironmentDto.js +0 -3
  108. package/abstractions/models/IWcpEnvironmentModel.js +0 -3
  109. package/abstractions/models/IWcpUserDto.js +0 -3
  110. package/abstractions/models/IWcpUserModel.js +0 -3
  111. package/abstractions/models/IWcpUserPatDto.js +0 -3
  112. package/abstractions/models/IWcpUserPatModel.js +0 -3
  113. package/abstractions/models/PackagesBuilder/IPackagesBuilder.js +0 -3
  114. package/abstractions/models/PackagesBuilder/IRunnableBuildProcess.js +0 -3
  115. package/abstractions/models/PackagesBuilder/IRunnableBuildProcesses.js +0 -3
  116. package/abstractions/models/PackagesBuilder/index.js +0 -3
  117. package/abstractions/models/index.js +0 -3
  118. package/abstractions/services/BuildAppWorkspaceService.js +2 -1
  119. package/abstractions/services/BuildAppWorkspaceService.js.map +1 -1
  120. package/abstractions/services/BuildProjectWorkspaceService.js +2 -1
  121. package/abstractions/services/BuildProjectWorkspaceService.js.map +1 -1
  122. package/abstractions/services/GetAppPackagesService.js +2 -1
  123. package/abstractions/services/GetAppPackagesService.js.map +1 -1
  124. package/abstractions/services/GetAppService.js +2 -1
  125. package/abstractions/services/GetAppService.js.map +1 -1
  126. package/abstractions/services/GetCwdService.js +2 -1
  127. package/abstractions/services/GetCwdService.js.map +1 -1
  128. package/abstractions/services/GetProjectConfigService.js +2 -1
  129. package/abstractions/services/GetProjectConfigService.js.map +1 -1
  130. package/abstractions/services/GetProjectIdService.js +2 -1
  131. package/abstractions/services/GetProjectIdService.js.map +1 -1
  132. package/abstractions/services/GetProjectService.js +2 -1
  133. package/abstractions/services/GetProjectService.js.map +1 -1
  134. package/abstractions/services/GetProjectVersionService.js +2 -1
  135. package/abstractions/services/GetProjectVersionService.js.map +1 -1
  136. package/abstractions/services/GetPulumiService.js +2 -1
  137. package/abstractions/services/GetPulumiService.js.map +1 -1
  138. package/abstractions/services/InitProjectSdkService.js +2 -1
  139. package/abstractions/services/InitProjectSdkService.js.map +1 -1
  140. package/abstractions/services/InstallExtensionService.js +2 -1
  141. package/abstractions/services/InstallExtensionService.js.map +1 -1
  142. package/abstractions/services/IsRemotePulumiBackendService.js +2 -1
  143. package/abstractions/services/IsRemotePulumiBackendService.js.map +1 -1
  144. package/abstractions/services/ListAppLambdaFunctionsService.js +2 -1
  145. package/abstractions/services/ListAppLambdaFunctionsService.js.map +1 -1
  146. package/abstractions/services/ListDeployedEnvironmentsService.js +2 -1
  147. package/abstractions/services/ListDeployedEnvironmentsService.js.map +1 -1
  148. package/abstractions/services/ListPackagesInAppWorkspaceService.js +2 -1
  149. package/abstractions/services/ListPackagesInAppWorkspaceService.js.map +1 -1
  150. package/abstractions/services/ListPackagesService.js +2 -1
  151. package/abstractions/services/ListPackagesService.js.map +1 -1
  152. package/abstractions/services/LoadEnvVarsService.js +2 -1
  153. package/abstractions/services/LoadEnvVarsService.js.map +1 -1
  154. package/abstractions/services/LocalStorageService.js +2 -1
  155. package/abstractions/services/LocalStorageService.js.map +1 -1
  156. package/abstractions/services/LoggerService.js +2 -1
  157. package/abstractions/services/LoggerService.js.map +1 -1
  158. package/abstractions/services/ProjectInfoService/GetIsCiService.js +2 -1
  159. package/abstractions/services/ProjectInfoService/GetIsCiService.js.map +1 -1
  160. package/abstractions/services/ProjectInfoService/GetNpmVersionService.js +2 -1
  161. package/abstractions/services/ProjectInfoService/GetNpmVersionService.js.map +1 -1
  162. package/abstractions/services/ProjectInfoService/GetNpxVersionService.js +2 -1
  163. package/abstractions/services/ProjectInfoService/GetNpxVersionService.js.map +1 -1
  164. package/abstractions/services/ProjectInfoService/GetPulumiVersionService.js +2 -1
  165. package/abstractions/services/ProjectInfoService/GetPulumiVersionService.js.map +1 -1
  166. package/abstractions/services/ProjectInfoService/GetYarnVersionService.js +2 -1
  167. package/abstractions/services/ProjectInfoService/GetYarnVersionService.js.map +1 -1
  168. package/abstractions/services/ProjectInfoService/ProjectInfoService.js +2 -1
  169. package/abstractions/services/ProjectInfoService/ProjectInfoService.js.map +1 -1
  170. package/abstractions/services/ProjectInfoService/index.js +0 -2
  171. package/abstractions/services/ProjectSdkParamsService.js +2 -1
  172. package/abstractions/services/ProjectSdkParamsService.js.map +1 -1
  173. package/abstractions/services/PulumiExportService.js +3 -4
  174. package/abstractions/services/PulumiExportService.js.map +1 -1
  175. package/abstractions/services/PulumiGetConfigPassphraseService.js +2 -1
  176. package/abstractions/services/PulumiGetConfigPassphraseService.js.map +1 -1
  177. package/abstractions/services/PulumiGetSecretsProviderService.js +2 -1
  178. package/abstractions/services/PulumiGetSecretsProviderService.js.map +1 -1
  179. package/abstractions/services/PulumiGetStackOutputService.js +2 -1
  180. package/abstractions/services/PulumiGetStackOutputService.js.map +1 -1
  181. package/abstractions/services/PulumiImportService.js +2 -1
  182. package/abstractions/services/PulumiImportService.js.map +1 -1
  183. package/abstractions/services/PulumiLoginService.js +2 -1
  184. package/abstractions/services/PulumiLoginService.js.map +1 -1
  185. package/abstractions/services/PulumiSelectStackService.js +2 -1
  186. package/abstractions/services/PulumiSelectStackService.js.map +1 -1
  187. package/abstractions/services/SetProjectIdService.js +2 -1
  188. package/abstractions/services/SetProjectIdService.js.map +1 -1
  189. package/abstractions/services/StdioService.js +2 -1
  190. package/abstractions/services/StdioService.js.map +1 -1
  191. package/abstractions/services/UiService.js +2 -1
  192. package/abstractions/services/UiService.js.map +1 -1
  193. package/abstractions/services/ValidateProjectConfigService.js +2 -1
  194. package/abstractions/services/ValidateProjectConfigService.js.map +1 -1
  195. package/abstractions/services/WatchedLambdaFunctionsService.js +2 -1
  196. package/abstractions/services/WatchedLambdaFunctionsService.js.map +1 -1
  197. package/abstractions/services/WcpService.js +2 -1
  198. package/abstractions/services/WcpService.js.map +1 -1
  199. package/abstractions/services/index.js +0 -2
  200. package/abstractions/types.js +0 -3
  201. package/components/Wcp.js +27 -38
  202. package/components/Wcp.js.map +1 -1
  203. package/createProjectSdkContainer.js +103 -112
  204. package/createProjectSdkContainer.js.map +1 -1
  205. package/decorators/BuildAppWithHooks.js +54 -44
  206. package/decorators/BuildAppWithHooks.js.map +1 -1
  207. package/decorators/DeployAppClearWatchedLambdaFunctions.js +27 -29
  208. package/decorators/DeployAppClearWatchedLambdaFunctions.js.map +1 -1
  209. package/decorators/DeployAppRefreshStackOutputCache.js +26 -30
  210. package/decorators/DeployAppRefreshStackOutputCache.js.map +1 -1
  211. package/decorators/DeployAppWithHooks.js +51 -41
  212. package/decorators/DeployAppWithHooks.js.map +1 -1
  213. package/decorators/DeployAppWithWatchedLambdaReplacement.js +33 -37
  214. package/decorators/DeployAppWithWatchedLambdaReplacement.js.map +1 -1
  215. package/decorators/GetFeatureFlagsWithLicense.js +36 -57
  216. package/decorators/GetFeatureFlagsWithLicense.js.map +1 -1
  217. package/decorators/GetPulumiServiceWithDownloadInfo.js +21 -19
  218. package/decorators/GetPulumiServiceWithDownloadInfo.js.map +1 -1
  219. package/decorators/WatchWithHooks.js +30 -27
  220. package/decorators/WatchWithHooks.js.map +1 -1
  221. package/decorators/index.js +0 -2
  222. package/defineExtension/createExtensionDefinition.js +12 -19
  223. package/defineExtension/createExtensionDefinition.js.map +1 -1
  224. package/defineExtension/createExtensionReactComponent.js +40 -46
  225. package/defineExtension/createExtensionReactComponent.js.map +1 -1
  226. package/defineExtension/defineExtension.js +8 -9
  227. package/defineExtension/defineExtension.js.map +1 -1
  228. package/defineExtension/index.js +0 -2
  229. package/defineExtension/models/ExtensionDefinitionModel.js +11 -10
  230. package/defineExtension/models/ExtensionDefinitionModel.js.map +1 -1
  231. package/defineExtension/models/ExtensionInstanceModel.js +23 -24
  232. package/defineExtension/models/ExtensionInstanceModel.js.map +1 -1
  233. package/defineExtension/models/index.js +0 -2
  234. package/defineExtension/types.js +0 -3
  235. package/defineExtension/zodTypes/zodSrcPath.js +35 -61
  236. package/defineExtension/zodTypes/zodSrcPath.js.map +1 -1
  237. package/exports/infra/admin.js +0 -2
  238. package/exports/infra/api.js +0 -2
  239. package/exports/infra/core.js +0 -2
  240. package/exports/infra.js +0 -2
  241. package/extensions/AdminBuildParam.js +105 -147
  242. package/extensions/AdminBuildParam.js.map +1 -1
  243. package/extensions/AdminExtension.js +64 -90
  244. package/extensions/AdminExtension.js.map +1 -1
  245. package/extensions/ApiBuildParam.js +71 -97
  246. package/extensions/ApiBuildParam.js.map +1 -1
  247. package/extensions/ApiExtension.js +71 -92
  248. package/extensions/ApiExtension.js.map +1 -1
  249. package/extensions/DatabaseSetup.js +14 -9
  250. package/extensions/DatabaseSetup.js.map +1 -1
  251. package/extensions/EnvVar.js +12 -16
  252. package/extensions/EnvVar.js.map +1 -1
  253. package/extensions/ExtensionDefinitions.js +11 -10
  254. package/extensions/ExtensionDefinitions.js.map +1 -1
  255. package/extensions/FeatureFlags.js +47 -48
  256. package/extensions/FeatureFlags.js.map +1 -1
  257. package/extensions/Project/EnsureApiDeployedBeforeAdminBuild.js +20 -21
  258. package/extensions/Project/EnsureApiDeployedBeforeAdminBuild.js.map +1 -1
  259. package/extensions/Project/EnsureApiDeployedBeforeAdminWatch.js +20 -21
  260. package/extensions/Project/EnsureApiDeployedBeforeAdminWatch.js.map +1 -1
  261. package/extensions/Project/EnsureApiDeployedBeforeWatch.js +20 -21
  262. package/extensions/Project/EnsureApiDeployedBeforeWatch.js.map +1 -1
  263. package/extensions/Project/EnsureCoreDeployedBeforeApiDeploy.js +22 -25
  264. package/extensions/Project/EnsureCoreDeployedBeforeApiDeploy.js.map +1 -1
  265. package/extensions/Project/EnsureTelemetryEnabledForOss.js +25 -28
  266. package/extensions/Project/EnsureTelemetryEnabledForOss.js.map +1 -1
  267. package/extensions/Project/SetAdminAppEnvVarsBeforeBuild.js +29 -34
  268. package/extensions/Project/SetAdminAppEnvVarsBeforeBuild.js.map +1 -1
  269. package/extensions/Project/SetAdminAppEnvVarsBeforeWatch.js +30 -35
  270. package/extensions/Project/SetAdminAppEnvVarsBeforeWatch.js.map +1 -1
  271. package/extensions/Project/ShowConfigChangeInfoBeforeAdminWatch.js +12 -9
  272. package/extensions/Project/ShowConfigChangeInfoBeforeAdminWatch.js.map +1 -1
  273. package/extensions/Project/ShowConfigChangeInfoBeforeApiWatch.js +12 -9
  274. package/extensions/Project/ShowConfigChangeInfoBeforeApiWatch.js.map +1 -1
  275. package/extensions/Project/TelemetryNoLongerNewUser.js +7 -7
  276. package/extensions/Project/TelemetryNoLongerNewUser.js.map +1 -1
  277. package/extensions/Project/ValidateEncryptionBeforeDeploy.js +22 -23
  278. package/extensions/Project/ValidateEncryptionBeforeDeploy.js.map +1 -1
  279. package/extensions/Project/ValidateProductionPulumiState.js +25 -28
  280. package/extensions/Project/ValidateProductionPulumiState.js.map +1 -1
  281. package/extensions/Project/WcpInjectTelemetryClientAfterBuild.js +46 -51
  282. package/extensions/Project/WcpInjectTelemetryClientAfterBuild.js.map +1 -1
  283. package/extensions/Project.js +29 -30
  284. package/extensions/Project.js.map +1 -1
  285. package/extensions/ProjectDecorator.js +13 -16
  286. package/extensions/ProjectDecorator.js.map +1 -1
  287. package/extensions/ProjectId.js +11 -13
  288. package/extensions/ProjectId.js.map +1 -1
  289. package/extensions/ProjectImplementation.js +14 -17
  290. package/extensions/ProjectImplementation.js.map +1 -1
  291. package/extensions/Telemetry.js +10 -9
  292. package/extensions/Telemetry.js.map +1 -1
  293. package/extensions/hooks/AdminAfterBuild.js +16 -19
  294. package/extensions/hooks/AdminAfterBuild.js.map +1 -1
  295. package/extensions/hooks/AdminAfterDeploy.js +16 -19
  296. package/extensions/hooks/AdminAfterDeploy.js.map +1 -1
  297. package/extensions/hooks/AdminBeforeBuild.js +16 -19
  298. package/extensions/hooks/AdminBeforeBuild.js.map +1 -1
  299. package/extensions/hooks/AdminBeforeDeploy.js +16 -19
  300. package/extensions/hooks/AdminBeforeDeploy.js.map +1 -1
  301. package/extensions/hooks/AdminBeforeWatch.js +16 -19
  302. package/extensions/hooks/AdminBeforeWatch.js.map +1 -1
  303. package/extensions/hooks/AfterBuild.js +15 -18
  304. package/extensions/hooks/AfterBuild.js.map +1 -1
  305. package/extensions/hooks/AfterDeploy.js +15 -18
  306. package/extensions/hooks/AfterDeploy.js.map +1 -1
  307. package/extensions/hooks/ApiAfterBuild.js +16 -19
  308. package/extensions/hooks/ApiAfterBuild.js.map +1 -1
  309. package/extensions/hooks/ApiAfterDeploy.js +16 -19
  310. package/extensions/hooks/ApiAfterDeploy.js.map +1 -1
  311. package/extensions/hooks/ApiBeforeBuild.js +16 -19
  312. package/extensions/hooks/ApiBeforeBuild.js.map +1 -1
  313. package/extensions/hooks/ApiBeforeDeploy.js +16 -19
  314. package/extensions/hooks/ApiBeforeDeploy.js.map +1 -1
  315. package/extensions/hooks/ApiBeforeWatch.js +16 -19
  316. package/extensions/hooks/ApiBeforeWatch.js.map +1 -1
  317. package/extensions/hooks/BeforeBuild.js +15 -18
  318. package/extensions/hooks/BeforeBuild.js.map +1 -1
  319. package/extensions/hooks/BeforeDeploy.js +15 -18
  320. package/extensions/hooks/BeforeDeploy.js.map +1 -1
  321. package/extensions/hooks/BeforeWatch.js +15 -18
  322. package/extensions/hooks/BeforeWatch.js.map +1 -1
  323. package/extensions/hooks/CoreAfterBuild.js +16 -19
  324. package/extensions/hooks/CoreAfterBuild.js.map +1 -1
  325. package/extensions/hooks/CoreAfterDeploy.js +16 -19
  326. package/extensions/hooks/CoreAfterDeploy.js.map +1 -1
  327. package/extensions/hooks/CoreBeforeBuild.js +16 -19
  328. package/extensions/hooks/CoreBeforeBuild.js.map +1 -1
  329. package/extensions/hooks/CoreBeforeDeploy.js +16 -19
  330. package/extensions/hooks/CoreBeforeDeploy.js.map +1 -1
  331. package/extensions/hooks/CoreBeforeWatch.js +16 -19
  332. package/extensions/hooks/CoreBeforeWatch.js.map +1 -1
  333. package/extensions/hooks/index.js +0 -2
  334. package/extensions/index.js +43 -57
  335. package/extensions/index.js.map +1 -1
  336. package/extensions/infra/Ci.js +8 -24
  337. package/extensions/infra/Ci.js.map +1 -1
  338. package/extensions/infra/Env.js +35 -92
  339. package/extensions/infra/Env.js.map +1 -1
  340. package/extensions/infra/index.js +0 -2
  341. package/extensions/pulumi/AdminStackOutputValue.js +13 -12
  342. package/extensions/pulumi/AdminStackOutputValue.js.map +1 -1
  343. package/extensions/pulumi/ApiStackOutputValue.js +13 -12
  344. package/extensions/pulumi/ApiStackOutputValue.js.map +1 -1
  345. package/extensions/pulumi/CoreStackOutputValue.js +13 -12
  346. package/extensions/pulumi/CoreStackOutputValue.js.map +1 -1
  347. package/extensions/pulumi/ProductionEnvironments.js +29 -39
  348. package/extensions/pulumi/ProductionEnvironments.js.map +1 -1
  349. package/extensions/pulumi/PulumiResourceNamePrefix.js +10 -9
  350. package/extensions/pulumi/PulumiResourceNamePrefix.js.map +1 -1
  351. package/extensions/pulumi/index.js +0 -2
  352. package/features/BuildApp/BuildApp.js +49 -40
  353. package/features/BuildApp/BuildApp.js.map +1 -1
  354. package/features/BuildApp/PackagesBuilder/PackagesBuilder.js +34 -39
  355. package/features/BuildApp/PackagesBuilder/PackagesBuilder.js.map +1 -1
  356. package/features/BuildApp/PackagesBuilder/RunnableBuildProcess.js +39 -33
  357. package/features/BuildApp/PackagesBuilder/RunnableBuildProcess.js.map +1 -1
  358. package/features/BuildApp/PackagesBuilder/RunnableBuildProcesses.js +39 -46
  359. package/features/BuildApp/PackagesBuilder/RunnableBuildProcesses.js.map +1 -1
  360. package/features/BuildApp/PackagesBuilder/worker.js +26 -34
  361. package/features/BuildApp/PackagesBuilder/worker.js.map +1 -1
  362. package/features/BuildApp/index.js +0 -2
  363. package/features/DeployApp/DeployApp.js +79 -79
  364. package/features/DeployApp/DeployApp.js.map +1 -1
  365. package/features/DeployApp/index.js +0 -2
  366. package/features/DestroyApp/DestroyApp.js +60 -46
  367. package/features/DestroyApp/DestroyApp.js.map +1 -1
  368. package/features/DestroyApp/index.js +0 -2
  369. package/features/ExportStack/ExportStack.js +21 -16
  370. package/features/ExportStack/ExportStack.js.map +1 -1
  371. package/features/ExportStack/index.js +0 -2
  372. package/features/GetApp/GetApp.js +14 -11
  373. package/features/GetApp/GetApp.js.map +1 -1
  374. package/features/GetApp/index.js +0 -2
  375. package/features/GetAppOutput/GetAppOutput.js +44 -33
  376. package/features/GetAppOutput/GetAppOutput.js.map +1 -1
  377. package/features/GetAppOutput/index.js +0 -2
  378. package/features/GetAppStackOutput/GetAppStackOutput.js +20 -15
  379. package/features/GetAppStackOutput/GetAppStackOutput.js.map +1 -1
  380. package/features/GetAppStackOutput/index.js +0 -2
  381. package/features/GetFeatureFlags/GetFeatureFlags.js +20 -19
  382. package/features/GetFeatureFlags/GetFeatureFlags.js.map +1 -1
  383. package/features/GetFeatureFlags/index.js +0 -2
  384. package/features/GetLogger/GetLogger.js +14 -11
  385. package/features/GetLogger/GetLogger.js.map +1 -1
  386. package/features/GetLogger/index.js +0 -2
  387. package/features/GetProductionEnvironments/GetProductionEnvironments.js +24 -19
  388. package/features/GetProductionEnvironments/GetProductionEnvironments.js.map +1 -1
  389. package/features/GetProductionEnvironments/index.js +0 -2
  390. package/features/GetProject/GetProject.js +14 -11
  391. package/features/GetProject/GetProject.js.map +1 -1
  392. package/features/GetProject/index.js +0 -2
  393. package/features/GetProjectConfig/GetProjectConfig.js +14 -11
  394. package/features/GetProjectConfig/GetProjectConfig.js.map +1 -1
  395. package/features/GetProjectConfig/index.js +0 -2
  396. package/features/GetProjectInfo/GetProjectInfo.js +14 -11
  397. package/features/GetProjectInfo/GetProjectInfo.js.map +1 -1
  398. package/features/GetProjectInfo/index.js +0 -2
  399. package/features/GetPulumiResourceNamePrefix/GetPulumiResourceNamePrefix.js +18 -17
  400. package/features/GetPulumiResourceNamePrefix/GetPulumiResourceNamePrefix.js.map +1 -1
  401. package/features/GetPulumiResourceNamePrefix/index.js +0 -2
  402. package/features/InstallExtension/InstallExtension.js +14 -11
  403. package/features/InstallExtension/InstallExtension.js.map +1 -1
  404. package/features/InstallExtension/index.js +0 -2
  405. package/features/IsCi/IsCi.js +14 -11
  406. package/features/IsCi/IsCi.js.map +1 -1
  407. package/features/IsCi/index.js +0 -2
  408. package/features/IsTelemetryEnabled/IsTelemetryEnabled.js +19 -18
  409. package/features/IsTelemetryEnabled/IsTelemetryEnabled.js.map +1 -1
  410. package/features/IsTelemetryEnabled/index.js +0 -2
  411. package/features/IsWcpEnabled/IsWcpEnabled.js +15 -12
  412. package/features/IsWcpEnabled/IsWcpEnabled.js.map +1 -1
  413. package/features/IsWcpEnabled/index.js +0 -2
  414. package/features/IsWebinyJsRepo/IsWebinyJsRepo.js +17 -14
  415. package/features/IsWebinyJsRepo/IsWebinyJsRepo.js.map +1 -1
  416. package/features/IsWebinyJsRepo/index.js +0 -2
  417. package/features/RefreshApp/RefreshApp.js +57 -46
  418. package/features/RefreshApp/RefreshApp.js.map +1 -1
  419. package/features/RefreshApp/index.js +0 -2
  420. package/features/RunPulumiCommand/RunPulumiCommand.js +54 -43
  421. package/features/RunPulumiCommand/RunPulumiCommand.js.map +1 -1
  422. package/features/RunPulumiCommand/index.js +0 -2
  423. package/features/ValidateProjectConfig/ValidateProjectConfig.js +14 -11
  424. package/features/ValidateProjectConfig/ValidateProjectConfig.js.map +1 -1
  425. package/features/ValidateProjectConfig/index.js +0 -2
  426. package/features/Watch/Watch.js +178 -181
  427. package/features/Watch/Watch.js.map +1 -1
  428. package/features/Watch/getIotEndpoint.js +14 -12
  429. package/features/Watch/getIotEndpoint.js.map +1 -1
  430. package/features/Watch/index.js +0 -2
  431. package/features/Watch/initInvocationForwarding.js +76 -95
  432. package/features/Watch/initInvocationForwarding.js.map +1 -1
  433. package/features/Watch/localInvocationWorker.js +24 -33
  434. package/features/Watch/localInvocationWorker.js.map +1 -1
  435. package/features/Watch/replaceLambdaFunctions.js +61 -84
  436. package/features/Watch/replaceLambdaFunctions.js.map +1 -1
  437. package/features/Watch/watchers/BasePackagesWatcher.js +10 -13
  438. package/features/Watch/watchers/BasePackagesWatcher.js.map +1 -1
  439. package/features/Watch/watchers/MultiplePackagesWatcher.js +11 -12
  440. package/features/Watch/watchers/MultiplePackagesWatcher.js.map +1 -1
  441. package/features/Watch/watchers/PackagesWatcher.js +15 -18
  442. package/features/Watch/watchers/PackagesWatcher.js.map +1 -1
  443. package/features/Watch/watchers/RunnableWatchProcess.js +41 -40
  444. package/features/Watch/watchers/RunnableWatchProcess.js.map +1 -1
  445. package/features/Watch/watchers/RunnableWatchProcesses.js +35 -34
  446. package/features/Watch/watchers/RunnableWatchProcesses.js.map +1 -1
  447. package/features/Watch/watchers/SinglePackageWatcher.js +11 -8
  448. package/features/Watch/watchers/SinglePackageWatcher.js.map +1 -1
  449. package/features/Watch/watchers/WebinyConfigWatcher.js +30 -40
  450. package/features/Watch/watchers/WebinyConfigWatcher.js.map +1 -1
  451. package/features/Watch/watchers/ZeroPackagesWatcher.js +5 -5
  452. package/features/Watch/watchers/ZeroPackagesWatcher.js.map +1 -1
  453. package/features/Watch/watchers/utils/measureDuration.js +7 -8
  454. package/features/Watch/watchers/utils/measureDuration.js.map +1 -1
  455. package/features/Watch/watchers/worker.js +12 -21
  456. package/features/Watch/watchers/worker.js.map +1 -1
  457. package/features/hooks/AdminAfterBuild/AdminBeforeBuild.js +19 -15
  458. package/features/hooks/AdminAfterBuild/AdminBeforeBuild.js.map +1 -1
  459. package/features/hooks/AdminAfterBuild/index.js +0 -2
  460. package/features/hooks/AdminAfterDeploy/AdminBeforeBuild.js +19 -15
  461. package/features/hooks/AdminAfterDeploy/AdminBeforeBuild.js.map +1 -1
  462. package/features/hooks/AdminAfterDeploy/index.js +0 -2
  463. package/features/hooks/AdminBeforeBuild/AdminBeforeBuild.js +19 -15
  464. package/features/hooks/AdminBeforeBuild/AdminBeforeBuild.js.map +1 -1
  465. package/features/hooks/AdminBeforeBuild/index.js +0 -2
  466. package/features/hooks/AdminBeforeDeploy/AdminBeforeDeploy.js +19 -15
  467. package/features/hooks/AdminBeforeDeploy/AdminBeforeDeploy.js.map +1 -1
  468. package/features/hooks/AdminBeforeDeploy/index.js +0 -2
  469. package/features/hooks/AdminBeforeWatch/AdminBeforeWatch.js +18 -14
  470. package/features/hooks/AdminBeforeWatch/AdminBeforeWatch.js.map +1 -1
  471. package/features/hooks/AdminBeforeWatch/index.js +0 -2
  472. package/features/hooks/AfterBuild/AfterBuild.js +19 -15
  473. package/features/hooks/AfterBuild/AfterBuild.js.map +1 -1
  474. package/features/hooks/AfterBuild/index.js +0 -2
  475. package/features/hooks/AfterDeploy/AfterDeploy.js +19 -15
  476. package/features/hooks/AfterDeploy/AfterDeploy.js.map +1 -1
  477. package/features/hooks/AfterDeploy/index.js +0 -2
  478. package/features/hooks/ApiAfterBuild/ApiBeforeBuild.js +18 -14
  479. package/features/hooks/ApiAfterBuild/ApiBeforeBuild.js.map +1 -1
  480. package/features/hooks/ApiAfterBuild/index.js +0 -2
  481. package/features/hooks/ApiAfterDeploy/ApiBeforeBuild.js +18 -14
  482. package/features/hooks/ApiAfterDeploy/ApiBeforeBuild.js.map +1 -1
  483. package/features/hooks/ApiAfterDeploy/index.js +0 -2
  484. package/features/hooks/ApiBeforeBuild/ApiBeforeBuild.js +18 -14
  485. package/features/hooks/ApiBeforeBuild/ApiBeforeBuild.js.map +1 -1
  486. package/features/hooks/ApiBeforeBuild/index.js +0 -2
  487. package/features/hooks/ApiBeforeDeploy/ApiBeforeDeploy.js +18 -14
  488. package/features/hooks/ApiBeforeDeploy/ApiBeforeDeploy.js.map +1 -1
  489. package/features/hooks/ApiBeforeDeploy/index.js +0 -2
  490. package/features/hooks/ApiBeforeWatch/ApiBeforeWatch.js +18 -14
  491. package/features/hooks/ApiBeforeWatch/ApiBeforeWatch.js.map +1 -1
  492. package/features/hooks/ApiBeforeWatch/index.js +0 -2
  493. package/features/hooks/BeforeBuild/BeforeBuild.js +19 -15
  494. package/features/hooks/BeforeBuild/BeforeBuild.js.map +1 -1
  495. package/features/hooks/BeforeBuild/index.js +0 -2
  496. package/features/hooks/BeforeDeploy/BeforeDeploy.js +19 -15
  497. package/features/hooks/BeforeDeploy/BeforeDeploy.js.map +1 -1
  498. package/features/hooks/BeforeDeploy/index.js +0 -2
  499. package/features/hooks/BeforeWatch/BeforeWatch.js +19 -15
  500. package/features/hooks/BeforeWatch/BeforeWatch.js.map +1 -1
  501. package/features/hooks/BeforeWatch/index.js +0 -2
  502. package/features/hooks/CoreAfterBuild/CoreBeforeBuild.js +18 -14
  503. package/features/hooks/CoreAfterBuild/CoreBeforeBuild.js.map +1 -1
  504. package/features/hooks/CoreAfterBuild/index.js +0 -2
  505. package/features/hooks/CoreAfterDeploy/CoreBeforeBuild.js +18 -14
  506. package/features/hooks/CoreAfterDeploy/CoreBeforeBuild.js.map +1 -1
  507. package/features/hooks/CoreAfterDeploy/index.js +0 -2
  508. package/features/hooks/CoreBeforeBuild/CoreBeforeBuild.js +18 -14
  509. package/features/hooks/CoreBeforeBuild/CoreBeforeBuild.js.map +1 -1
  510. package/features/hooks/CoreBeforeBuild/index.js +0 -2
  511. package/features/hooks/CoreBeforeDeploy/CoreBeforeDeploy.js +18 -14
  512. package/features/hooks/CoreBeforeDeploy/CoreBeforeDeploy.js.map +1 -1
  513. package/features/hooks/CoreBeforeDeploy/index.js +0 -2
  514. package/features/hooks/CoreBeforeWatch/CoreBeforeWatch.js +18 -14
  515. package/features/hooks/CoreBeforeWatch/CoreBeforeWatch.js.map +1 -1
  516. package/features/hooks/CoreBeforeWatch/index.js +0 -2
  517. package/features/hooks/index.js +0 -2
  518. package/features/index.js +0 -2
  519. package/index.js +5 -10
  520. package/index.js.map +1 -1
  521. package/models/AppModel.js +20 -19
  522. package/models/AppModel.js.map +1 -1
  523. package/models/AppPackageModel.js +10 -9
  524. package/models/AppPackageModel.js.map +1 -1
  525. package/models/PathModel.js +23 -26
  526. package/models/PathModel.js.map +1 -1
  527. package/models/ProjectConfigModel.js +12 -16
  528. package/models/ProjectConfigModel.js.map +1 -1
  529. package/models/ProjectModel.js +37 -36
  530. package/models/ProjectModel.js.map +1 -1
  531. package/models/UrlModel.js +23 -23
  532. package/models/UrlModel.js.map +1 -1
  533. package/models/WcpEnvironmentModel.js +23 -22
  534. package/models/WcpEnvironmentModel.js.map +1 -1
  535. package/models/WcpUserModel.js +13 -12
  536. package/models/WcpUserModel.js.map +1 -1
  537. package/models/WcpUserPatModel.js +12 -11
  538. package/models/WcpUserPatModel.js.map +1 -1
  539. package/models/index.js +0 -2
  540. package/package.json +15 -15
  541. package/rslib-runtime.js +14 -0
  542. package/rslib-runtime.js.map +1 -0
  543. package/services/BuildAppWorkspaceService/BuildAppWorkspaceService.js +62 -69
  544. package/services/BuildAppWorkspaceService/BuildAppWorkspaceService.js.map +1 -1
  545. package/services/BuildAppWorkspaceService/index.js +0 -2
  546. package/services/BuildProjectWorkspaceService/BuildProjectWorkspaceService.js +21 -17
  547. package/services/BuildProjectWorkspaceService/BuildProjectWorkspaceService.js.map +1 -1
  548. package/services/BuildProjectWorkspaceService/index.js +0 -2
  549. package/services/GetAppPackagesService/GetAppPackagesService.js +24 -23
  550. package/services/GetAppPackagesService/GetAppPackagesService.js.map +1 -1
  551. package/services/GetAppPackagesService/index.js +0 -2
  552. package/services/GetAppService/GetAppService.js +24 -27
  553. package/services/GetAppService/GetAppService.js.map +1 -1
  554. package/services/GetAppService/index.js +0 -2
  555. package/services/GetCwdService/GetCwdService.js +15 -12
  556. package/services/GetCwdService/GetCwdService.js.map +1 -1
  557. package/services/GetCwdService/index.js +0 -2
  558. package/services/GetProjectConfigService/EnvContext.js +29 -38
  559. package/services/GetProjectConfigService/EnvContext.js.map +1 -1
  560. package/services/GetProjectConfigService/GetProjectConfigService.js +102 -115
  561. package/services/GetProjectConfigService/GetProjectConfigService.js.map +1 -1
  562. package/services/GetProjectConfigService/ProductionEnvironmentsContext.js +13 -18
  563. package/services/GetProjectConfigService/ProductionEnvironmentsContext.js.map +1 -1
  564. package/services/GetProjectConfigService/WcpProjectLicenseContext.js +32 -37
  565. package/services/GetProjectConfigService/WcpProjectLicenseContext.js.map +1 -1
  566. package/services/GetProjectConfigService/index.js +0 -2
  567. package/services/GetProjectConfigService/renderConfig.js +32 -38
  568. package/services/GetProjectConfigService/renderConfig.js.map +1 -1
  569. package/services/GetProjectConfigService/renderConfigWorker.js +37 -48
  570. package/services/GetProjectConfigService/renderConfigWorker.js.map +1 -1
  571. package/services/GetProjectIdService/GetProjectIdService.js +22 -23
  572. package/services/GetProjectIdService/GetProjectIdService.js.map +1 -1
  573. package/services/GetProjectIdService/index.js +0 -2
  574. package/services/GetProjectService/GetProjectService.js +43 -45
  575. package/services/GetProjectService/GetProjectService.js.map +1 -1
  576. package/services/GetProjectService/index.js +0 -2
  577. package/services/GetProjectVersionService/GetProjectVersionService.js +23 -22
  578. package/services/GetProjectVersionService/GetProjectVersionService.js.map +1 -1
  579. package/services/GetProjectVersionService/index.js +0 -2
  580. package/services/GetPulumiService/GetPulumiService.js +36 -41
  581. package/services/GetPulumiService/GetPulumiService.js.map +1 -1
  582. package/services/GetPulumiService/index.js +0 -2
  583. package/services/InitProjectSdkService/InitProjectSdkService.js +36 -46
  584. package/services/InitProjectSdkService/InitProjectSdkService.js.map +1 -1
  585. package/services/InitProjectSdkService/applyEnvVars.js +5 -8
  586. package/services/InitProjectSdkService/applyEnvVars.js.map +1 -1
  587. package/services/InitProjectSdkService/applyWcpEnvVars.js +91 -136
  588. package/services/InitProjectSdkService/applyWcpEnvVars.js.map +1 -1
  589. package/services/InitProjectSdkService/index.js +0 -2
  590. package/services/InitProjectSdkService/registerDecorators.js +10 -7
  591. package/services/InitProjectSdkService/registerDecorators.js.map +1 -1
  592. package/services/InitProjectSdkService/registerHooks.js +30 -7
  593. package/services/InitProjectSdkService/registerHooks.js.map +1 -1
  594. package/services/InitProjectSdkService/registerImplementations.js +10 -11
  595. package/services/InitProjectSdkService/registerImplementations.js.map +1 -1
  596. package/services/InitProjectSdkService/registerPulumiExtensions.js +12 -9
  597. package/services/InitProjectSdkService/registerPulumiExtensions.js.map +1 -1
  598. package/services/InstallExtensionService/InstallExtensionService.js +78 -121
  599. package/services/InstallExtensionService/InstallExtensionService.js.map +1 -1
  600. package/services/InstallExtensionService/downloadFolderFromS3.js +46 -65
  601. package/services/InstallExtensionService/downloadFolderFromS3.js.map +1 -1
  602. package/services/InstallExtensionService/index.js +0 -2
  603. package/services/InstallExtensionService/mergePackageJson.js +15 -25
  604. package/services/InstallExtensionService/mergePackageJson.js.map +1 -1
  605. package/services/InstallExtensionService/types.js +0 -3
  606. package/services/InstallExtensionService/updateWebinyConfig.js +60 -137
  607. package/services/InstallExtensionService/updateWebinyConfig.js.map +1 -1
  608. package/services/IsRemotePulumiBackendService/IsRemotePulumiBackendService.js +9 -17
  609. package/services/IsRemotePulumiBackendService/IsRemotePulumiBackendService.js.map +1 -1
  610. package/services/IsRemotePulumiBackendService/index.js +0 -2
  611. package/services/ListAppLambdaFunctionsService/ListAppLambdaFunctionsService.js +50 -73
  612. package/services/ListAppLambdaFunctionsService/ListAppLambdaFunctionsService.js.map +1 -1
  613. package/services/ListAppLambdaFunctionsService/index.js +0 -2
  614. package/services/ListDeployedEnvironmentsService/ListDeployedEnvironmentsService.js +21 -23
  615. package/services/ListDeployedEnvironmentsService/ListDeployedEnvironmentsService.js.map +1 -1
  616. package/services/ListDeployedEnvironmentsService/index.js +0 -2
  617. package/services/ListPackagesInAppWorkspaceService/ListPackagesInAppWorkspaceService.js +34 -29
  618. package/services/ListPackagesInAppWorkspaceService/ListPackagesInAppWorkspaceService.js.map +1 -1
  619. package/services/ListPackagesInAppWorkspaceService/index.js +0 -2
  620. package/services/ListPackagesService/ListPackagesService.js +81 -114
  621. package/services/ListPackagesService/ListPackagesService.js.map +1 -1
  622. package/services/ListPackagesService/index.js +0 -2
  623. package/services/LoadEnvVarsService/LoadEnvVarsService.js +28 -29
  624. package/services/LoadEnvVarsService/LoadEnvVarsService.js.map +1 -1
  625. package/services/LoadEnvVarsService/index.js +0 -2
  626. package/services/LocalStorageService/LocalStorageService.js +41 -44
  627. package/services/LocalStorageService/LocalStorageService.js.map +1 -1
  628. package/services/LocalStorageService/index.js +0 -2
  629. package/services/LoggerService/LoggerService.js +76 -84
  630. package/services/LoggerService/LoggerService.js.map +1 -1
  631. package/services/LoggerService/index.js +0 -2
  632. package/services/ProjectInfoService/GetIsCiService.js +9 -8
  633. package/services/ProjectInfoService/GetIsCiService.js.map +1 -1
  634. package/services/ProjectInfoService/GetNpmVersionService.js +9 -8
  635. package/services/ProjectInfoService/GetNpmVersionService.js.map +1 -1
  636. package/services/ProjectInfoService/GetNpxVersionService.js +9 -8
  637. package/services/ProjectInfoService/GetNpxVersionService.js.map +1 -1
  638. package/services/ProjectInfoService/GetPulumiVersionService.js +38 -30
  639. package/services/ProjectInfoService/GetPulumiVersionService.js.map +1 -1
  640. package/services/ProjectInfoService/GetYarnVersionService.js +9 -8
  641. package/services/ProjectInfoService/GetYarnVersionService.js.map +1 -1
  642. package/services/ProjectInfoService/ProjectInfoService.js +56 -51
  643. package/services/ProjectInfoService/ProjectInfoService.js.map +1 -1
  644. package/services/ProjectInfoService/index.js +0 -2
  645. package/services/ProjectSdkParamsService/ProjectSdkParamsService.js +37 -34
  646. package/services/ProjectSdkParamsService/ProjectSdkParamsService.js.map +1 -1
  647. package/services/ProjectSdkParamsService/index.js +0 -2
  648. package/services/PulumiExportService/PulumiExportService.js +42 -35
  649. package/services/PulumiExportService/PulumiExportService.js.map +1 -1
  650. package/services/PulumiExportService/index.js +0 -2
  651. package/services/PulumiGetConfigPassphraseService/PulumiGetConfigPassphraseService.js +9 -8
  652. package/services/PulumiGetConfigPassphraseService/PulumiGetConfigPassphraseService.js.map +1 -1
  653. package/services/PulumiGetConfigPassphraseService/index.js +0 -2
  654. package/services/PulumiGetSecretsProviderService/PulumiGetSecretsProviderService.js +9 -8
  655. package/services/PulumiGetSecretsProviderService/PulumiGetSecretsProviderService.js.map +1 -1
  656. package/services/PulumiGetSecretsProviderService/index.js +0 -2
  657. package/services/PulumiGetStackOutputService/PulumiGetStackOutputService.js +108 -100
  658. package/services/PulumiGetStackOutputService/PulumiGetStackOutputService.js.map +1 -1
  659. package/services/PulumiGetStackOutputService/index.js +0 -2
  660. package/services/PulumiGetStackOutputService/mapStackOutput.js +17 -29
  661. package/services/PulumiGetStackOutputService/mapStackOutput.js.map +1 -1
  662. package/services/PulumiImportService/PulumiImportService.js +48 -45
  663. package/services/PulumiImportService/PulumiImportService.js.map +1 -1
  664. package/services/PulumiImportService/index.js +0 -2
  665. package/services/PulumiLoginService/PulumiLoginService.js +43 -40
  666. package/services/PulumiLoginService/PulumiLoginService.js.map +1 -1
  667. package/services/PulumiLoginService/index.js +0 -2
  668. package/services/PulumiSelectStackService/PulumiSelectStackService.js +91 -86
  669. package/services/PulumiSelectStackService/PulumiSelectStackService.js.map +1 -1
  670. package/services/PulumiSelectStackService/index.js +0 -2
  671. package/services/SetProjectIdService/SetProjectIdService.js +43 -57
  672. package/services/SetProjectIdService/SetProjectIdService.js.map +1 -1
  673. package/services/SetProjectIdService/index.js +0 -2
  674. package/services/StdioService/StdioService.js +15 -14
  675. package/services/StdioService/StdioService.js.map +1 -1
  676. package/services/StdioService/index.js +0 -2
  677. package/services/UiService/UiService.js +55 -58
  678. package/services/UiService/UiService.js.map +1 -1
  679. package/services/UiService/index.js +0 -2
  680. package/services/ValidateProjectConfigService/ValidateProjectConfigService.js +18 -19
  681. package/services/ValidateProjectConfigService/ValidateProjectConfigService.js.map +1 -1
  682. package/services/ValidateProjectConfigService/index.js +0 -2
  683. package/services/WatchedLambdaFunctionsService/WatchedLambdaFunctionsService.js +47 -54
  684. package/services/WatchedLambdaFunctionsService/WatchedLambdaFunctionsService.js.map +1 -1
  685. package/services/WatchedLambdaFunctionsService/index.js +0 -2
  686. package/services/WcpService/CreateUserPat.js +20 -23
  687. package/services/WcpService/CreateUserPat.js.map +1 -1
  688. package/services/WcpService/GenerateUserPat.js +15 -18
  689. package/services/WcpService/GenerateUserPat.js.map +1 -1
  690. package/services/WcpService/GetPatFromLocalStorage.js +9 -10
  691. package/services/WcpService/GetPatFromLocalStorage.js.map +1 -1
  692. package/services/WcpService/GetProjectEnvironment.js +34 -47
  693. package/services/WcpService/GetProjectEnvironment.js.map +1 -1
  694. package/services/WcpService/GetProjectLicense.js +28 -38
  695. package/services/WcpService/GetProjectLicense.js.map +1 -1
  696. package/services/WcpService/GetUser.js +43 -46
  697. package/services/WcpService/GetUser.js.map +1 -1
  698. package/services/WcpService/GetUserPat.js +20 -23
  699. package/services/WcpService/GetUserPat.js.map +1 -1
  700. package/services/WcpService/LogoutUser.js +9 -8
  701. package/services/WcpService/LogoutUser.js.map +1 -1
  702. package/services/WcpService/StorePatToLocalStorage.js +9 -10
  703. package/services/WcpService/StorePatToLocalStorage.js.map +1 -1
  704. package/services/WcpService/UnsetPatFromLocalStorage.js +9 -10
  705. package/services/WcpService/UnsetPatFromLocalStorage.js.map +1 -1
  706. package/services/WcpService/WcpGqlClient.js +6 -5
  707. package/services/WcpService/WcpGqlClient.js.map +1 -1
  708. package/services/WcpService/WcpService.js +74 -75
  709. package/services/WcpService/WcpService.js.map +1 -1
  710. package/services/WcpService/index.js +0 -2
  711. package/services/index.js +0 -2
  712. package/utils/ExtensionSrcResolver.js +51 -106
  713. package/utils/ExtensionSrcResolver.js.map +1 -1
  714. package/utils/constants.js +8 -7
  715. package/utils/constants.js.map +1 -1
  716. package/utils/createPathResolver.js +2 -5
  717. package/utils/createPathResolver.js.map +1 -1
  718. package/utils/env/configuration.js +16 -25
  719. package/utils/env/configuration.js.map +1 -1
  720. package/utils/env/index.js +0 -2
  721. package/utils/env/types.js +0 -3
  722. package/utils/env/withEnv.js +4 -7
  723. package/utils/env/withEnv.js.map +1 -1
  724. package/utils/env/withEnvVariant.js +8 -11
  725. package/utils/env/withEnvVariant.js.map +1 -1
  726. package/utils/env/withProjectName.js +4 -9
  727. package/utils/env/withProjectName.js.map +1 -1
  728. package/utils/env/withPulumiConfigPassphrase.js +4 -8
  729. package/utils/env/withPulumiConfigPassphrase.js.map +1 -1
  730. package/utils/env/withRegion.js +10 -17
  731. package/utils/env/withRegion.js.map +1 -1
  732. package/utils/getRandomColorForString.js +86 -8
  733. package/utils/getRandomColorForString.js.map +1 -1
  734. package/utils/getStackName.js +11 -18
  735. package/utils/getStackName.js.map +1 -1
  736. package/utils/getTemplatesFolderPath.js +6 -8
  737. package/utils/getTemplatesFolderPath.js.map +1 -1
  738. package/utils/index.js +0 -2
  739. package/utils/isValidRegionName.js +8 -13
  740. package/utils/isValidRegionName.js.map +1 -1
  741. package/utils/isValidVariantName.js +11 -10
  742. package/utils/isValidVariantName.js.map +1 -1
  743. package/utils/measureDuration.js +7 -8
  744. package/utils/measureDuration.js.map +1 -1
  745. package/utils/projectSdkContext.js +23 -39
  746. package/utils/projectSdkContext.js.map +1 -1
  747. package/utils/regions.js +75 -63
  748. package/utils/regions.js.map +1 -1
  749. package/utils/registerExtension.js +6 -15
  750. package/utils/registerExtension.js.map +1 -1
  751. package/utils/requireConfig.js +7 -12
  752. package/utils/requireConfig.js.map +1 -1
  753. package/utils/toImportSpecifier.js +3 -9
  754. package/utils/toImportSpecifier.js.map +1 -1
  755. package/abstractions/features/hooks/index.js.map +0 -1
  756. package/abstractions/features/index.js.map +0 -1
  757. package/abstractions/index.js.map +0 -1
  758. package/abstractions/models/IAppModel.js.map +0 -1
  759. package/abstractions/models/IAppPackageModel.js.map +0 -1
  760. package/abstractions/models/IPathModel.js.map +0 -1
  761. package/abstractions/models/IProjectConfigDto.js.map +0 -1
  762. package/abstractions/models/IProjectConfigModel.js.map +0 -1
  763. package/abstractions/models/IProjectModel.js.map +0 -1
  764. package/abstractions/models/IUrlModel.js.map +0 -1
  765. package/abstractions/models/IWcpEnvironmentDto.js.map +0 -1
  766. package/abstractions/models/IWcpEnvironmentModel.js.map +0 -1
  767. package/abstractions/models/IWcpUserDto.js.map +0 -1
  768. package/abstractions/models/IWcpUserModel.js.map +0 -1
  769. package/abstractions/models/IWcpUserPatDto.js.map +0 -1
  770. package/abstractions/models/IWcpUserPatModel.js.map +0 -1
  771. package/abstractions/models/PackagesBuilder/IPackagesBuilder.js.map +0 -1
  772. package/abstractions/models/PackagesBuilder/IRunnableBuildProcess.js.map +0 -1
  773. package/abstractions/models/PackagesBuilder/IRunnableBuildProcesses.js.map +0 -1
  774. package/abstractions/models/PackagesBuilder/index.js.map +0 -1
  775. package/abstractions/models/index.js.map +0 -1
  776. package/abstractions/services/ProjectInfoService/index.js.map +0 -1
  777. package/abstractions/services/index.js.map +0 -1
  778. package/abstractions/types.js.map +0 -1
  779. package/decorators/index.js.map +0 -1
  780. package/defineExtension/index.js.map +0 -1
  781. package/defineExtension/models/index.js.map +0 -1
  782. package/defineExtension/types.js.map +0 -1
  783. package/exports/infra/admin.js.map +0 -1
  784. package/exports/infra/api.js.map +0 -1
  785. package/exports/infra/core.js.map +0 -1
  786. package/exports/infra.js.map +0 -1
  787. package/extensions/hooks/index.js.map +0 -1
  788. package/extensions/infra/index.js.map +0 -1
  789. package/extensions/pulumi/index.js.map +0 -1
  790. package/features/BuildApp/index.js.map +0 -1
  791. package/features/DeployApp/index.js.map +0 -1
  792. package/features/DestroyApp/index.js.map +0 -1
  793. package/features/ExportStack/index.js.map +0 -1
  794. package/features/GetApp/index.js.map +0 -1
  795. package/features/GetAppOutput/index.js.map +0 -1
  796. package/features/GetAppStackOutput/index.js.map +0 -1
  797. package/features/GetFeatureFlags/index.js.map +0 -1
  798. package/features/GetLogger/index.js.map +0 -1
  799. package/features/GetProductionEnvironments/index.js.map +0 -1
  800. package/features/GetProject/index.js.map +0 -1
  801. package/features/GetProjectConfig/index.js.map +0 -1
  802. package/features/GetProjectInfo/index.js.map +0 -1
  803. package/features/GetPulumiResourceNamePrefix/index.js.map +0 -1
  804. package/features/InstallExtension/index.js.map +0 -1
  805. package/features/IsCi/index.js.map +0 -1
  806. package/features/IsTelemetryEnabled/index.js.map +0 -1
  807. package/features/IsWcpEnabled/index.js.map +0 -1
  808. package/features/IsWebinyJsRepo/index.js.map +0 -1
  809. package/features/RefreshApp/index.js.map +0 -1
  810. package/features/RunPulumiCommand/index.js.map +0 -1
  811. package/features/ValidateProjectConfig/index.js.map +0 -1
  812. package/features/Watch/index.js.map +0 -1
  813. package/features/hooks/AdminAfterBuild/index.js.map +0 -1
  814. package/features/hooks/AdminAfterDeploy/index.js.map +0 -1
  815. package/features/hooks/AdminBeforeBuild/index.js.map +0 -1
  816. package/features/hooks/AdminBeforeDeploy/index.js.map +0 -1
  817. package/features/hooks/AdminBeforeWatch/index.js.map +0 -1
  818. package/features/hooks/AfterBuild/index.js.map +0 -1
  819. package/features/hooks/AfterDeploy/index.js.map +0 -1
  820. package/features/hooks/ApiAfterBuild/index.js.map +0 -1
  821. package/features/hooks/ApiAfterDeploy/index.js.map +0 -1
  822. package/features/hooks/ApiBeforeBuild/index.js.map +0 -1
  823. package/features/hooks/ApiBeforeDeploy/index.js.map +0 -1
  824. package/features/hooks/ApiBeforeWatch/index.js.map +0 -1
  825. package/features/hooks/BeforeBuild/index.js.map +0 -1
  826. package/features/hooks/BeforeDeploy/index.js.map +0 -1
  827. package/features/hooks/BeforeWatch/index.js.map +0 -1
  828. package/features/hooks/CoreAfterBuild/index.js.map +0 -1
  829. package/features/hooks/CoreAfterDeploy/index.js.map +0 -1
  830. package/features/hooks/CoreBeforeBuild/index.js.map +0 -1
  831. package/features/hooks/CoreBeforeDeploy/index.js.map +0 -1
  832. package/features/hooks/CoreBeforeWatch/index.js.map +0 -1
  833. package/features/hooks/index.js.map +0 -1
  834. package/features/index.js.map +0 -1
  835. package/models/index.js.map +0 -1
  836. package/services/BuildAppWorkspaceService/index.js.map +0 -1
  837. package/services/BuildProjectWorkspaceService/index.js.map +0 -1
  838. package/services/GetAppPackagesService/index.js.map +0 -1
  839. package/services/GetAppService/index.js.map +0 -1
  840. package/services/GetCwdService/index.js.map +0 -1
  841. package/services/GetProjectConfigService/index.js.map +0 -1
  842. package/services/GetProjectIdService/index.js.map +0 -1
  843. package/services/GetProjectService/index.js.map +0 -1
  844. package/services/GetProjectVersionService/index.js.map +0 -1
  845. package/services/GetPulumiService/index.js.map +0 -1
  846. package/services/InitProjectSdkService/index.js.map +0 -1
  847. package/services/InstallExtensionService/index.js.map +0 -1
  848. package/services/InstallExtensionService/types.js.map +0 -1
  849. package/services/IsRemotePulumiBackendService/index.js.map +0 -1
  850. package/services/ListAppLambdaFunctionsService/index.js.map +0 -1
  851. package/services/ListDeployedEnvironmentsService/index.js.map +0 -1
  852. package/services/ListPackagesInAppWorkspaceService/index.js.map +0 -1
  853. package/services/ListPackagesService/index.js.map +0 -1
  854. package/services/LoadEnvVarsService/index.js.map +0 -1
  855. package/services/LocalStorageService/index.js.map +0 -1
  856. package/services/LoggerService/index.js.map +0 -1
  857. package/services/ProjectInfoService/index.js.map +0 -1
  858. package/services/ProjectSdkParamsService/index.js.map +0 -1
  859. package/services/PulumiExportService/index.js.map +0 -1
  860. package/services/PulumiGetConfigPassphraseService/index.js.map +0 -1
  861. package/services/PulumiGetSecretsProviderService/index.js.map +0 -1
  862. package/services/PulumiGetStackOutputService/index.js.map +0 -1
  863. package/services/PulumiImportService/index.js.map +0 -1
  864. package/services/PulumiLoginService/index.js.map +0 -1
  865. package/services/PulumiSelectStackService/index.js.map +0 -1
  866. package/services/SetProjectIdService/index.js.map +0 -1
  867. package/services/StdioService/index.js.map +0 -1
  868. package/services/UiService/index.js.map +0 -1
  869. package/services/ValidateProjectConfigService/index.js.map +0 -1
  870. package/services/WatchedLambdaFunctionsService/index.js.map +0 -1
  871. package/services/WcpService/index.js.map +0 -1
  872. package/services/index.js.map +0 -1
  873. package/utils/env/index.js.map +0 -1
  874. package/utils/env/types.js.map +0 -1
  875. package/utils/index.js.map +0 -1
@@ -6,105 +6,86 @@ const WEBINY_WATCH_FN_INVOCATION_EVENT = "webiny.watch.functionInvocation";
6
6
  const WEBINY_WATCH_FN_INVOCATION_RESULT_EVENT = "webiny.watch.functionInvocationResult";
7
7
  const WEBINY_WATCH_FN_INVOCATION_HANDSHAKE_EVENT = "webiny.watch.functionInvocationHandshake";
8
8
  const WATCH_WORKER_PATH = path.join(import.meta.dirname, "localInvocationWorker.js");
9
- const jsonStringifyAndCompress = input => {
10
- const jsonStringInput = JSON.stringify(input);
11
- return compress(jsonStringInput);
9
+ const jsonStringifyAndCompress = (input)=>{
10
+ const jsonStringInput = JSON.stringify(input);
11
+ return compress(jsonStringInput);
12
12
  };
13
- const decompressAndJsonParse = async input => {
14
- const inputBuffer = Buffer.from(input);
15
- const jsonStringResult = await decompress(inputBuffer);
16
- const value = jsonStringResult?.toString ? jsonStringResult.toString("utf-8") : jsonStringResult;
17
- return JSON.parse(value);
13
+ const decompressAndJsonParse = async (input)=>{
14
+ const inputBuffer = Buffer.from(input);
15
+ const jsonStringResult = await decompress(inputBuffer);
16
+ const value = jsonStringResult?.toString ? jsonStringResult.toString("utf-8") : jsonStringResult;
17
+ return JSON.parse(value);
18
18
  };
19
- export const initInvocationForwarding = async ({
20
- iotEndpoint,
21
- iotEndpointTopic,
22
- sessionId,
23
- functionsList
24
- }) => {
25
- const client = await mqtt.connectAsync(iotEndpoint);
26
- await client.subscribeAsync(iotEndpointTopic);
27
- client.on("message", async (_, message) => {
28
- const payload = JSON.parse(message.toString());
29
- if (payload.eventType !== WEBINY_WATCH_FN_INVOCATION_EVENT) {
30
- return;
31
- }
32
- if (payload.data.sessionId !== sessionId) {
33
- return;
34
- }
35
- await client.publish(iotEndpointTopic, JSON.stringify({
36
- eventType: WEBINY_WATCH_FN_INVOCATION_HANDSHAKE_EVENT,
37
- eventId: new Date().getTime(),
38
- data: {
39
- originalEventId: payload.eventId,
40
- compressedResult: null,
41
- compressedError: null
42
- }
43
- }));
44
- const invokedLambdaFunction = functionsList.list.find(lambdaFunction => lambdaFunction.name === payload.data.functionName);
45
- if (!invokedLambdaFunction) {
46
- throw new Error(`Lambda function "${payload.data.functionName}" not found.`);
47
- }
48
- try {
49
- const result = await new Promise(async (resolve, reject) => {
50
- const worker = new Worker(WATCH_WORKER_PATH, {
51
- env: {
52
- ...payload.data.env,
53
- WEBINY_WATCH_LOCAL_INVOCATION: "1"
54
- },
55
- workerData: {
56
- handler: {
57
- path: invokedLambdaFunction.path,
58
- args: await decompressAndJsonParse(payload.data.compressedArgs)
19
+ const initInvocationForwarding = async ({ iotEndpoint, iotEndpointTopic, sessionId, functionsList })=>{
20
+ const client = await mqtt.connectAsync(iotEndpoint);
21
+ await client.subscribeAsync(iotEndpointTopic);
22
+ client.on("message", async (_, message)=>{
23
+ const payload = JSON.parse(message.toString());
24
+ if (payload.eventType !== WEBINY_WATCH_FN_INVOCATION_EVENT) return;
25
+ if (payload.data.sessionId !== sessionId) return;
26
+ await client.publish(iotEndpointTopic, JSON.stringify({
27
+ eventType: WEBINY_WATCH_FN_INVOCATION_HANDSHAKE_EVENT,
28
+ eventId: new Date().getTime(),
29
+ data: {
30
+ originalEventId: payload.eventId,
31
+ compressedResult: null,
32
+ compressedError: null
59
33
  }
60
- }
61
- });
62
- const {
63
- default: exitHook
64
- } = await import(/* webpackChunkName: "exit-hook" */"exit-hook");
65
- const unsubscribeExitHook = exitHook(async () => {
66
- await worker.terminate();
67
- });
68
- worker.on("message", message => {
69
- unsubscribeExitHook();
70
- const {
71
- success,
72
- result,
73
- error
74
- } = JSON.parse(message);
75
- if (success) {
76
- resolve(result);
77
- } else {
78
- reject(error);
79
- }
80
- });
81
- });
82
- await client.publish(iotEndpointTopic, JSON.stringify({
83
- eventType: WEBINY_WATCH_FN_INVOCATION_RESULT_EVENT,
84
- eventId: new Date().getTime(),
85
- data: {
86
- originalEventId: payload.eventId,
87
- compressedResult: await jsonStringifyAndCompress(result),
88
- compressedError: null
34
+ }));
35
+ const invokedLambdaFunction = functionsList.list.find((lambdaFunction)=>lambdaFunction.name === payload.data.functionName);
36
+ if (!invokedLambdaFunction) throw new Error(`Lambda function "${payload.data.functionName}" not found.`);
37
+ try {
38
+ const result = await new Promise(async (resolve, reject)=>{
39
+ const worker = new Worker(WATCH_WORKER_PATH, {
40
+ env: {
41
+ ...payload.data.env,
42
+ WEBINY_WATCH_LOCAL_INVOCATION: "1"
43
+ },
44
+ workerData: {
45
+ handler: {
46
+ path: invokedLambdaFunction.path,
47
+ args: await decompressAndJsonParse(payload.data.compressedArgs)
48
+ }
49
+ }
50
+ });
51
+ const { default: exitHook } = await import("exit-hook");
52
+ const unsubscribeExitHook = exitHook(async ()=>{
53
+ await worker.terminate();
54
+ });
55
+ worker.on("message", (message)=>{
56
+ unsubscribeExitHook();
57
+ const { success, result, error } = JSON.parse(message);
58
+ if (success) resolve(result);
59
+ else reject(error);
60
+ });
61
+ });
62
+ await client.publish(iotEndpointTopic, JSON.stringify({
63
+ eventType: WEBINY_WATCH_FN_INVOCATION_RESULT_EVENT,
64
+ eventId: new Date().getTime(),
65
+ data: {
66
+ originalEventId: payload.eventId,
67
+ compressedResult: await jsonStringifyAndCompress(result),
68
+ compressedError: null
69
+ }
70
+ }));
71
+ } catch (error) {
72
+ console.log(error);
73
+ await client.publish(iotEndpointTopic, JSON.stringify({
74
+ eventType: WEBINY_WATCH_FN_INVOCATION_RESULT_EVENT,
75
+ eventId: new Date().getTime(),
76
+ data: {
77
+ originalEventId: payload.eventId,
78
+ compressedResult: null,
79
+ compressedError: await jsonStringifyAndCompress({
80
+ message: error.message,
81
+ stack: error.stack
82
+ })
83
+ }
84
+ }));
89
85
  }
90
- }));
91
- } catch (error) {
92
- console.log(error);
93
- await client.publish(iotEndpointTopic, JSON.stringify({
94
- eventType: WEBINY_WATCH_FN_INVOCATION_RESULT_EVENT,
95
- eventId: new Date().getTime(),
96
- data: {
97
- originalEventId: payload.eventId,
98
- compressedResult: null,
99
- compressedError: await jsonStringifyAndCompress({
100
- message: error.message,
101
- stack: error.stack
102
- })
103
- }
104
- }));
105
- }
106
- });
107
- return client;
86
+ });
87
+ return client;
108
88
  };
89
+ export { initInvocationForwarding };
109
90
 
110
91
  //# sourceMappingURL=initInvocationForwarding.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["path","Worker","compress","decompress","mqtt","WEBINY_WATCH_FN_INVOCATION_EVENT","WEBINY_WATCH_FN_INVOCATION_RESULT_EVENT","WEBINY_WATCH_FN_INVOCATION_HANDSHAKE_EVENT","WATCH_WORKER_PATH","join","import","meta","dirname","jsonStringifyAndCompress","input","jsonStringInput","JSON","stringify","decompressAndJsonParse","inputBuffer","Buffer","from","jsonStringResult","value","toString","parse","initInvocationForwarding","iotEndpoint","iotEndpointTopic","sessionId","functionsList","client","connectAsync","subscribeAsync","on","_","message","payload","eventType","data","publish","eventId","Date","getTime","originalEventId","compressedResult","compressedError","invokedLambdaFunction","list","find","lambdaFunction","name","functionName","Error","result","Promise","resolve","reject","worker","env","WEBINY_WATCH_LOCAL_INVOCATION","workerData","handler","args","compressedArgs","default","exitHook","unsubscribeExitHook","terminate","success","error","console","log","stack"],"sources":["initInvocationForwarding.ts"],"sourcesContent":["import path from \"path\";\nimport { Worker } from \"worker_threads\";\nimport { compress, decompress } from \"@webiny/utils/features/compression/legacy/gzip.js\";\nimport mqtt from \"mqtt\";\nimport type { ListAppLambdaFunctionsService } from \"~/abstractions/index.js\";\n\nconst WEBINY_WATCH_FN_INVOCATION_EVENT = \"webiny.watch.functionInvocation\";\nconst WEBINY_WATCH_FN_INVOCATION_RESULT_EVENT = \"webiny.watch.functionInvocationResult\";\nconst WEBINY_WATCH_FN_INVOCATION_HANDSHAKE_EVENT = \"webiny.watch.functionInvocationHandshake\";\n\nconst WATCH_WORKER_PATH = path.join(import.meta.dirname, \"localInvocationWorker.js\");\n\nconst jsonStringifyAndCompress = (input: Record<string, any>): Promise<Buffer> => {\n const jsonStringInput = JSON.stringify(input);\n return compress(jsonStringInput);\n};\n\nconst decompressAndJsonParse = async (input: string) => {\n const inputBuffer = Buffer.from(input);\n const jsonStringResult = await decompress(inputBuffer);\n\n const value = jsonStringResult?.toString\n ? jsonStringResult.toString(\"utf-8\")\n : (jsonStringResult as unknown as string);\n\n return JSON.parse(value);\n};\n\nexport interface IInitInvocationForwardingParams {\n iotEndpoint: string;\n iotEndpointTopic: string;\n sessionId: number;\n functionsList: ListAppLambdaFunctionsService.Result;\n}\n\nexport const initInvocationForwarding = async ({\n iotEndpoint,\n iotEndpointTopic,\n sessionId,\n functionsList\n}: IInitInvocationForwardingParams) => {\n const client = await mqtt.connectAsync(iotEndpoint);\n\n await client.subscribeAsync(iotEndpointTopic);\n\n client.on(\"message\", async (_, message) => {\n const payload = JSON.parse(message.toString());\n\n if (payload.eventType !== WEBINY_WATCH_FN_INVOCATION_EVENT) {\n return;\n }\n\n if (payload.data.sessionId !== sessionId) {\n return;\n }\n\n await client.publish(\n iotEndpointTopic,\n JSON.stringify({\n eventType: WEBINY_WATCH_FN_INVOCATION_HANDSHAKE_EVENT,\n eventId: new Date().getTime(),\n data: {\n originalEventId: payload.eventId,\n compressedResult: null,\n compressedError: null\n }\n })\n );\n\n const invokedLambdaFunction = functionsList.list.find(\n lambdaFunction => lambdaFunction.name === payload.data.functionName\n );\n if (!invokedLambdaFunction) {\n throw new Error(`Lambda function \"${payload.data.functionName}\" not found.`);\n }\n\n try {\n const result = await new Promise<Record<string, any>>(async (resolve, reject) => {\n const worker = new Worker(WATCH_WORKER_PATH, {\n env: { ...payload.data.env, WEBINY_WATCH_LOCAL_INVOCATION: \"1\" },\n workerData: {\n handler: {\n path: invokedLambdaFunction.path,\n args: await decompressAndJsonParse(payload.data.compressedArgs)\n }\n }\n });\n\n const { default: exitHook } = await import(\n /* webpackChunkName: \"exit-hook\" */ \"exit-hook\"\n );\n\n const unsubscribeExitHook = exitHook(async () => {\n await worker.terminate();\n });\n\n worker.on(\"message\", message => {\n unsubscribeExitHook();\n\n const { success, result, error } = JSON.parse(message);\n if (success) {\n resolve(result);\n } else {\n reject(error);\n }\n });\n });\n\n await client.publish(\n iotEndpointTopic,\n JSON.stringify({\n eventType: WEBINY_WATCH_FN_INVOCATION_RESULT_EVENT,\n eventId: new Date().getTime(),\n data: {\n originalEventId: payload.eventId,\n compressedResult: await jsonStringifyAndCompress(result),\n compressedError: null\n }\n })\n );\n } catch (error) {\n console.log(error);\n await client.publish(\n iotEndpointTopic,\n JSON.stringify({\n eventType: WEBINY_WATCH_FN_INVOCATION_RESULT_EVENT,\n eventId: new Date().getTime(),\n data: {\n originalEventId: payload.eventId,\n compressedResult: null,\n compressedError: await jsonStringifyAndCompress({\n message: error.message,\n stack: error.stack\n })\n }\n })\n );\n }\n });\n\n return client;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"features/Watch/initInvocationForwarding.js","sources":["../../../src/features/Watch/initInvocationForwarding.ts"],"sourcesContent":["import path from \"path\";\nimport { Worker } from \"worker_threads\";\nimport { compress, decompress } from \"@webiny/utils/features/compression/legacy/gzip.js\";\nimport mqtt from \"mqtt\";\nimport type { ListAppLambdaFunctionsService } from \"~/abstractions/index.js\";\n\nconst WEBINY_WATCH_FN_INVOCATION_EVENT = \"webiny.watch.functionInvocation\";\nconst WEBINY_WATCH_FN_INVOCATION_RESULT_EVENT = \"webiny.watch.functionInvocationResult\";\nconst WEBINY_WATCH_FN_INVOCATION_HANDSHAKE_EVENT = \"webiny.watch.functionInvocationHandshake\";\n\nconst WATCH_WORKER_PATH = path.join(import.meta.dirname, \"localInvocationWorker.js\");\n\nconst jsonStringifyAndCompress = (input: Record<string, any>): Promise<Buffer> => {\n const jsonStringInput = JSON.stringify(input);\n return compress(jsonStringInput);\n};\n\nconst decompressAndJsonParse = async (input: string) => {\n const inputBuffer = Buffer.from(input);\n const jsonStringResult = await decompress(inputBuffer);\n\n const value = jsonStringResult?.toString\n ? jsonStringResult.toString(\"utf-8\")\n : (jsonStringResult as unknown as string);\n\n return JSON.parse(value);\n};\n\nexport interface IInitInvocationForwardingParams {\n iotEndpoint: string;\n iotEndpointTopic: string;\n sessionId: number;\n functionsList: ListAppLambdaFunctionsService.Result;\n}\n\nexport const initInvocationForwarding = async ({\n iotEndpoint,\n iotEndpointTopic,\n sessionId,\n functionsList\n}: IInitInvocationForwardingParams) => {\n const client = await mqtt.connectAsync(iotEndpoint);\n\n await client.subscribeAsync(iotEndpointTopic);\n\n client.on(\"message\", async (_, message) => {\n const payload = JSON.parse(message.toString());\n\n if (payload.eventType !== WEBINY_WATCH_FN_INVOCATION_EVENT) {\n return;\n }\n\n if (payload.data.sessionId !== sessionId) {\n return;\n }\n\n await client.publish(\n iotEndpointTopic,\n JSON.stringify({\n eventType: WEBINY_WATCH_FN_INVOCATION_HANDSHAKE_EVENT,\n eventId: new Date().getTime(),\n data: {\n originalEventId: payload.eventId,\n compressedResult: null,\n compressedError: null\n }\n })\n );\n\n const invokedLambdaFunction = functionsList.list.find(\n lambdaFunction => lambdaFunction.name === payload.data.functionName\n );\n if (!invokedLambdaFunction) {\n throw new Error(`Lambda function \"${payload.data.functionName}\" not found.`);\n }\n\n try {\n const result = await new Promise<Record<string, any>>(async (resolve, reject) => {\n const worker = new Worker(WATCH_WORKER_PATH, {\n env: { ...payload.data.env, WEBINY_WATCH_LOCAL_INVOCATION: \"1\" },\n workerData: {\n handler: {\n path: invokedLambdaFunction.path,\n args: await decompressAndJsonParse(payload.data.compressedArgs)\n }\n }\n });\n\n const { default: exitHook } = await import(\n /* webpackChunkName: \"exit-hook\" */ \"exit-hook\"\n );\n\n const unsubscribeExitHook = exitHook(async () => {\n await worker.terminate();\n });\n\n worker.on(\"message\", message => {\n unsubscribeExitHook();\n\n const { success, result, error } = JSON.parse(message);\n if (success) {\n resolve(result);\n } else {\n reject(error);\n }\n });\n });\n\n await client.publish(\n iotEndpointTopic,\n JSON.stringify({\n eventType: WEBINY_WATCH_FN_INVOCATION_RESULT_EVENT,\n eventId: new Date().getTime(),\n data: {\n originalEventId: payload.eventId,\n compressedResult: await jsonStringifyAndCompress(result),\n compressedError: null\n }\n })\n );\n } catch (error) {\n console.log(error);\n await client.publish(\n iotEndpointTopic,\n JSON.stringify({\n eventType: WEBINY_WATCH_FN_INVOCATION_RESULT_EVENT,\n eventId: new Date().getTime(),\n data: {\n originalEventId: payload.eventId,\n compressedResult: null,\n compressedError: await jsonStringifyAndCompress({\n message: error.message,\n stack: error.stack\n })\n }\n })\n );\n }\n });\n\n return client;\n};\n"],"names":["WEBINY_WATCH_FN_INVOCATION_EVENT","WEBINY_WATCH_FN_INVOCATION_RESULT_EVENT","WEBINY_WATCH_FN_INVOCATION_HANDSHAKE_EVENT","WATCH_WORKER_PATH","path","jsonStringifyAndCompress","input","jsonStringInput","JSON","compress","decompressAndJsonParse","inputBuffer","Buffer","jsonStringResult","decompress","value","initInvocationForwarding","iotEndpoint","iotEndpointTopic","sessionId","functionsList","client","mqtt","_","message","payload","Date","invokedLambdaFunction","lambdaFunction","Error","result","Promise","resolve","reject","worker","Worker","exitHook","unsubscribeExitHook","success","error","console"],"mappings":"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"}
@@ -1,40 +1,31 @@
1
1
  import { parentPort, workerData } from "worker_threads";
2
2
  import { pathToFileURL } from "node:url";
3
- import path from "node:path";
4
- const {
5
- handler: handlerParams
6
- } = workerData;
3
+ import node_path from "node:path";
4
+ const { handler: handlerParams } = workerData;
7
5
  try {
8
- const handlerPath = handlerParams.path;
9
- const importSpecifier = path.isAbsolute(handlerPath) ? pathToFileURL(handlerPath).href : handlerPath;
10
- const {
11
- handler
12
- } = await import(importSpecifier);
13
- const result = await handler(...handlerParams.args);
14
- parentPort.postMessage(JSON.stringify({
15
- success: true,
16
- result,
17
- error: null
18
- }));
6
+ const handlerPath = handlerParams.path;
7
+ const importSpecifier = node_path.isAbsolute(handlerPath) ? pathToFileURL(handlerPath).href : handlerPath;
8
+ const { handler } = await import(importSpecifier);
9
+ const result = await handler(...handlerParams.args);
10
+ parentPort.postMessage(JSON.stringify({
11
+ success: true,
12
+ result,
13
+ error: null
14
+ }));
19
15
  } catch (error) {
20
- const {
21
- message,
22
- code,
23
- data,
24
- stack
25
- } = error;
26
- parentPort.postMessage(JSON.stringify({
27
- success: false,
28
- result: null,
29
- error: {
30
- message,
31
- code,
32
- data,
33
- stack
34
- }
35
- }));
36
- } finally {
37
- process.exit(0);
16
+ const { message, code, data, stack } = error;
17
+ parentPort.postMessage(JSON.stringify({
18
+ success: false,
19
+ result: null,
20
+ error: {
21
+ message,
22
+ code,
23
+ data,
24
+ stack
25
+ }
26
+ }));
27
+ } finally{
28
+ process.exit(0);
38
29
  }
39
30
 
40
31
  //# sourceMappingURL=localInvocationWorker.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["parentPort","workerData","pathToFileURL","path","handler","handlerParams","handlerPath","importSpecifier","isAbsolute","href","result","args","postMessage","JSON","stringify","success","error","message","code","data","stack","process","exit"],"sources":["localInvocationWorker.ts"],"sourcesContent":["import { parentPort, workerData } from \"worker_threads\";\nimport { pathToFileURL } from \"node:url\";\nimport path from \"node:path\";\n\nconst { handler: handlerParams } = workerData;\n\ntry {\n const handlerPath = handlerParams.path;\n const importSpecifier = path.isAbsolute(handlerPath)\n ? pathToFileURL(handlerPath).href\n : handlerPath;\n const { handler } = await import(importSpecifier);\n\n const result = await handler(...handlerParams.args);\n parentPort!.postMessage(JSON.stringify({ success: true, result, error: null }));\n} catch (error) {\n const { message, code, data, stack } = error;\n\n parentPort!.postMessage(\n JSON.stringify({\n success: false,\n result: null,\n error: { message, code, data, stack }\n })\n );\n} finally {\n process.exit(0);\n}\n"],"mappings":"AAAA,SAASA,UAAU,EAAEC,UAAU,QAAQ,gBAAgB;AACvD,SAASC,aAAa,QAAQ,UAAU;AACxC,OAAOC,IAAI,MAAM,WAAW;AAE5B,MAAM;EAAEC,OAAO,EAAEC;AAAc,CAAC,GAAGJ,UAAU;AAE7C,IAAI;EACA,MAAMK,WAAW,GAAGD,aAAa,CAACF,IAAI;EACtC,MAAMI,eAAe,GAAGJ,IAAI,CAACK,UAAU,CAACF,WAAW,CAAC,GAC9CJ,aAAa,CAACI,WAAW,CAAC,CAACG,IAAI,GAC/BH,WAAW;EACjB,MAAM;IAAEF;EAAQ,CAAC,GAAG,MAAM,MAAM,CAACG,eAAe,CAAC;EAEjD,MAAMG,MAAM,GAAG,MAAMN,OAAO,CAAC,GAAGC,aAAa,CAACM,IAAI,CAAC;EACnDX,UAAU,CAAEY,WAAW,CAACC,IAAI,CAACC,SAAS,CAAC;IAAEC,OAAO,EAAE,IAAI;IAAEL,MAAM;IAAEM,KAAK,EAAE;EAAK,CAAC,CAAC,CAAC;AACnF,CAAC,CAAC,OAAOA,KAAK,EAAE;EACZ,MAAM;IAAEC,OAAO;IAAEC,IAAI;IAAEC,IAAI;IAAEC;EAAM,CAAC,GAAGJ,KAAK;EAE5ChB,UAAU,CAAEY,WAAW,CACnBC,IAAI,CAACC,SAAS,CAAC;IACXC,OAAO,EAAE,KAAK;IACdL,MAAM,EAAE,IAAI;IACZM,KAAK,EAAE;MAAEC,OAAO;MAAEC,IAAI;MAAEC,IAAI;MAAEC;IAAM;EACxC,CAAC,CACL,CAAC;AACL,CAAC,SAAS;EACNC,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;AACnB","ignoreList":[]}
1
+ {"version":3,"file":"features/Watch/localInvocationWorker.js","sources":["../../../src/features/Watch/localInvocationWorker.ts"],"sourcesContent":["import { parentPort, workerData } from \"worker_threads\";\nimport { pathToFileURL } from \"node:url\";\nimport path from \"node:path\";\n\nconst { handler: handlerParams } = workerData;\n\ntry {\n const handlerPath = handlerParams.path;\n const importSpecifier = path.isAbsolute(handlerPath)\n ? pathToFileURL(handlerPath).href\n : handlerPath;\n const { handler } = await import(importSpecifier);\n\n const result = await handler(...handlerParams.args);\n parentPort!.postMessage(JSON.stringify({ success: true, result, error: null }));\n} catch (error) {\n const { message, code, data, stack } = error;\n\n parentPort!.postMessage(\n JSON.stringify({\n success: false,\n result: null,\n error: { message, code, data, stack }\n })\n );\n} finally {\n process.exit(0);\n}\n"],"names":["handlerParams","workerData","handlerPath","importSpecifier","path","pathToFileURL","handler","result","parentPort","JSON","error","message","code","data","stack","process"],"mappings":";;;AAIA,MAAM,EAAE,SAASA,aAAa,EAAE,GAAGC;AAEnC,IAAI;IACA,MAAMC,cAAcF,cAAc,IAAI;IACtC,MAAMG,kBAAkBC,UAAAA,UAAe,CAACF,eAClCG,cAAcH,aAAa,IAAI,GAC/BA;IACN,MAAM,EAAEI,OAAO,EAAE,GAAG,MAAM,MAAM,CAACH;IAEjC,MAAMI,SAAS,MAAMD,WAAWN,cAAc,IAAI;IAClDQ,WAAAA,WAAuB,CAACC,KAAK,SAAS,CAAC;QAAE,SAAS;QAAMF;QAAQ,OAAO;IAAK;AAChF,EAAE,OAAOG,OAAO;IACZ,MAAM,EAAEC,OAAO,EAAEC,IAAI,EAAEC,IAAI,EAAEC,KAAK,EAAE,GAAGJ;IAEvCF,WAAAA,WAAuB,CACnBC,KAAK,SAAS,CAAC;QACX,SAAS;QACT,QAAQ;QACR,OAAO;YAAEE;YAASC;YAAMC;YAAMC;QAAM;IACxC;AAER,SAAU;IACNC,QAAQ,IAAI,CAAC;AACjB"}
@@ -1,95 +1,72 @@
1
1
  import fs from "fs";
2
- import pRetry from "p-retry";
2
+ import p_retry from "p-retry";
3
3
  import { GetFunctionConfigurationCommand, LambdaClient, UpdateFunctionCodeCommand, UpdateFunctionConfigurationCommand } from "@webiny/aws-sdk/client-lambda/index.js";
4
4
  const WATCH_MODE_NOTE_IN_DESCRIPTION = " (💡 local development mode, redeploy to remove)";
5
5
  const DEFAULT_INCREASE_TIMEOUT = 120;
6
- export const replaceLambdaFunctions = async ({
7
- app,
8
- deploymentId,
9
- iotEndpoint,
10
- iotEndpointTopic,
11
- sessionId,
12
- functionsList,
13
- increaseTimeout,
14
- localExecutionHandshakeTimeout,
15
- dependencies
16
- }) => {
17
- const {
18
- loggerService: logger,
19
- pulumiExportService: exportStackState,
20
- watchedLambdaFunctionsService
21
- } = dependencies;
22
- const stackExport = await exportStackState.execute(app);
23
- if (!stackExport) {
24
- // If no stack export is found, return an empty array. This is a valid scenario.
25
- // For example, watching the Admin app locally, but not deploying it.
26
- logger.info("No AWS Lambda functions to replace.");
27
- return [];
28
- }
29
-
30
- // Find the URNs of Lambda functions that will be replaced
31
- const functionNamesToUpdate = functionsList.list.map(fn => fn.name);
32
- const replacedFunctionUrns = [];
33
- if (stackExport.deployment?.resources) {
34
- for (const resource of stackExport.deployment.resources) {
35
- if (resource.type === "aws:lambda/function:Function") {
36
- const functionName = resource.inputs?.name;
37
- if (functionName && functionNamesToUpdate.includes(functionName)) {
38
- replacedFunctionUrns.push(resource.urn);
39
- logger.debug(`Will replace Lambda function: ${functionName} (${resource.urn})`);
6
+ const replaceLambdaFunctions = async ({ app, deploymentId, iotEndpoint, iotEndpointTopic, sessionId, functionsList, increaseTimeout, localExecutionHandshakeTimeout, dependencies })=>{
7
+ const { loggerService: logger, pulumiExportService: exportStackState, watchedLambdaFunctionsService } = dependencies;
8
+ const stackExport = await exportStackState.execute(app);
9
+ if (!stackExport) {
10
+ logger.info("No AWS Lambda functions to replace.");
11
+ return [];
12
+ }
13
+ const functionNamesToUpdate = functionsList.list.map((fn)=>fn.name);
14
+ const replacedFunctionUrns = [];
15
+ if (stackExport.deployment?.resources) {
16
+ for (const resource of stackExport.deployment.resources)if ("aws:lambda/function:Function" === resource.type) {
17
+ const functionName = resource.inputs?.name;
18
+ if (functionName && functionNamesToUpdate.includes(functionName)) {
19
+ replacedFunctionUrns.push(resource.urn);
20
+ logger.debug(`Will replace Lambda function: ${functionName} (${resource.urn})`);
21
+ }
40
22
  }
41
- }
42
23
  }
43
- }
44
-
45
- // Mark these functions as needing replacement on next deployment
46
- if (replacedFunctionUrns.length > 0) {
47
- watchedLambdaFunctionsService.markDirty({
48
- name: app.name,
49
- deploymentId
50
- }, replacedFunctionUrns);
51
- logger.info(`Marked ${replacedFunctionUrns.length} Lambda function(s) for replacement on next deployment.`);
52
- }
53
- logger.info("replacing %s AWS Lambda function(s).", functionsList.meta.count);
54
- const lambdaClient = new LambdaClient();
55
- const replacementsPromises = functionsList.list.map(async fn => {
56
- const getFnConfigCmd = new GetFunctionConfigurationCommand({
57
- FunctionName: fn.name
24
+ if (replacedFunctionUrns.length > 0) {
25
+ watchedLambdaFunctionsService.markDirty({
26
+ name: app.name,
27
+ deploymentId
28
+ }, replacedFunctionUrns);
29
+ logger.info(`Marked ${replacedFunctionUrns.length} Lambda function(s) for replacement on next deployment.`);
30
+ }
31
+ logger.info("replacing %s AWS Lambda function(s).", functionsList.meta.count);
32
+ const lambdaClient = new LambdaClient();
33
+ const replacementsPromises = functionsList.list.map(async (fn)=>{
34
+ const getFnConfigCmd = new GetFunctionConfigurationCommand({
35
+ FunctionName: fn.name
36
+ });
37
+ const lambdaFnConfiguration = await lambdaClient.send(getFnConfigCmd);
38
+ const updateFnCodeCmd = new UpdateFunctionCodeCommand({
39
+ FunctionName: fn.name,
40
+ ZipFile: fs.readFileSync(import.meta.dirname + "/handler/handler.zip")
41
+ });
42
+ await lambdaClient.send(updateFnCodeCmd);
43
+ let Description = lambdaFnConfiguration.Description || "";
44
+ if (!Description.endsWith(WATCH_MODE_NOTE_IN_DESCRIPTION)) Description += WATCH_MODE_NOTE_IN_DESCRIPTION;
45
+ const Timeout = increaseTimeout || DEFAULT_INCREASE_TIMEOUT;
46
+ await p_retry(()=>lambdaClient.send(new UpdateFunctionConfigurationCommand({
47
+ FunctionName: fn.name,
48
+ Timeout,
49
+ Description,
50
+ Environment: {
51
+ Variables: {
52
+ ...lambdaFnConfiguration.Environment?.Variables,
53
+ WEBINY_WATCH: JSON.stringify({
54
+ enabled: true,
55
+ localExecutionHandshakeTimeout,
56
+ sessionId,
57
+ iotEndpoint,
58
+ iotEndpointTopic,
59
+ functionName: fn.name
60
+ })
61
+ }
62
+ }
63
+ })));
58
64
  });
59
- const lambdaFnConfiguration = await lambdaClient.send(getFnConfigCmd);
60
- const updateFnCodeCmd = new UpdateFunctionCodeCommand({
61
- FunctionName: fn.name,
62
- ZipFile: fs.readFileSync(import.meta.dirname + "/handler/handler.zip")
65
+ return Promise.all(replacementsPromises).then((res)=>{
66
+ logger.info("%s AWS Lambda function(s) replaced.", functionsList.meta.count);
67
+ return res;
63
68
  });
64
- await lambdaClient.send(updateFnCodeCmd);
65
- let Description = lambdaFnConfiguration.Description || "";
66
- if (!Description.endsWith(WATCH_MODE_NOTE_IN_DESCRIPTION)) {
67
- Description += WATCH_MODE_NOTE_IN_DESCRIPTION;
68
- }
69
- const Timeout = increaseTimeout || DEFAULT_INCREASE_TIMEOUT;
70
- await pRetry(() => lambdaClient.send(new UpdateFunctionConfigurationCommand({
71
- FunctionName: fn.name,
72
- Timeout,
73
- Description,
74
- Environment: {
75
- Variables: {
76
- ...lambdaFnConfiguration.Environment?.Variables,
77
- WEBINY_WATCH: JSON.stringify({
78
- enabled: true,
79
- localExecutionHandshakeTimeout,
80
- sessionId,
81
- iotEndpoint,
82
- iotEndpointTopic,
83
- functionName: fn.name
84
- })
85
- }
86
- }
87
- })));
88
- });
89
- return Promise.all(replacementsPromises).then(res => {
90
- logger.info("%s AWS Lambda function(s) replaced.", functionsList.meta.count);
91
- return res;
92
- });
93
69
  };
70
+ export { replaceLambdaFunctions };
94
71
 
95
72
  //# sourceMappingURL=replaceLambdaFunctions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["fs","pRetry","GetFunctionConfigurationCommand","LambdaClient","UpdateFunctionCodeCommand","UpdateFunctionConfigurationCommand","WATCH_MODE_NOTE_IN_DESCRIPTION","DEFAULT_INCREASE_TIMEOUT","replaceLambdaFunctions","app","deploymentId","iotEndpoint","iotEndpointTopic","sessionId","functionsList","increaseTimeout","localExecutionHandshakeTimeout","dependencies","loggerService","logger","pulumiExportService","exportStackState","watchedLambdaFunctionsService","stackExport","execute","info","functionNamesToUpdate","list","map","fn","name","replacedFunctionUrns","deployment","resources","resource","type","functionName","inputs","includes","push","urn","debug","length","markDirty","meta","count","lambdaClient","replacementsPromises","getFnConfigCmd","FunctionName","lambdaFnConfiguration","send","updateFnCodeCmd","ZipFile","readFileSync","import","dirname","Description","endsWith","Timeout","Environment","Variables","WEBINY_WATCH","JSON","stringify","enabled","Promise","all","then","res"],"sources":["replaceLambdaFunctions.ts"],"sourcesContent":["import fs from \"fs\";\nimport pRetry from \"p-retry\";\nimport {\n GetFunctionConfigurationCommand,\n LambdaClient,\n UpdateFunctionCodeCommand,\n UpdateFunctionConfigurationCommand\n} from \"@webiny/aws-sdk/client-lambda/index.js\";\nimport {\n type ListAppLambdaFunctionsService,\n type LoggerService,\n type PulumiExportService,\n type WatchedLambdaFunctionsService,\n type UiService\n} from \"~/abstractions/index.js\";\nimport { type AppModel } from \"~/models/index.js\";\n\nconst WATCH_MODE_NOTE_IN_DESCRIPTION = \" (💡 local development mode, redeploy to remove)\";\nconst DEFAULT_INCREASE_TIMEOUT = 120;\n\nexport interface IReplaceLambdaFunctionsParams {\n app: AppModel;\n deploymentId: string | undefined;\n iotEndpoint: string;\n iotEndpointTopic: string;\n sessionId: number;\n functionsList: ListAppLambdaFunctionsService.Result;\n increaseTimeout?: number;\n localExecutionHandshakeTimeout?: number;\n dependencies: {\n uiService: UiService.Interface;\n loggerService: LoggerService.Interface;\n pulumiExportService: PulumiExportService.Interface;\n watchedLambdaFunctionsService: WatchedLambdaFunctionsService.Interface;\n };\n}\n\nexport const replaceLambdaFunctions = async ({\n app,\n deploymentId,\n iotEndpoint,\n iotEndpointTopic,\n sessionId,\n functionsList,\n increaseTimeout,\n localExecutionHandshakeTimeout,\n dependencies\n}: IReplaceLambdaFunctionsParams) => {\n const {\n loggerService: logger,\n pulumiExportService: exportStackState,\n watchedLambdaFunctionsService\n } = dependencies;\n\n const stackExport = await exportStackState.execute(app);\n if (!stackExport) {\n // If no stack export is found, return an empty array. This is a valid scenario.\n // For example, watching the Admin app locally, but not deploying it.\n logger.info(\"No AWS Lambda functions to replace.\");\n return [];\n }\n\n // Find the URNs of Lambda functions that will be replaced\n const functionNamesToUpdate = functionsList.list.map(fn => fn.name);\n const replacedFunctionUrns: string[] = [];\n\n if (stackExport.deployment?.resources) {\n for (const resource of stackExport.deployment.resources) {\n if (resource.type === \"aws:lambda/function:Function\") {\n const functionName = resource.inputs?.name;\n if (functionName && functionNamesToUpdate.includes(functionName)) {\n replacedFunctionUrns.push(resource.urn);\n logger.debug(`Will replace Lambda function: ${functionName} (${resource.urn})`);\n }\n }\n }\n }\n\n // Mark these functions as needing replacement on next deployment\n if (replacedFunctionUrns.length > 0) {\n watchedLambdaFunctionsService.markDirty(\n { name: app.name, deploymentId },\n replacedFunctionUrns\n );\n logger.info(\n `Marked ${replacedFunctionUrns.length} Lambda function(s) for replacement on next deployment.`\n );\n }\n\n logger.info(\"replacing %s AWS Lambda function(s).\", functionsList.meta.count);\n const lambdaClient = new LambdaClient();\n\n const replacementsPromises = functionsList.list.map(async fn => {\n const getFnConfigCmd = new GetFunctionConfigurationCommand({ FunctionName: fn.name });\n const lambdaFnConfiguration = await lambdaClient.send(getFnConfigCmd);\n\n const updateFnCodeCmd = new UpdateFunctionCodeCommand({\n FunctionName: fn.name,\n ZipFile: fs.readFileSync(import.meta.dirname + \"/handler/handler.zip\")\n });\n\n await lambdaClient.send(updateFnCodeCmd);\n\n let Description = lambdaFnConfiguration.Description || \"\";\n if (!Description.endsWith(WATCH_MODE_NOTE_IN_DESCRIPTION)) {\n Description += WATCH_MODE_NOTE_IN_DESCRIPTION;\n }\n\n const Timeout = increaseTimeout || DEFAULT_INCREASE_TIMEOUT;\n\n await pRetry(() =>\n lambdaClient.send(\n new UpdateFunctionConfigurationCommand({\n FunctionName: fn.name,\n Timeout,\n Description,\n Environment: {\n Variables: {\n ...lambdaFnConfiguration.Environment?.Variables,\n WEBINY_WATCH: JSON.stringify({\n enabled: true,\n localExecutionHandshakeTimeout,\n sessionId,\n iotEndpoint,\n iotEndpointTopic,\n functionName: fn.name\n })\n }\n }\n })\n )\n );\n });\n\n return Promise.all(replacementsPromises).then(res => {\n logger.info(\"%s AWS Lambda function(s) replaced.\", functionsList.meta.count);\n return res;\n });\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"features/Watch/replaceLambdaFunctions.js","sources":["../../../src/features/Watch/replaceLambdaFunctions.ts"],"sourcesContent":["import fs from \"fs\";\nimport pRetry from \"p-retry\";\nimport {\n GetFunctionConfigurationCommand,\n LambdaClient,\n UpdateFunctionCodeCommand,\n UpdateFunctionConfigurationCommand\n} from \"@webiny/aws-sdk/client-lambda/index.js\";\nimport {\n type ListAppLambdaFunctionsService,\n type LoggerService,\n type PulumiExportService,\n type WatchedLambdaFunctionsService,\n type UiService\n} from \"~/abstractions/index.js\";\nimport { type AppModel } from \"~/models/index.js\";\n\nconst WATCH_MODE_NOTE_IN_DESCRIPTION = \" (💡 local development mode, redeploy to remove)\";\nconst DEFAULT_INCREASE_TIMEOUT = 120;\n\nexport interface IReplaceLambdaFunctionsParams {\n app: AppModel;\n deploymentId: string | undefined;\n iotEndpoint: string;\n iotEndpointTopic: string;\n sessionId: number;\n functionsList: ListAppLambdaFunctionsService.Result;\n increaseTimeout?: number;\n localExecutionHandshakeTimeout?: number;\n dependencies: {\n uiService: UiService.Interface;\n loggerService: LoggerService.Interface;\n pulumiExportService: PulumiExportService.Interface;\n watchedLambdaFunctionsService: WatchedLambdaFunctionsService.Interface;\n };\n}\n\nexport const replaceLambdaFunctions = async ({\n app,\n deploymentId,\n iotEndpoint,\n iotEndpointTopic,\n sessionId,\n functionsList,\n increaseTimeout,\n localExecutionHandshakeTimeout,\n dependencies\n}: IReplaceLambdaFunctionsParams) => {\n const {\n loggerService: logger,\n pulumiExportService: exportStackState,\n watchedLambdaFunctionsService\n } = dependencies;\n\n const stackExport = await exportStackState.execute(app);\n if (!stackExport) {\n // If no stack export is found, return an empty array. This is a valid scenario.\n // For example, watching the Admin app locally, but not deploying it.\n logger.info(\"No AWS Lambda functions to replace.\");\n return [];\n }\n\n // Find the URNs of Lambda functions that will be replaced\n const functionNamesToUpdate = functionsList.list.map(fn => fn.name);\n const replacedFunctionUrns: string[] = [];\n\n if (stackExport.deployment?.resources) {\n for (const resource of stackExport.deployment.resources) {\n if (resource.type === \"aws:lambda/function:Function\") {\n const functionName = resource.inputs?.name;\n if (functionName && functionNamesToUpdate.includes(functionName)) {\n replacedFunctionUrns.push(resource.urn);\n logger.debug(`Will replace Lambda function: ${functionName} (${resource.urn})`);\n }\n }\n }\n }\n\n // Mark these functions as needing replacement on next deployment\n if (replacedFunctionUrns.length > 0) {\n watchedLambdaFunctionsService.markDirty(\n { name: app.name, deploymentId },\n replacedFunctionUrns\n );\n logger.info(\n `Marked ${replacedFunctionUrns.length} Lambda function(s) for replacement on next deployment.`\n );\n }\n\n logger.info(\"replacing %s AWS Lambda function(s).\", functionsList.meta.count);\n const lambdaClient = new LambdaClient();\n\n const replacementsPromises = functionsList.list.map(async fn => {\n const getFnConfigCmd = new GetFunctionConfigurationCommand({ FunctionName: fn.name });\n const lambdaFnConfiguration = await lambdaClient.send(getFnConfigCmd);\n\n const updateFnCodeCmd = new UpdateFunctionCodeCommand({\n FunctionName: fn.name,\n ZipFile: fs.readFileSync(import.meta.dirname + \"/handler/handler.zip\")\n });\n\n await lambdaClient.send(updateFnCodeCmd);\n\n let Description = lambdaFnConfiguration.Description || \"\";\n if (!Description.endsWith(WATCH_MODE_NOTE_IN_DESCRIPTION)) {\n Description += WATCH_MODE_NOTE_IN_DESCRIPTION;\n }\n\n const Timeout = increaseTimeout || DEFAULT_INCREASE_TIMEOUT;\n\n await pRetry(() =>\n lambdaClient.send(\n new UpdateFunctionConfigurationCommand({\n FunctionName: fn.name,\n Timeout,\n Description,\n Environment: {\n Variables: {\n ...lambdaFnConfiguration.Environment?.Variables,\n WEBINY_WATCH: JSON.stringify({\n enabled: true,\n localExecutionHandshakeTimeout,\n sessionId,\n iotEndpoint,\n iotEndpointTopic,\n functionName: fn.name\n })\n }\n }\n })\n )\n );\n });\n\n return Promise.all(replacementsPromises).then(res => {\n logger.info(\"%s AWS Lambda function(s) replaced.\", functionsList.meta.count);\n return res;\n });\n};\n"],"names":["WATCH_MODE_NOTE_IN_DESCRIPTION","DEFAULT_INCREASE_TIMEOUT","replaceLambdaFunctions","app","deploymentId","iotEndpoint","iotEndpointTopic","sessionId","functionsList","increaseTimeout","localExecutionHandshakeTimeout","dependencies","logger","exportStackState","watchedLambdaFunctionsService","stackExport","functionNamesToUpdate","fn","replacedFunctionUrns","resource","functionName","lambdaClient","LambdaClient","replacementsPromises","getFnConfigCmd","GetFunctionConfigurationCommand","lambdaFnConfiguration","updateFnCodeCmd","UpdateFunctionCodeCommand","fs","Description","Timeout","pRetry","UpdateFunctionConfigurationCommand","JSON","Promise","res"],"mappings":";;;AAiBA,MAAMA,iCAAiC;AACvC,MAAMC,2BAA2B;AAmB1B,MAAMC,yBAAyB,OAAO,EACzCC,GAAG,EACHC,YAAY,EACZC,WAAW,EACXC,gBAAgB,EAChBC,SAAS,EACTC,aAAa,EACbC,eAAe,EACfC,8BAA8B,EAC9BC,YAAY,EACgB;IAC5B,MAAM,EACF,eAAeC,MAAM,EACrB,qBAAqBC,gBAAgB,EACrCC,6BAA6B,EAChC,GAAGH;IAEJ,MAAMI,cAAc,MAAMF,iBAAiB,OAAO,CAACV;IACnD,IAAI,CAACY,aAAa;QAGdH,OAAO,IAAI,CAAC;QACZ,OAAO,EAAE;IACb;IAGA,MAAMI,wBAAwBR,cAAc,IAAI,CAAC,GAAG,CAACS,CAAAA,KAAMA,GAAG,IAAI;IAClE,MAAMC,uBAAiC,EAAE;IAEzC,IAAIH,YAAY,UAAU,EAAE,WACxB;QAAA,KAAK,MAAMI,YAAYJ,YAAY,UAAU,CAAC,SAAS,CACnD,IAAII,AAAkB,mCAAlBA,SAAS,IAAI,EAAqC;YAClD,MAAMC,eAAeD,SAAS,MAAM,EAAE;YACtC,IAAIC,gBAAgBJ,sBAAsB,QAAQ,CAACI,eAAe;gBAC9DF,qBAAqB,IAAI,CAACC,SAAS,GAAG;gBACtCP,OAAO,KAAK,CAAC,CAAC,8BAA8B,EAAEQ,aAAa,EAAE,EAAED,SAAS,GAAG,CAAC,CAAC,CAAC;YAClF;QACJ;IACJ;IAIJ,IAAID,qBAAqB,MAAM,GAAG,GAAG;QACjCJ,8BAA8B,SAAS,CACnC;YAAE,MAAMX,IAAI,IAAI;YAAEC;QAAa,GAC/Bc;QAEJN,OAAO,IAAI,CACP,CAAC,OAAO,EAAEM,qBAAqB,MAAM,CAAC,uDAAuD,CAAC;IAEtG;IAEAN,OAAO,IAAI,CAAC,wCAAwCJ,cAAc,IAAI,CAAC,KAAK;IAC5E,MAAMa,eAAe,IAAIC;IAEzB,MAAMC,uBAAuBf,cAAc,IAAI,CAAC,GAAG,CAAC,OAAMS;QACtD,MAAMO,iBAAiB,IAAIC,gCAAgC;YAAE,cAAcR,GAAG,IAAI;QAAC;QACnF,MAAMS,wBAAwB,MAAML,aAAa,IAAI,CAACG;QAEtD,MAAMG,kBAAkB,IAAIC,0BAA0B;YAClD,cAAcX,GAAG,IAAI;YACrB,SAASY,GAAG,YAAY,CAAC,YAAY,OAAO,GAAG;QACnD;QAEA,MAAMR,aAAa,IAAI,CAACM;QAExB,IAAIG,cAAcJ,sBAAsB,WAAW,IAAI;QACvD,IAAI,CAACI,YAAY,QAAQ,CAAC9B,iCACtB8B,eAAe9B;QAGnB,MAAM+B,UAAUtB,mBAAmBR;QAEnC,MAAM+B,QAAO,IACTX,aAAa,IAAI,CACb,IAAIY,mCAAmC;gBACnC,cAAchB,GAAG,IAAI;gBACrBc;gBACAD;gBACA,aAAa;oBACT,WAAW;wBACP,GAAGJ,sBAAsB,WAAW,EAAE,SAAS;wBAC/C,cAAcQ,KAAK,SAAS,CAAC;4BACzB,SAAS;4BACTxB;4BACAH;4BACAF;4BACAC;4BACA,cAAcW,GAAG,IAAI;wBACzB;oBACJ;gBACJ;YACJ;IAGZ;IAEA,OAAOkB,QAAQ,GAAG,CAACZ,sBAAsB,IAAI,CAACa,CAAAA;QAC1CxB,OAAO,IAAI,CAAC,uCAAuCJ,cAAc,IAAI,CAAC,KAAK;QAC3E,OAAO4B;IACX;AACJ"}
@@ -1,16 +1,13 @@
1
- export class BasePackagesWatcher {
2
- constructor({
3
- packages,
4
- params,
5
- logger
6
- }) {
7
- this.packages = packages;
8
- this.params = params;
9
- this.logger = logger;
10
- }
11
- prepare() {
12
- throw new Error("Not implemented.");
13
- }
1
+ class BasePackagesWatcher {
2
+ constructor({ packages, params, logger }){
3
+ this.packages = packages;
4
+ this.params = params;
5
+ this.logger = logger;
6
+ }
7
+ prepare() {
8
+ throw new Error("Not implemented.");
9
+ }
14
10
  }
11
+ export { BasePackagesWatcher };
15
12
 
16
13
  //# sourceMappingURL=BasePackagesWatcher.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BasePackagesWatcher","constructor","packages","params","logger","prepare","Error"],"sources":["BasePackagesWatcher.ts"],"sourcesContent":["import { type ListPackagesService, type LoggerService, type Watch } from \"~/abstractions/index.js\";\n\nimport { type RunnableWatchProcesses } from \"./RunnableWatchProcesses.js\";\n\nexport interface IBasePackagesWatcherParams {\n packages: IBasePackagesWatcherPackage[];\n logger: LoggerService.Interface;\n params: Watch.Params;\n}\n\nexport type IBasePackagesWatcherPackage = ListPackagesService.Package;\n\nexport class BasePackagesWatcher {\n public readonly packages: IBasePackagesWatcherPackage[];\n public readonly params: Watch.Params;\n public readonly logger: LoggerService.Interface;\n\n public constructor({ packages, params, logger }: IBasePackagesWatcherParams) {\n this.packages = packages;\n this.params = params;\n this.logger = logger;\n }\n\n public prepare(): RunnableWatchProcesses {\n throw new Error(\"Not implemented.\");\n }\n}\n"],"mappings":"AAYA,OAAO,MAAMA,mBAAmB,CAAC;EAKtBC,WAAWA,CAAC;IAAEC,QAAQ;IAAEC,MAAM;IAAEC;EAAmC,CAAC,EAAE;IACzE,IAAI,CAACF,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,MAAM,GAAGA,MAAM;EACxB;EAEOC,OAAOA,CAAA,EAA2B;IACrC,MAAM,IAAIC,KAAK,CAAC,kBAAkB,CAAC;EACvC;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"features/Watch/watchers/BasePackagesWatcher.js","sources":["../../../../src/features/Watch/watchers/BasePackagesWatcher.ts"],"sourcesContent":["import { type ListPackagesService, type LoggerService, type Watch } from \"~/abstractions/index.js\";\n\nimport { type RunnableWatchProcesses } from \"./RunnableWatchProcesses.js\";\n\nexport interface IBasePackagesWatcherParams {\n packages: IBasePackagesWatcherPackage[];\n logger: LoggerService.Interface;\n params: Watch.Params;\n}\n\nexport type IBasePackagesWatcherPackage = ListPackagesService.Package;\n\nexport class BasePackagesWatcher {\n public readonly packages: IBasePackagesWatcherPackage[];\n public readonly params: Watch.Params;\n public readonly logger: LoggerService.Interface;\n\n public constructor({ packages, params, logger }: IBasePackagesWatcherParams) {\n this.packages = packages;\n this.params = params;\n this.logger = logger;\n }\n\n public prepare(): RunnableWatchProcesses {\n throw new Error(\"Not implemented.\");\n }\n}\n"],"names":["BasePackagesWatcher","packages","params","logger","Error"],"mappings":"AAYO,MAAMA;IAKT,YAAmB,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,MAAM,EAA8B,CAAE;QACzE,IAAI,CAAC,QAAQ,GAAGF;QAChB,IAAI,CAAC,MAAM,GAAGC;QACd,IAAI,CAAC,MAAM,GAAGC;IAClB;IAEO,UAAkC;QACrC,MAAM,IAAIC,MAAM;IACpB;AACJ"}
@@ -1,18 +1,17 @@
1
1
  import { BasePackagesWatcher } from "./BasePackagesWatcher.js";
2
2
  import { RunnableWatchProcess } from "./RunnableWatchProcess.js";
3
3
  import { RunnableWatchProcesses } from "./RunnableWatchProcesses.js";
4
- export class MultiplePackagesWatcher extends BasePackagesWatcher {
5
- prepare() {
6
- const packages = this.packages;
7
- this.logger.debug(`Building %s packages...`, packages.length);
8
- this.logger.debug("The following packages will be watched for changes:", packages);
9
- return new RunnableWatchProcesses(packages.map(pkg => {
10
- return new RunnableWatchProcess({
11
- buildParams: this.params,
12
- pkg
13
- });
14
- }));
15
- }
4
+ class MultiplePackagesWatcher extends BasePackagesWatcher {
5
+ prepare() {
6
+ const packages = this.packages;
7
+ this.logger.debug("Building %s packages...", packages.length);
8
+ this.logger.debug("The following packages will be watched for changes:", packages);
9
+ return new RunnableWatchProcesses(packages.map((pkg)=>new RunnableWatchProcess({
10
+ buildParams: this.params,
11
+ pkg
12
+ })));
13
+ }
16
14
  }
15
+ export { MultiplePackagesWatcher };
17
16
 
18
17
  //# sourceMappingURL=MultiplePackagesWatcher.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BasePackagesWatcher","RunnableWatchProcess","RunnableWatchProcesses","MultiplePackagesWatcher","prepare","packages","logger","debug","length","map","pkg","buildParams","params"],"sources":["MultiplePackagesWatcher.ts"],"sourcesContent":["import { BasePackagesWatcher } from \"./BasePackagesWatcher.js\";\nimport { RunnableWatchProcess } from \"./RunnableWatchProcess.js\";\nimport { RunnableWatchProcesses } from \"./RunnableWatchProcesses.js\";\n\nexport class MultiplePackagesWatcher extends BasePackagesWatcher {\n public override prepare() {\n const packages = this.packages;\n this.logger.debug(`Building %s packages...`, packages.length);\n this.logger.debug(\"The following packages will be watched for changes:\", packages);\n\n return new RunnableWatchProcesses(\n packages.map(pkg => {\n return new RunnableWatchProcess({\n buildParams: this.params,\n pkg\n });\n })\n );\n }\n}\n"],"mappings":"AAAA,SAASA,mBAAmB;AAC5B,SAASC,oBAAoB;AAC7B,SAASC,sBAAsB;AAE/B,OAAO,MAAMC,uBAAuB,SAASH,mBAAmB,CAAC;EAC7CI,OAAOA,CAAA,EAAG;IACtB,MAAMC,QAAQ,GAAG,IAAI,CAACA,QAAQ;IAC9B,IAAI,CAACC,MAAM,CAACC,KAAK,CAAC,yBAAyB,EAAEF,QAAQ,CAACG,MAAM,CAAC;IAC7D,IAAI,CAACF,MAAM,CAACC,KAAK,CAAC,qDAAqD,EAAEF,QAAQ,CAAC;IAElF,OAAO,IAAIH,sBAAsB,CAC7BG,QAAQ,CAACI,GAAG,CAACC,GAAG,IAAI;MAChB,OAAO,IAAIT,oBAAoB,CAAC;QAC5BU,WAAW,EAAE,IAAI,CAACC,MAAM;QACxBF;MACJ,CAAC,CAAC;IACN,CAAC,CACL,CAAC;EACL;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"features/Watch/watchers/MultiplePackagesWatcher.js","sources":["../../../../src/features/Watch/watchers/MultiplePackagesWatcher.ts"],"sourcesContent":["import { BasePackagesWatcher } from \"./BasePackagesWatcher.js\";\nimport { RunnableWatchProcess } from \"./RunnableWatchProcess.js\";\nimport { RunnableWatchProcesses } from \"./RunnableWatchProcesses.js\";\n\nexport class MultiplePackagesWatcher extends BasePackagesWatcher {\n public override prepare() {\n const packages = this.packages;\n this.logger.debug(`Building %s packages...`, packages.length);\n this.logger.debug(\"The following packages will be watched for changes:\", packages);\n\n return new RunnableWatchProcesses(\n packages.map(pkg => {\n return new RunnableWatchProcess({\n buildParams: this.params,\n pkg\n });\n })\n );\n }\n}\n"],"names":["MultiplePackagesWatcher","BasePackagesWatcher","packages","RunnableWatchProcesses","pkg","RunnableWatchProcess"],"mappings":";;;AAIO,MAAMA,gCAAgCC;IACzB,UAAU;QACtB,MAAMC,WAAW,IAAI,CAAC,QAAQ;QAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2BA,SAAS,MAAM;QAC5D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uDAAuDA;QAEzE,OAAO,IAAIC,uBACPD,SAAS,GAAG,CAACE,CAAAA,MACF,IAAIC,qBAAqB;gBAC5B,aAAa,IAAI,CAAC,MAAM;gBACxBD;YACJ;IAGZ;AACJ"}