@webiny/project 0.0.0-unstable.6844005670 → 0.0.0-unstable.7be00a75a9

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 (988) 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.d.ts +0 -1
  14. package/abstractions/features/DeployApp.js +2 -1
  15. package/abstractions/features/DeployApp.js.map +1 -1
  16. package/abstractions/features/DestroyApp.js +2 -1
  17. package/abstractions/features/DestroyApp.js.map +1 -1
  18. package/abstractions/features/ExportStack.js +2 -1
  19. package/abstractions/features/ExportStack.js.map +1 -1
  20. package/abstractions/features/GetApp.js +2 -1
  21. package/abstractions/features/GetApp.js.map +1 -1
  22. package/abstractions/features/GetAppOutput.js +2 -1
  23. package/abstractions/features/GetAppOutput.js.map +1 -1
  24. package/abstractions/features/GetAppStackOutput.js +2 -6
  25. package/abstractions/features/GetAppStackOutput.js.map +1 -1
  26. package/abstractions/features/GetFeatureFlags.js +2 -1
  27. package/abstractions/features/GetFeatureFlags.js.map +1 -1
  28. package/abstractions/features/GetLogger.js +2 -1
  29. package/abstractions/features/GetLogger.js.map +1 -1
  30. package/abstractions/features/GetProductionEnvironments.js +2 -1
  31. package/abstractions/features/GetProductionEnvironments.js.map +1 -1
  32. package/abstractions/features/GetProject.js +2 -1
  33. package/abstractions/features/GetProject.js.map +1 -1
  34. package/abstractions/features/GetProjectConfig.js +2 -1
  35. package/abstractions/features/GetProjectConfig.js.map +1 -1
  36. package/abstractions/features/GetProjectInfo.js +2 -1
  37. package/abstractions/features/GetProjectInfo.js.map +1 -1
  38. package/abstractions/features/GetPulumiResourceNamePrefix.js +2 -1
  39. package/abstractions/features/GetPulumiResourceNamePrefix.js.map +1 -1
  40. package/abstractions/features/InstallExtension.js +2 -1
  41. package/abstractions/features/InstallExtension.js.map +1 -1
  42. package/abstractions/features/IsCi.js +2 -1
  43. package/abstractions/features/IsCi.js.map +1 -1
  44. package/abstractions/features/IsTelemetryEnabled.js +2 -1
  45. package/abstractions/features/IsTelemetryEnabled.js.map +1 -1
  46. package/abstractions/features/IsWcpEnabled.js +2 -1
  47. package/abstractions/features/IsWcpEnabled.js.map +1 -1
  48. package/abstractions/features/IsWebinyJsRepo.js +2 -1
  49. package/abstractions/features/IsWebinyJsRepo.js.map +1 -1
  50. package/abstractions/features/RefreshApp.js +2 -1
  51. package/abstractions/features/RefreshApp.js.map +1 -1
  52. package/abstractions/features/RunPulumiCommand.js +2 -1
  53. package/abstractions/features/RunPulumiCommand.js.map +1 -1
  54. package/abstractions/features/ValidateProjectConfig.js +2 -1
  55. package/abstractions/features/ValidateProjectConfig.js.map +1 -1
  56. package/abstractions/features/Watch.js +2 -1
  57. package/abstractions/features/Watch.js.map +1 -1
  58. package/abstractions/features/hooks/AdminAfterBuild.js +2 -1
  59. package/abstractions/features/hooks/AdminAfterBuild.js.map +1 -1
  60. package/abstractions/features/hooks/AdminAfterDeploy.js +2 -1
  61. package/abstractions/features/hooks/AdminAfterDeploy.js.map +1 -1
  62. package/abstractions/features/hooks/AdminBeforeBuild.js +2 -1
  63. package/abstractions/features/hooks/AdminBeforeBuild.js.map +1 -1
  64. package/abstractions/features/hooks/AdminBeforeDeploy.js +2 -1
  65. package/abstractions/features/hooks/AdminBeforeDeploy.js.map +1 -1
  66. package/abstractions/features/hooks/AdminBeforeWatch.js +2 -1
  67. package/abstractions/features/hooks/AdminBeforeWatch.js.map +1 -1
  68. package/abstractions/features/hooks/AfterBuild.js +2 -1
  69. package/abstractions/features/hooks/AfterBuild.js.map +1 -1
  70. package/abstractions/features/hooks/AfterDeploy.js +2 -1
  71. package/abstractions/features/hooks/AfterDeploy.js.map +1 -1
  72. package/abstractions/features/hooks/ApiAfterBuild.js +2 -1
  73. package/abstractions/features/hooks/ApiAfterBuild.js.map +1 -1
  74. package/abstractions/features/hooks/ApiAfterDeploy.js +2 -1
  75. package/abstractions/features/hooks/ApiAfterDeploy.js.map +1 -1
  76. package/abstractions/features/hooks/ApiBeforeBuild.js +2 -1
  77. package/abstractions/features/hooks/ApiBeforeBuild.js.map +1 -1
  78. package/abstractions/features/hooks/ApiBeforeDeploy.js +2 -1
  79. package/abstractions/features/hooks/ApiBeforeDeploy.js.map +1 -1
  80. package/abstractions/features/hooks/ApiBeforeWatch.js +2 -1
  81. package/abstractions/features/hooks/ApiBeforeWatch.js.map +1 -1
  82. package/abstractions/features/hooks/BeforeBuild.js +2 -1
  83. package/abstractions/features/hooks/BeforeBuild.js.map +1 -1
  84. package/abstractions/features/hooks/BeforeDeploy.js +2 -1
  85. package/abstractions/features/hooks/BeforeDeploy.js.map +1 -1
  86. package/abstractions/features/hooks/BeforeWatch.js +2 -1
  87. package/abstractions/features/hooks/BeforeWatch.js.map +1 -1
  88. package/abstractions/features/hooks/CoreAfterBuild.js +2 -1
  89. package/abstractions/features/hooks/CoreAfterBuild.js.map +1 -1
  90. package/abstractions/features/hooks/CoreAfterDeploy.js +2 -1
  91. package/abstractions/features/hooks/CoreAfterDeploy.js.map +1 -1
  92. package/abstractions/features/hooks/CoreBeforeBuild.js +2 -1
  93. package/abstractions/features/hooks/CoreBeforeBuild.js.map +1 -1
  94. package/abstractions/features/hooks/CoreBeforeDeploy.js +2 -1
  95. package/abstractions/features/hooks/CoreBeforeDeploy.js.map +1 -1
  96. package/abstractions/features/hooks/CoreBeforeWatch.js +2 -1
  97. package/abstractions/features/hooks/CoreBeforeWatch.js.map +1 -1
  98. package/abstractions/features/hooks/index.js +0 -2
  99. package/abstractions/features/index.d.ts +0 -1
  100. package/abstractions/features/index.js +0 -3
  101. package/abstractions/index.js +0 -2
  102. package/abstractions/models/IAppModel.js +0 -3
  103. package/abstractions/models/IAppPackageModel.js +0 -3
  104. package/abstractions/models/IPathModel.js +0 -3
  105. package/abstractions/models/IProjectConfigDto.js +0 -3
  106. package/abstractions/models/IProjectConfigModel.js +0 -3
  107. package/abstractions/models/IProjectModel.js +0 -3
  108. package/abstractions/models/IUrlModel.js +0 -3
  109. package/abstractions/models/IWcpEnvironmentDto.js +0 -3
  110. package/abstractions/models/IWcpEnvironmentModel.js +0 -3
  111. package/abstractions/models/IWcpUserDto.js +0 -3
  112. package/abstractions/models/IWcpUserModel.js +0 -3
  113. package/abstractions/models/IWcpUserPatDto.js +0 -3
  114. package/abstractions/models/IWcpUserPatModel.js +0 -3
  115. package/abstractions/models/PackagesBuilder/IPackagesBuilder.js +0 -3
  116. package/abstractions/models/PackagesBuilder/IRunnableBuildProcess.js +0 -3
  117. package/abstractions/models/PackagesBuilder/IRunnableBuildProcesses.js +0 -3
  118. package/abstractions/models/PackagesBuilder/index.js +0 -3
  119. package/abstractions/models/index.js +0 -3
  120. package/abstractions/services/BuildAppWorkspaceService.js +2 -1
  121. package/abstractions/services/BuildAppWorkspaceService.js.map +1 -1
  122. package/abstractions/services/BuildProjectWorkspaceService.js +2 -1
  123. package/abstractions/services/BuildProjectWorkspaceService.js.map +1 -1
  124. package/abstractions/services/GetAppPackagesService.js +2 -1
  125. package/abstractions/services/GetAppPackagesService.js.map +1 -1
  126. package/abstractions/services/GetAppService.js +2 -1
  127. package/abstractions/services/GetAppService.js.map +1 -1
  128. package/abstractions/services/GetCwdService.js +2 -1
  129. package/abstractions/services/GetCwdService.js.map +1 -1
  130. package/abstractions/services/GetProjectConfigService.js +2 -1
  131. package/abstractions/services/GetProjectConfigService.js.map +1 -1
  132. package/abstractions/services/GetProjectIdService.js +2 -1
  133. package/abstractions/services/GetProjectIdService.js.map +1 -1
  134. package/abstractions/services/GetProjectService.js +2 -1
  135. package/abstractions/services/GetProjectService.js.map +1 -1
  136. package/abstractions/services/GetProjectVersionService.js +2 -1
  137. package/abstractions/services/GetProjectVersionService.js.map +1 -1
  138. package/abstractions/services/GetPulumiService.js +2 -1
  139. package/abstractions/services/GetPulumiService.js.map +1 -1
  140. package/abstractions/services/InitProjectSdkService.js +2 -1
  141. package/abstractions/services/InitProjectSdkService.js.map +1 -1
  142. package/abstractions/services/InstallExtensionService.js +2 -1
  143. package/abstractions/services/InstallExtensionService.js.map +1 -1
  144. package/abstractions/services/IsRemotePulumiBackendService.js +2 -1
  145. package/abstractions/services/IsRemotePulumiBackendService.js.map +1 -1
  146. package/abstractions/services/ListAppLambdaFunctionsService.js +2 -1
  147. package/abstractions/services/ListAppLambdaFunctionsService.js.map +1 -1
  148. package/abstractions/services/ListDeployedEnvironmentsService.js +2 -1
  149. package/abstractions/services/ListDeployedEnvironmentsService.js.map +1 -1
  150. package/abstractions/services/ListPackagesInAppWorkspaceService.js +2 -1
  151. package/abstractions/services/ListPackagesInAppWorkspaceService.js.map +1 -1
  152. package/abstractions/services/ListPackagesService.js +2 -1
  153. package/abstractions/services/ListPackagesService.js.map +1 -1
  154. package/abstractions/services/LoadEnvVarsService.js +2 -1
  155. package/abstractions/services/LoadEnvVarsService.js.map +1 -1
  156. package/abstractions/services/LocalStorageService.js +2 -1
  157. package/abstractions/services/LocalStorageService.js.map +1 -1
  158. package/abstractions/services/LoggerService.js +2 -1
  159. package/abstractions/services/LoggerService.js.map +1 -1
  160. package/abstractions/services/ProjectInfoService/GetIsCiService.js +2 -1
  161. package/abstractions/services/ProjectInfoService/GetIsCiService.js.map +1 -1
  162. package/abstractions/services/ProjectInfoService/GetNpmVersionService.js +2 -1
  163. package/abstractions/services/ProjectInfoService/GetNpmVersionService.js.map +1 -1
  164. package/abstractions/services/ProjectInfoService/GetNpxVersionService.js +2 -1
  165. package/abstractions/services/ProjectInfoService/GetNpxVersionService.js.map +1 -1
  166. package/abstractions/services/ProjectInfoService/GetPulumiVersionService.js +2 -1
  167. package/abstractions/services/ProjectInfoService/GetPulumiVersionService.js.map +1 -1
  168. package/abstractions/services/ProjectInfoService/GetYarnVersionService.js +2 -1
  169. package/abstractions/services/ProjectInfoService/GetYarnVersionService.js.map +1 -1
  170. package/abstractions/services/ProjectInfoService/ProjectInfoService.js +2 -1
  171. package/abstractions/services/ProjectInfoService/ProjectInfoService.js.map +1 -1
  172. package/abstractions/services/ProjectInfoService/index.js +0 -2
  173. package/abstractions/services/ProjectSdkParamsService.js +2 -1
  174. package/abstractions/services/ProjectSdkParamsService.js.map +1 -1
  175. package/abstractions/services/PulumiExportService.js +3 -4
  176. package/abstractions/services/PulumiExportService.js.map +1 -1
  177. package/abstractions/services/PulumiGetConfigPassphraseService.js +2 -1
  178. package/abstractions/services/PulumiGetConfigPassphraseService.js.map +1 -1
  179. package/abstractions/services/PulumiGetSecretsProviderService.js +2 -1
  180. package/abstractions/services/PulumiGetSecretsProviderService.js.map +1 -1
  181. package/abstractions/services/PulumiGetStackOutputService.js +2 -1
  182. package/abstractions/services/PulumiGetStackOutputService.js.map +1 -1
  183. package/abstractions/services/PulumiImportService.js +2 -1
  184. package/abstractions/services/PulumiImportService.js.map +1 -1
  185. package/abstractions/services/PulumiLoginService.js +2 -1
  186. package/abstractions/services/PulumiLoginService.js.map +1 -1
  187. package/abstractions/services/PulumiSelectStackService.js +2 -1
  188. package/abstractions/services/PulumiSelectStackService.js.map +1 -1
  189. package/abstractions/services/SetProjectIdService.js +2 -1
  190. package/abstractions/services/SetProjectIdService.js.map +1 -1
  191. package/abstractions/services/StdioService.js +2 -1
  192. package/abstractions/services/StdioService.js.map +1 -1
  193. package/abstractions/services/UiService.js +2 -1
  194. package/abstractions/services/UiService.js.map +1 -1
  195. package/abstractions/services/ValidateProjectConfigService.js +2 -1
  196. package/abstractions/services/ValidateProjectConfigService.js.map +1 -1
  197. package/abstractions/services/WatchedLambdaFunctionsService.js +2 -1
  198. package/abstractions/services/WatchedLambdaFunctionsService.js.map +1 -1
  199. package/abstractions/services/WcpService.js +2 -1
  200. package/abstractions/services/WcpService.js.map +1 -1
  201. package/abstractions/services/index.js +0 -2
  202. package/abstractions/types.js +0 -3
  203. package/components/Wcp.js +27 -38
  204. package/components/Wcp.js.map +1 -1
  205. package/createProjectSdkContainer.js +103 -112
  206. package/createProjectSdkContainer.js.map +1 -1
  207. package/decorators/BuildAppWithHooks.js +54 -44
  208. package/decorators/BuildAppWithHooks.js.map +1 -1
  209. package/decorators/DeployAppClearWatchedLambdaFunctions.js +27 -29
  210. package/decorators/DeployAppClearWatchedLambdaFunctions.js.map +1 -1
  211. package/decorators/DeployAppRefreshStackOutputCache.js +26 -30
  212. package/decorators/DeployAppRefreshStackOutputCache.js.map +1 -1
  213. package/decorators/DeployAppWithHooks.js +51 -41
  214. package/decorators/DeployAppWithHooks.js.map +1 -1
  215. package/decorators/DeployAppWithWatchedLambdaReplacement.js +33 -37
  216. package/decorators/DeployAppWithWatchedLambdaReplacement.js.map +1 -1
  217. package/decorators/GetFeatureFlagsWithLicense.js +36 -57
  218. package/decorators/GetFeatureFlagsWithLicense.js.map +1 -1
  219. package/decorators/GetPulumiServiceWithDownloadInfo.js +21 -19
  220. package/decorators/GetPulumiServiceWithDownloadInfo.js.map +1 -1
  221. package/decorators/WatchWithHooks.js +30 -27
  222. package/decorators/WatchWithHooks.js.map +1 -1
  223. package/decorators/index.js +0 -2
  224. package/defineExtension/createExtensionDefinition.js +12 -19
  225. package/defineExtension/createExtensionDefinition.js.map +1 -1
  226. package/defineExtension/createExtensionReactComponent.js +40 -46
  227. package/defineExtension/createExtensionReactComponent.js.map +1 -1
  228. package/defineExtension/defineExtension.js +8 -9
  229. package/defineExtension/defineExtension.js.map +1 -1
  230. package/defineExtension/index.js +0 -2
  231. package/defineExtension/models/ExtensionDefinitionModel.d.ts +4 -4
  232. package/defineExtension/models/ExtensionDefinitionModel.js +11 -10
  233. package/defineExtension/models/ExtensionDefinitionModel.js.map +1 -1
  234. package/defineExtension/models/ExtensionInstanceModel.js +23 -21
  235. package/defineExtension/models/ExtensionInstanceModel.js.map +1 -1
  236. package/defineExtension/models/index.js +0 -2
  237. package/defineExtension/types.js +0 -3
  238. package/defineExtension/zodTypes/zodSrcPath.d.ts +1 -1
  239. package/defineExtension/zodTypes/zodSrcPath.js +36 -51
  240. package/defineExtension/zodTypes/zodSrcPath.js.map +1 -1
  241. package/exports/infra/admin.d.ts +0 -1
  242. package/exports/infra/admin.js +0 -3
  243. package/exports/infra/api.d.ts +0 -1
  244. package/exports/infra/api.js +0 -3
  245. package/exports/infra/core.d.ts +0 -1
  246. package/exports/infra/core.js +0 -3
  247. package/exports/infra.d.ts +8 -0
  248. package/exports/infra.js +8 -0
  249. package/extensions/AdminBuildParam.d.ts +2 -8
  250. package/extensions/AdminBuildParam.js +105 -147
  251. package/extensions/AdminBuildParam.js.map +1 -1
  252. package/extensions/AdminExtension.d.ts +2 -8
  253. package/extensions/AdminExtension.js +65 -91
  254. package/extensions/AdminExtension.js.map +1 -1
  255. package/extensions/ApiBuildParam.d.ts +2 -8
  256. package/extensions/ApiBuildParam.js +71 -97
  257. package/extensions/ApiBuildParam.js.map +1 -1
  258. package/extensions/ApiExtension.d.ts +2 -8
  259. package/extensions/ApiExtension.js +72 -93
  260. package/extensions/ApiExtension.js.map +1 -1
  261. package/extensions/ApiMaxBundleSize.d.ts +4 -0
  262. package/extensions/ApiMaxBundleSize.js +23 -0
  263. package/extensions/ApiMaxBundleSize.js.map +1 -0
  264. package/extensions/DatabaseSetup.d.ts +7 -7
  265. package/extensions/DatabaseSetup.js +14 -9
  266. package/extensions/DatabaseSetup.js.map +1 -1
  267. package/extensions/EnvVar.d.ts +4 -7
  268. package/extensions/EnvVar.js +12 -12
  269. package/extensions/EnvVar.js.map +1 -1
  270. package/extensions/ExtensionDefinitions.d.ts +1 -5
  271. package/extensions/ExtensionDefinitions.js +11 -10
  272. package/extensions/ExtensionDefinitions.js.map +1 -1
  273. package/extensions/FeatureFlags.d.ts +17 -79
  274. package/extensions/FeatureFlags.js +47 -36
  275. package/extensions/FeatureFlags.js.map +1 -1
  276. package/extensions/Project/EnsureApiDeployedBeforeAdminBuild.js +21 -22
  277. package/extensions/Project/EnsureApiDeployedBeforeAdminBuild.js.map +1 -1
  278. package/extensions/Project/EnsureApiDeployedBeforeAdminWatch.js +21 -22
  279. package/extensions/Project/EnsureApiDeployedBeforeAdminWatch.js.map +1 -1
  280. package/extensions/Project/EnsureApiDeployedBeforeWatch.js +21 -22
  281. package/extensions/Project/EnsureApiDeployedBeforeWatch.js.map +1 -1
  282. package/extensions/Project/EnsureCoreDeployedBeforeApiDeploy.js +23 -26
  283. package/extensions/Project/EnsureCoreDeployedBeforeApiDeploy.js.map +1 -1
  284. package/extensions/Project/EnsureTelemetryEnabledForOss.js +26 -29
  285. package/extensions/Project/EnsureTelemetryEnabledForOss.js.map +1 -1
  286. package/extensions/Project/SetAdminAppEnvVarsBeforeBuild.js +29 -34
  287. package/extensions/Project/SetAdminAppEnvVarsBeforeBuild.js.map +1 -1
  288. package/extensions/Project/SetAdminAppEnvVarsBeforeWatch.js +30 -35
  289. package/extensions/Project/SetAdminAppEnvVarsBeforeWatch.js.map +1 -1
  290. package/extensions/Project/ShowConfigChangeInfoBeforeAdminWatch.js +12 -9
  291. package/extensions/Project/ShowConfigChangeInfoBeforeAdminWatch.js.map +1 -1
  292. package/extensions/Project/ShowConfigChangeInfoBeforeApiWatch.js +12 -9
  293. package/extensions/Project/ShowConfigChangeInfoBeforeApiWatch.js.map +1 -1
  294. package/extensions/Project/TelemetryNoLongerNewUser.js +7 -7
  295. package/extensions/Project/TelemetryNoLongerNewUser.js.map +1 -1
  296. package/extensions/Project/ValidateEncryptionBeforeDeploy.d.ts +12 -0
  297. package/extensions/Project/ValidateEncryptionBeforeDeploy.js +31 -0
  298. package/extensions/Project/ValidateEncryptionBeforeDeploy.js.map +1 -0
  299. package/extensions/Project/ValidateProductionPulumiState.js +26 -29
  300. package/extensions/Project/ValidateProductionPulumiState.js.map +1 -1
  301. package/extensions/Project/WcpInjectTelemetryClientAfterBuild.js +46 -51
  302. package/extensions/Project/WcpInjectTelemetryClientAfterBuild.js.map +1 -1
  303. package/extensions/Project.js +29 -28
  304. package/extensions/Project.js.map +1 -1
  305. package/extensions/ProjectDecorator.d.ts +3 -7
  306. package/extensions/ProjectDecorator.js +13 -16
  307. package/extensions/ProjectDecorator.js.map +1 -1
  308. package/extensions/ProjectId.d.ts +3 -7
  309. package/extensions/ProjectId.js +11 -13
  310. package/extensions/ProjectId.js.map +1 -1
  311. package/extensions/ProjectImplementation.d.ts +3 -9
  312. package/extensions/ProjectImplementation.js +14 -17
  313. package/extensions/ProjectImplementation.js.map +1 -1
  314. package/extensions/Telemetry.d.ts +2 -6
  315. package/extensions/Telemetry.js +10 -9
  316. package/extensions/Telemetry.js.map +1 -1
  317. package/extensions/hooks/AdminAfterBuild.d.ts +2 -6
  318. package/extensions/hooks/AdminAfterBuild.js +16 -19
  319. package/extensions/hooks/AdminAfterBuild.js.map +1 -1
  320. package/extensions/hooks/AdminAfterDeploy.d.ts +2 -6
  321. package/extensions/hooks/AdminAfterDeploy.js +16 -19
  322. package/extensions/hooks/AdminAfterDeploy.js.map +1 -1
  323. package/extensions/hooks/AdminBeforeBuild.d.ts +2 -6
  324. package/extensions/hooks/AdminBeforeBuild.js +16 -19
  325. package/extensions/hooks/AdminBeforeBuild.js.map +1 -1
  326. package/extensions/hooks/AdminBeforeDeploy.d.ts +2 -6
  327. package/extensions/hooks/AdminBeforeDeploy.js +16 -19
  328. package/extensions/hooks/AdminBeforeDeploy.js.map +1 -1
  329. package/extensions/hooks/AdminBeforeWatch.d.ts +2 -6
  330. package/extensions/hooks/AdminBeforeWatch.js +16 -19
  331. package/extensions/hooks/AdminBeforeWatch.js.map +1 -1
  332. package/extensions/hooks/AfterBuild.d.ts +2 -6
  333. package/extensions/hooks/AfterBuild.js +15 -18
  334. package/extensions/hooks/AfterBuild.js.map +1 -1
  335. package/extensions/hooks/AfterDeploy.d.ts +2 -6
  336. package/extensions/hooks/AfterDeploy.js +15 -18
  337. package/extensions/hooks/AfterDeploy.js.map +1 -1
  338. package/extensions/hooks/ApiAfterBuild.d.ts +2 -6
  339. package/extensions/hooks/ApiAfterBuild.js +16 -19
  340. package/extensions/hooks/ApiAfterBuild.js.map +1 -1
  341. package/extensions/hooks/ApiAfterDeploy.d.ts +2 -6
  342. package/extensions/hooks/ApiAfterDeploy.js +16 -19
  343. package/extensions/hooks/ApiAfterDeploy.js.map +1 -1
  344. package/extensions/hooks/ApiBeforeBuild.d.ts +2 -6
  345. package/extensions/hooks/ApiBeforeBuild.js +16 -19
  346. package/extensions/hooks/ApiBeforeBuild.js.map +1 -1
  347. package/extensions/hooks/ApiBeforeDeploy.d.ts +2 -6
  348. package/extensions/hooks/ApiBeforeDeploy.js +16 -19
  349. package/extensions/hooks/ApiBeforeDeploy.js.map +1 -1
  350. package/extensions/hooks/ApiBeforeWatch.d.ts +2 -6
  351. package/extensions/hooks/ApiBeforeWatch.js +16 -19
  352. package/extensions/hooks/ApiBeforeWatch.js.map +1 -1
  353. package/extensions/hooks/BeforeBuild.d.ts +2 -6
  354. package/extensions/hooks/BeforeBuild.js +15 -18
  355. package/extensions/hooks/BeforeBuild.js.map +1 -1
  356. package/extensions/hooks/BeforeDeploy.d.ts +2 -6
  357. package/extensions/hooks/BeforeDeploy.js +15 -18
  358. package/extensions/hooks/BeforeDeploy.js.map +1 -1
  359. package/extensions/hooks/BeforeWatch.d.ts +2 -6
  360. package/extensions/hooks/BeforeWatch.js +15 -18
  361. package/extensions/hooks/BeforeWatch.js.map +1 -1
  362. package/extensions/hooks/CoreAfterBuild.d.ts +2 -6
  363. package/extensions/hooks/CoreAfterBuild.js +16 -19
  364. package/extensions/hooks/CoreAfterBuild.js.map +1 -1
  365. package/extensions/hooks/CoreAfterDeploy.d.ts +2 -6
  366. package/extensions/hooks/CoreAfterDeploy.js +16 -19
  367. package/extensions/hooks/CoreAfterDeploy.js.map +1 -1
  368. package/extensions/hooks/CoreBeforeBuild.d.ts +2 -6
  369. package/extensions/hooks/CoreBeforeBuild.js +16 -19
  370. package/extensions/hooks/CoreBeforeBuild.js.map +1 -1
  371. package/extensions/hooks/CoreBeforeDeploy.d.ts +2 -6
  372. package/extensions/hooks/CoreBeforeDeploy.js +16 -19
  373. package/extensions/hooks/CoreBeforeDeploy.js.map +1 -1
  374. package/extensions/hooks/CoreBeforeWatch.d.ts +2 -6
  375. package/extensions/hooks/CoreBeforeWatch.js +16 -19
  376. package/extensions/hooks/CoreBeforeWatch.js.map +1 -1
  377. package/extensions/hooks/index.js +0 -2
  378. package/extensions/index.d.ts +42 -145
  379. package/extensions/index.js +45 -60
  380. package/extensions/index.js.map +1 -1
  381. package/extensions/infra/Ci.d.ts +14 -0
  382. package/extensions/infra/Ci.js +13 -0
  383. package/extensions/infra/Ci.js.map +1 -0
  384. package/extensions/infra/Env.d.ts +6 -0
  385. package/extensions/infra/Env.js +38 -74
  386. package/extensions/infra/Env.js.map +1 -1
  387. package/extensions/infra/index.d.ts +1 -0
  388. package/extensions/infra/index.js +1 -2
  389. package/extensions/pulumi/AdminStackOutputValue.d.ts +1 -7
  390. package/extensions/pulumi/AdminStackOutputValue.js +13 -12
  391. package/extensions/pulumi/AdminStackOutputValue.js.map +1 -1
  392. package/extensions/pulumi/ApiStackOutputValue.d.ts +1 -7
  393. package/extensions/pulumi/ApiStackOutputValue.js +13 -12
  394. package/extensions/pulumi/ApiStackOutputValue.js.map +1 -1
  395. package/extensions/pulumi/CoreStackOutputValue.d.ts +1 -7
  396. package/extensions/pulumi/CoreStackOutputValue.js +13 -12
  397. package/extensions/pulumi/CoreStackOutputValue.js.map +1 -1
  398. package/extensions/pulumi/ProductionEnvironments.d.ts +2 -6
  399. package/extensions/pulumi/ProductionEnvironments.js +31 -26
  400. package/extensions/pulumi/ProductionEnvironments.js.map +1 -1
  401. package/extensions/pulumi/PulumiResourceNamePrefix.d.ts +1 -5
  402. package/extensions/pulumi/PulumiResourceNamePrefix.js +10 -9
  403. package/extensions/pulumi/PulumiResourceNamePrefix.js.map +1 -1
  404. package/extensions/pulumi/index.d.ts +0 -3
  405. package/extensions/pulumi/index.js +0 -5
  406. package/features/BuildApp/BuildApp.js +49 -40
  407. package/features/BuildApp/BuildApp.js.map +1 -1
  408. package/features/BuildApp/PackagesBuilder/PackagesBuilder.js +34 -39
  409. package/features/BuildApp/PackagesBuilder/PackagesBuilder.js.map +1 -1
  410. package/features/BuildApp/PackagesBuilder/RunnableBuildProcess.js +39 -33
  411. package/features/BuildApp/PackagesBuilder/RunnableBuildProcess.js.map +1 -1
  412. package/features/BuildApp/PackagesBuilder/RunnableBuildProcesses.js +39 -46
  413. package/features/BuildApp/PackagesBuilder/RunnableBuildProcesses.js.map +1 -1
  414. package/features/BuildApp/PackagesBuilder/worker.js +27 -35
  415. package/features/BuildApp/PackagesBuilder/worker.js.map +1 -1
  416. package/features/BuildApp/index.js +0 -2
  417. package/features/DeployApp/DeployApp.js +79 -79
  418. package/features/DeployApp/DeployApp.js.map +1 -1
  419. package/features/DeployApp/index.js +0 -2
  420. package/features/DestroyApp/DestroyApp.js +60 -46
  421. package/features/DestroyApp/DestroyApp.js.map +1 -1
  422. package/features/DestroyApp/index.js +0 -2
  423. package/features/ExportStack/ExportStack.js +21 -16
  424. package/features/ExportStack/ExportStack.js.map +1 -1
  425. package/features/ExportStack/index.js +0 -2
  426. package/features/GetApp/GetApp.js +14 -11
  427. package/features/GetApp/GetApp.js.map +1 -1
  428. package/features/GetApp/index.js +0 -2
  429. package/features/GetAppOutput/GetAppOutput.js +44 -33
  430. package/features/GetAppOutput/GetAppOutput.js.map +1 -1
  431. package/features/GetAppOutput/index.js +0 -2
  432. package/features/GetAppStackOutput/GetAppStackOutput.js +20 -15
  433. package/features/GetAppStackOutput/GetAppStackOutput.js.map +1 -1
  434. package/features/GetAppStackOutput/index.js +0 -2
  435. package/features/GetFeatureFlags/GetFeatureFlags.d.ts +1 -2
  436. package/features/GetFeatureFlags/GetFeatureFlags.js +21 -21
  437. package/features/GetFeatureFlags/GetFeatureFlags.js.map +1 -1
  438. package/features/GetFeatureFlags/index.js +0 -2
  439. package/features/GetLogger/GetLogger.js +14 -11
  440. package/features/GetLogger/GetLogger.js.map +1 -1
  441. package/features/GetLogger/index.js +0 -2
  442. package/features/GetProductionEnvironments/GetProductionEnvironments.js +24 -19
  443. package/features/GetProductionEnvironments/GetProductionEnvironments.js.map +1 -1
  444. package/features/GetProductionEnvironments/index.js +0 -2
  445. package/features/GetProject/GetProject.js +14 -11
  446. package/features/GetProject/GetProject.js.map +1 -1
  447. package/features/GetProject/index.js +0 -2
  448. package/features/GetProjectConfig/GetProjectConfig.js +14 -11
  449. package/features/GetProjectConfig/GetProjectConfig.js.map +1 -1
  450. package/features/GetProjectConfig/index.js +0 -2
  451. package/features/GetProjectInfo/GetProjectInfo.js +14 -11
  452. package/features/GetProjectInfo/GetProjectInfo.js.map +1 -1
  453. package/features/GetProjectInfo/index.js +0 -2
  454. package/features/GetPulumiResourceNamePrefix/GetPulumiResourceNamePrefix.js +18 -17
  455. package/features/GetPulumiResourceNamePrefix/GetPulumiResourceNamePrefix.js.map +1 -1
  456. package/features/GetPulumiResourceNamePrefix/index.js +0 -2
  457. package/features/InstallExtension/InstallExtension.js +14 -11
  458. package/features/InstallExtension/InstallExtension.js.map +1 -1
  459. package/features/InstallExtension/index.js +0 -2
  460. package/features/IsCi/IsCi.js +14 -11
  461. package/features/IsCi/IsCi.js.map +1 -1
  462. package/features/IsCi/index.js +0 -2
  463. package/features/IsTelemetryEnabled/IsTelemetryEnabled.js +19 -18
  464. package/features/IsTelemetryEnabled/IsTelemetryEnabled.js.map +1 -1
  465. package/features/IsTelemetryEnabled/index.js +0 -2
  466. package/features/IsWcpEnabled/IsWcpEnabled.js +15 -12
  467. package/features/IsWcpEnabled/IsWcpEnabled.js.map +1 -1
  468. package/features/IsWcpEnabled/index.js +0 -2
  469. package/features/IsWebinyJsRepo/IsWebinyJsRepo.js +17 -14
  470. package/features/IsWebinyJsRepo/IsWebinyJsRepo.js.map +1 -1
  471. package/features/IsWebinyJsRepo/index.js +0 -2
  472. package/features/RefreshApp/RefreshApp.js +57 -46
  473. package/features/RefreshApp/RefreshApp.js.map +1 -1
  474. package/features/RefreshApp/index.js +0 -2
  475. package/features/RunPulumiCommand/RunPulumiCommand.js +54 -43
  476. package/features/RunPulumiCommand/RunPulumiCommand.js.map +1 -1
  477. package/features/RunPulumiCommand/index.js +0 -2
  478. package/features/ValidateProjectConfig/ValidateProjectConfig.js +14 -11
  479. package/features/ValidateProjectConfig/ValidateProjectConfig.js.map +1 -1
  480. package/features/ValidateProjectConfig/index.js +0 -2
  481. package/features/Watch/Watch.js +178 -181
  482. package/features/Watch/Watch.js.map +1 -1
  483. package/features/Watch/getIotEndpoint.js +14 -12
  484. package/features/Watch/getIotEndpoint.js.map +1 -1
  485. package/features/Watch/index.js +0 -2
  486. package/features/Watch/initInvocationForwarding.d.ts +1 -1
  487. package/features/Watch/initInvocationForwarding.js +77 -96
  488. package/features/Watch/initInvocationForwarding.js.map +1 -1
  489. package/features/Watch/localInvocationWorker.js +25 -30
  490. package/features/Watch/localInvocationWorker.js.map +1 -1
  491. package/features/Watch/replaceLambdaFunctions.js +61 -84
  492. package/features/Watch/replaceLambdaFunctions.js.map +1 -1
  493. package/features/Watch/watchers/BasePackagesWatcher.js +10 -13
  494. package/features/Watch/watchers/BasePackagesWatcher.js.map +1 -1
  495. package/features/Watch/watchers/MultiplePackagesWatcher.js +11 -12
  496. package/features/Watch/watchers/MultiplePackagesWatcher.js.map +1 -1
  497. package/features/Watch/watchers/PackagesWatcher.js +15 -18
  498. package/features/Watch/watchers/PackagesWatcher.js.map +1 -1
  499. package/features/Watch/watchers/RunnableWatchProcess.js +41 -40
  500. package/features/Watch/watchers/RunnableWatchProcess.js.map +1 -1
  501. package/features/Watch/watchers/RunnableWatchProcesses.js +35 -34
  502. package/features/Watch/watchers/RunnableWatchProcesses.js.map +1 -1
  503. package/features/Watch/watchers/SinglePackageWatcher.js +11 -8
  504. package/features/Watch/watchers/SinglePackageWatcher.js.map +1 -1
  505. package/features/Watch/watchers/WebinyConfigWatcher.js +30 -40
  506. package/features/Watch/watchers/WebinyConfigWatcher.js.map +1 -1
  507. package/features/Watch/watchers/ZeroPackagesWatcher.js +5 -5
  508. package/features/Watch/watchers/ZeroPackagesWatcher.js.map +1 -1
  509. package/features/Watch/watchers/utils/measureDuration.js +7 -8
  510. package/features/Watch/watchers/utils/measureDuration.js.map +1 -1
  511. package/features/Watch/watchers/worker.js +12 -21
  512. package/features/Watch/watchers/worker.js.map +1 -1
  513. package/features/hooks/AdminAfterBuild/AdminBeforeBuild.js +19 -15
  514. package/features/hooks/AdminAfterBuild/AdminBeforeBuild.js.map +1 -1
  515. package/features/hooks/AdminAfterBuild/index.js +0 -2
  516. package/features/hooks/AdminAfterDeploy/AdminBeforeBuild.js +19 -15
  517. package/features/hooks/AdminAfterDeploy/AdminBeforeBuild.js.map +1 -1
  518. package/features/hooks/AdminAfterDeploy/index.js +0 -2
  519. package/features/hooks/AdminBeforeBuild/AdminBeforeBuild.js +19 -15
  520. package/features/hooks/AdminBeforeBuild/AdminBeforeBuild.js.map +1 -1
  521. package/features/hooks/AdminBeforeBuild/index.js +0 -2
  522. package/features/hooks/AdminBeforeDeploy/AdminBeforeDeploy.js +19 -15
  523. package/features/hooks/AdminBeforeDeploy/AdminBeforeDeploy.js.map +1 -1
  524. package/features/hooks/AdminBeforeDeploy/index.js +0 -2
  525. package/features/hooks/AdminBeforeWatch/AdminBeforeWatch.js +18 -14
  526. package/features/hooks/AdminBeforeWatch/AdminBeforeWatch.js.map +1 -1
  527. package/features/hooks/AdminBeforeWatch/index.js +0 -2
  528. package/features/hooks/AfterBuild/AfterBuild.js +19 -15
  529. package/features/hooks/AfterBuild/AfterBuild.js.map +1 -1
  530. package/features/hooks/AfterBuild/index.js +0 -2
  531. package/features/hooks/AfterDeploy/AfterDeploy.js +19 -15
  532. package/features/hooks/AfterDeploy/AfterDeploy.js.map +1 -1
  533. package/features/hooks/AfterDeploy/index.js +0 -2
  534. package/features/hooks/ApiAfterBuild/ApiBeforeBuild.js +18 -14
  535. package/features/hooks/ApiAfterBuild/ApiBeforeBuild.js.map +1 -1
  536. package/features/hooks/ApiAfterBuild/index.js +0 -2
  537. package/features/hooks/ApiAfterDeploy/ApiBeforeBuild.js +18 -14
  538. package/features/hooks/ApiAfterDeploy/ApiBeforeBuild.js.map +1 -1
  539. package/features/hooks/ApiAfterDeploy/index.js +0 -2
  540. package/features/hooks/ApiBeforeBuild/ApiBeforeBuild.js +18 -14
  541. package/features/hooks/ApiBeforeBuild/ApiBeforeBuild.js.map +1 -1
  542. package/features/hooks/ApiBeforeBuild/index.js +0 -2
  543. package/features/hooks/ApiBeforeDeploy/ApiBeforeDeploy.js +18 -14
  544. package/features/hooks/ApiBeforeDeploy/ApiBeforeDeploy.js.map +1 -1
  545. package/features/hooks/ApiBeforeDeploy/index.js +0 -2
  546. package/features/hooks/ApiBeforeWatch/ApiBeforeWatch.js +18 -14
  547. package/features/hooks/ApiBeforeWatch/ApiBeforeWatch.js.map +1 -1
  548. package/features/hooks/ApiBeforeWatch/index.js +0 -2
  549. package/features/hooks/BeforeBuild/BeforeBuild.js +19 -15
  550. package/features/hooks/BeforeBuild/BeforeBuild.js.map +1 -1
  551. package/features/hooks/BeforeBuild/index.js +0 -2
  552. package/features/hooks/BeforeDeploy/BeforeDeploy.js +19 -15
  553. package/features/hooks/BeforeDeploy/BeforeDeploy.js.map +1 -1
  554. package/features/hooks/BeforeDeploy/index.js +0 -2
  555. package/features/hooks/BeforeWatch/BeforeWatch.js +19 -15
  556. package/features/hooks/BeforeWatch/BeforeWatch.js.map +1 -1
  557. package/features/hooks/BeforeWatch/index.js +0 -2
  558. package/features/hooks/CoreAfterBuild/CoreBeforeBuild.js +18 -14
  559. package/features/hooks/CoreAfterBuild/CoreBeforeBuild.js.map +1 -1
  560. package/features/hooks/CoreAfterBuild/index.js +0 -2
  561. package/features/hooks/CoreAfterDeploy/CoreBeforeBuild.js +18 -14
  562. package/features/hooks/CoreAfterDeploy/CoreBeforeBuild.js.map +1 -1
  563. package/features/hooks/CoreAfterDeploy/index.js +0 -2
  564. package/features/hooks/CoreBeforeBuild/CoreBeforeBuild.js +18 -14
  565. package/features/hooks/CoreBeforeBuild/CoreBeforeBuild.js.map +1 -1
  566. package/features/hooks/CoreBeforeBuild/index.js +0 -2
  567. package/features/hooks/CoreBeforeDeploy/CoreBeforeDeploy.js +18 -14
  568. package/features/hooks/CoreBeforeDeploy/CoreBeforeDeploy.js.map +1 -1
  569. package/features/hooks/CoreBeforeDeploy/index.js +0 -2
  570. package/features/hooks/CoreBeforeWatch/CoreBeforeWatch.js +18 -14
  571. package/features/hooks/CoreBeforeWatch/CoreBeforeWatch.js.map +1 -1
  572. package/features/hooks/CoreBeforeWatch/index.js +0 -2
  573. package/features/hooks/index.js +0 -2
  574. package/features/index.d.ts +0 -1
  575. package/features/index.js +0 -3
  576. package/index.d.ts +1 -0
  577. package/index.js +6 -10
  578. package/index.js.map +1 -1
  579. package/models/AppModel.js +20 -19
  580. package/models/AppModel.js.map +1 -1
  581. package/models/AppPackageModel.js +10 -9
  582. package/models/AppPackageModel.js.map +1 -1
  583. package/models/PathModel.js +23 -26
  584. package/models/PathModel.js.map +1 -1
  585. package/models/ProjectConfigModel.js +12 -16
  586. package/models/ProjectConfigModel.js.map +1 -1
  587. package/models/ProjectModel.js +37 -36
  588. package/models/ProjectModel.js.map +1 -1
  589. package/models/UrlModel.js +23 -23
  590. package/models/UrlModel.js.map +1 -1
  591. package/models/WcpEnvironmentModel.js +23 -22
  592. package/models/WcpEnvironmentModel.js.map +1 -1
  593. package/models/WcpUserModel.js +13 -12
  594. package/models/WcpUserModel.js.map +1 -1
  595. package/models/WcpUserPatModel.js +12 -11
  596. package/models/WcpUserPatModel.js.map +1 -1
  597. package/models/index.js +0 -2
  598. package/package.json +43 -42
  599. package/rslib-runtime.js +14 -0
  600. package/rslib-runtime.js.map +1 -0
  601. package/services/BuildAppWorkspaceService/BuildAppWorkspaceService.js +62 -69
  602. package/services/BuildAppWorkspaceService/BuildAppWorkspaceService.js.map +1 -1
  603. package/services/BuildAppWorkspaceService/index.js +0 -2
  604. package/services/BuildProjectWorkspaceService/BuildProjectWorkspaceService.js +21 -17
  605. package/services/BuildProjectWorkspaceService/BuildProjectWorkspaceService.js.map +1 -1
  606. package/services/BuildProjectWorkspaceService/index.js +0 -2
  607. package/services/GetAppPackagesService/GetAppPackagesService.js +24 -23
  608. package/services/GetAppPackagesService/GetAppPackagesService.js.map +1 -1
  609. package/services/GetAppPackagesService/index.js +0 -2
  610. package/services/GetAppService/GetAppService.js +24 -27
  611. package/services/GetAppService/GetAppService.js.map +1 -1
  612. package/services/GetAppService/index.js +0 -2
  613. package/services/GetCwdService/GetCwdService.js +15 -12
  614. package/services/GetCwdService/GetCwdService.js.map +1 -1
  615. package/services/GetCwdService/index.js +0 -2
  616. package/services/GetProjectConfigService/EnvContext.js +29 -38
  617. package/services/GetProjectConfigService/EnvContext.js.map +1 -1
  618. package/services/GetProjectConfigService/GetProjectConfigService.js +103 -115
  619. package/services/GetProjectConfigService/GetProjectConfigService.js.map +1 -1
  620. package/services/GetProjectConfigService/ProductionEnvironmentsContext.d.ts +6 -0
  621. package/services/GetProjectConfigService/ProductionEnvironmentsContext.js +16 -0
  622. package/services/GetProjectConfigService/ProductionEnvironmentsContext.js.map +1 -0
  623. package/services/GetProjectConfigService/WcpProjectLicenseContext.js +32 -37
  624. package/services/GetProjectConfigService/WcpProjectLicenseContext.js.map +1 -1
  625. package/services/GetProjectConfigService/index.js +0 -2
  626. package/services/GetProjectConfigService/renderConfig.js +32 -38
  627. package/services/GetProjectConfigService/renderConfig.js.map +1 -1
  628. package/services/GetProjectConfigService/renderConfigWorker.js +42 -43
  629. package/services/GetProjectConfigService/renderConfigWorker.js.map +1 -1
  630. package/services/GetProjectIdService/GetProjectIdService.js +22 -23
  631. package/services/GetProjectIdService/GetProjectIdService.js.map +1 -1
  632. package/services/GetProjectIdService/index.js +0 -2
  633. package/services/GetProjectService/GetProjectService.js +44 -46
  634. package/services/GetProjectService/GetProjectService.js.map +1 -1
  635. package/services/GetProjectService/index.js +0 -2
  636. package/services/GetProjectVersionService/GetProjectVersionService.js +25 -24
  637. package/services/GetProjectVersionService/GetProjectVersionService.js.map +1 -1
  638. package/services/GetProjectVersionService/index.js +0 -2
  639. package/services/GetPulumiService/GetPulumiService.js +36 -41
  640. package/services/GetPulumiService/GetPulumiService.js.map +1 -1
  641. package/services/GetPulumiService/index.js +0 -2
  642. package/services/InitProjectSdkService/InitProjectSdkService.js +36 -52
  643. package/services/InitProjectSdkService/InitProjectSdkService.js.map +1 -1
  644. package/services/InitProjectSdkService/applyEnvVars.js +5 -8
  645. package/services/InitProjectSdkService/applyEnvVars.js.map +1 -1
  646. package/services/InitProjectSdkService/applyWcpEnvVars.js +91 -136
  647. package/services/InitProjectSdkService/applyWcpEnvVars.js.map +1 -1
  648. package/services/InitProjectSdkService/index.js +0 -2
  649. package/services/InitProjectSdkService/registerDecorators.js +10 -7
  650. package/services/InitProjectSdkService/registerDecorators.js.map +1 -1
  651. package/services/InitProjectSdkService/registerHooks.js +30 -7
  652. package/services/InitProjectSdkService/registerHooks.js.map +1 -1
  653. package/services/InitProjectSdkService/registerImplementations.js +10 -11
  654. package/services/InitProjectSdkService/registerImplementations.js.map +1 -1
  655. package/services/InitProjectSdkService/registerPulumiExtensions.js +12 -7
  656. package/services/InitProjectSdkService/registerPulumiExtensions.js.map +1 -1
  657. package/services/InstallExtensionService/InstallExtensionService.js +78 -121
  658. package/services/InstallExtensionService/InstallExtensionService.js.map +1 -1
  659. package/services/InstallExtensionService/downloadFolderFromS3.js +46 -74
  660. package/services/InstallExtensionService/downloadFolderFromS3.js.map +1 -1
  661. package/services/InstallExtensionService/index.js +0 -2
  662. package/services/InstallExtensionService/mergePackageJson.js +15 -25
  663. package/services/InstallExtensionService/mergePackageJson.js.map +1 -1
  664. package/services/InstallExtensionService/types.d.ts +4 -0
  665. package/services/InstallExtensionService/types.js +0 -3
  666. package/services/InstallExtensionService/updateWebinyConfig.js +60 -110
  667. package/services/InstallExtensionService/updateWebinyConfig.js.map +1 -1
  668. package/services/IsRemotePulumiBackendService/IsRemotePulumiBackendService.js +9 -17
  669. package/services/IsRemotePulumiBackendService/IsRemotePulumiBackendService.js.map +1 -1
  670. package/services/IsRemotePulumiBackendService/index.js +0 -2
  671. package/services/ListAppLambdaFunctionsService/ListAppLambdaFunctionsService.js +50 -73
  672. package/services/ListAppLambdaFunctionsService/ListAppLambdaFunctionsService.js.map +1 -1
  673. package/services/ListAppLambdaFunctionsService/index.js +0 -2
  674. package/services/ListDeployedEnvironmentsService/ListDeployedEnvironmentsService.js +21 -23
  675. package/services/ListDeployedEnvironmentsService/ListDeployedEnvironmentsService.js.map +1 -1
  676. package/services/ListDeployedEnvironmentsService/index.js +0 -2
  677. package/services/ListPackagesInAppWorkspaceService/ListPackagesInAppWorkspaceService.js +34 -29
  678. package/services/ListPackagesInAppWorkspaceService/ListPackagesInAppWorkspaceService.js.map +1 -1
  679. package/services/ListPackagesInAppWorkspaceService/index.js +0 -2
  680. package/services/ListPackagesService/ListPackagesService.js +81 -114
  681. package/services/ListPackagesService/ListPackagesService.js.map +1 -1
  682. package/services/ListPackagesService/index.js +0 -2
  683. package/services/LoadEnvVarsService/LoadEnvVarsService.d.ts +3 -2
  684. package/services/LoadEnvVarsService/LoadEnvVarsService.js +37 -30
  685. package/services/LoadEnvVarsService/LoadEnvVarsService.js.map +1 -1
  686. package/services/LoadEnvVarsService/index.js +0 -2
  687. package/services/LocalStorageService/LocalStorageService.js +41 -44
  688. package/services/LocalStorageService/LocalStorageService.js.map +1 -1
  689. package/services/LocalStorageService/index.js +0 -2
  690. package/services/LoggerService/LoggerService.js +76 -84
  691. package/services/LoggerService/LoggerService.js.map +1 -1
  692. package/services/LoggerService/index.js +0 -2
  693. package/services/ProjectInfoService/GetIsCiService.js +9 -8
  694. package/services/ProjectInfoService/GetIsCiService.js.map +1 -1
  695. package/services/ProjectInfoService/GetNpmVersionService.js +9 -8
  696. package/services/ProjectInfoService/GetNpmVersionService.js.map +1 -1
  697. package/services/ProjectInfoService/GetNpxVersionService.js +9 -8
  698. package/services/ProjectInfoService/GetNpxVersionService.js.map +1 -1
  699. package/services/ProjectInfoService/GetPulumiVersionService.js +38 -30
  700. package/services/ProjectInfoService/GetPulumiVersionService.js.map +1 -1
  701. package/services/ProjectInfoService/GetYarnVersionService.js +9 -8
  702. package/services/ProjectInfoService/GetYarnVersionService.js.map +1 -1
  703. package/services/ProjectInfoService/ProjectInfoService.js +56 -51
  704. package/services/ProjectInfoService/ProjectInfoService.js.map +1 -1
  705. package/services/ProjectInfoService/index.js +0 -2
  706. package/services/ProjectSdkParamsService/ProjectSdkParamsService.js +37 -34
  707. package/services/ProjectSdkParamsService/ProjectSdkParamsService.js.map +1 -1
  708. package/services/ProjectSdkParamsService/index.js +0 -2
  709. package/services/PulumiExportService/PulumiExportService.js +42 -35
  710. package/services/PulumiExportService/PulumiExportService.js.map +1 -1
  711. package/services/PulumiExportService/index.js +0 -2
  712. package/services/PulumiGetConfigPassphraseService/PulumiGetConfigPassphraseService.js +9 -8
  713. package/services/PulumiGetConfigPassphraseService/PulumiGetConfigPassphraseService.js.map +1 -1
  714. package/services/PulumiGetConfigPassphraseService/index.js +0 -2
  715. package/services/PulumiGetSecretsProviderService/PulumiGetSecretsProviderService.js +9 -8
  716. package/services/PulumiGetSecretsProviderService/PulumiGetSecretsProviderService.js.map +1 -1
  717. package/services/PulumiGetSecretsProviderService/index.js +0 -2
  718. package/services/PulumiGetStackOutputService/PulumiGetStackOutputService.js +108 -100
  719. package/services/PulumiGetStackOutputService/PulumiGetStackOutputService.js.map +1 -1
  720. package/services/PulumiGetStackOutputService/index.js +0 -2
  721. package/services/PulumiGetStackOutputService/mapStackOutput.js +17 -29
  722. package/services/PulumiGetStackOutputService/mapStackOutput.js.map +1 -1
  723. package/services/PulumiImportService/PulumiImportService.js +48 -45
  724. package/services/PulumiImportService/PulumiImportService.js.map +1 -1
  725. package/services/PulumiImportService/index.js +0 -2
  726. package/services/PulumiLoginService/PulumiLoginService.js +43 -40
  727. package/services/PulumiLoginService/PulumiLoginService.js.map +1 -1
  728. package/services/PulumiLoginService/index.js +0 -2
  729. package/services/PulumiSelectStackService/PulumiSelectStackService.js +91 -86
  730. package/services/PulumiSelectStackService/PulumiSelectStackService.js.map +1 -1
  731. package/services/PulumiSelectStackService/index.js +0 -2
  732. package/services/SetProjectIdService/SetProjectIdService.js +43 -57
  733. package/services/SetProjectIdService/SetProjectIdService.js.map +1 -1
  734. package/services/SetProjectIdService/index.js +0 -2
  735. package/services/StdioService/StdioService.js +15 -14
  736. package/services/StdioService/StdioService.js.map +1 -1
  737. package/services/StdioService/index.js +0 -2
  738. package/services/UiService/UiService.js +55 -58
  739. package/services/UiService/UiService.js.map +1 -1
  740. package/services/UiService/index.js +0 -2
  741. package/services/ValidateProjectConfigService/ValidateProjectConfigService.js +18 -19
  742. package/services/ValidateProjectConfigService/ValidateProjectConfigService.js.map +1 -1
  743. package/services/ValidateProjectConfigService/index.js +0 -2
  744. package/services/WatchedLambdaFunctionsService/WatchedLambdaFunctionsService.js +47 -54
  745. package/services/WatchedLambdaFunctionsService/WatchedLambdaFunctionsService.js.map +1 -1
  746. package/services/WatchedLambdaFunctionsService/index.js +0 -2
  747. package/services/WcpService/CreateUserPat.js +20 -23
  748. package/services/WcpService/CreateUserPat.js.map +1 -1
  749. package/services/WcpService/GenerateUserPat.js +15 -18
  750. package/services/WcpService/GenerateUserPat.js.map +1 -1
  751. package/services/WcpService/GetPatFromLocalStorage.js +9 -10
  752. package/services/WcpService/GetPatFromLocalStorage.js.map +1 -1
  753. package/services/WcpService/GetProjectEnvironment.js +34 -47
  754. package/services/WcpService/GetProjectEnvironment.js.map +1 -1
  755. package/services/WcpService/GetProjectLicense.js +28 -38
  756. package/services/WcpService/GetProjectLicense.js.map +1 -1
  757. package/services/WcpService/GetUser.js +43 -46
  758. package/services/WcpService/GetUser.js.map +1 -1
  759. package/services/WcpService/GetUserPat.js +20 -23
  760. package/services/WcpService/GetUserPat.js.map +1 -1
  761. package/services/WcpService/LogoutUser.js +9 -8
  762. package/services/WcpService/LogoutUser.js.map +1 -1
  763. package/services/WcpService/StorePatToLocalStorage.js +9 -10
  764. package/services/WcpService/StorePatToLocalStorage.js.map +1 -1
  765. package/services/WcpService/UnsetPatFromLocalStorage.js +9 -10
  766. package/services/WcpService/UnsetPatFromLocalStorage.js.map +1 -1
  767. package/services/WcpService/WcpGqlClient.js +6 -5
  768. package/services/WcpService/WcpGqlClient.js.map +1 -1
  769. package/services/WcpService/WcpService.js +74 -75
  770. package/services/WcpService/WcpService.js.map +1 -1
  771. package/services/WcpService/index.js +0 -2
  772. package/services/index.js +0 -2
  773. package/utils/ExtensionSrcResolver.js +52 -106
  774. package/utils/ExtensionSrcResolver.js.map +1 -1
  775. package/utils/constants.js +8 -7
  776. package/utils/constants.js.map +1 -1
  777. package/utils/createPathResolver.js +2 -5
  778. package/utils/createPathResolver.js.map +1 -1
  779. package/utils/env/configuration.js +16 -25
  780. package/utils/env/configuration.js.map +1 -1
  781. package/utils/env/index.js +0 -2
  782. package/utils/env/types.js +0 -3
  783. package/utils/env/withEnv.js +4 -7
  784. package/utils/env/withEnv.js.map +1 -1
  785. package/utils/env/withEnvVariant.js +8 -11
  786. package/utils/env/withEnvVariant.js.map +1 -1
  787. package/utils/env/withProjectName.js +4 -9
  788. package/utils/env/withProjectName.js.map +1 -1
  789. package/utils/env/withPulumiConfigPassphrase.js +4 -8
  790. package/utils/env/withPulumiConfigPassphrase.js.map +1 -1
  791. package/utils/env/withRegion.js +10 -17
  792. package/utils/env/withRegion.js.map +1 -1
  793. package/utils/getRandomColorForString.js +86 -8
  794. package/utils/getRandomColorForString.js.map +1 -1
  795. package/utils/getStackName.js +11 -18
  796. package/utils/getStackName.js.map +1 -1
  797. package/utils/getTemplatesFolderPath.js +6 -8
  798. package/utils/getTemplatesFolderPath.js.map +1 -1
  799. package/utils/index.d.ts +1 -0
  800. package/utils/index.js +1 -2
  801. package/utils/isValidRegionName.js +8 -13
  802. package/utils/isValidRegionName.js.map +1 -1
  803. package/utils/isValidVariantName.js +11 -10
  804. package/utils/isValidVariantName.js.map +1 -1
  805. package/utils/measureDuration.js +7 -8
  806. package/utils/measureDuration.js.map +1 -1
  807. package/utils/projectSdkContext.js +23 -39
  808. package/utils/projectSdkContext.js.map +1 -1
  809. package/utils/regions.js +75 -63
  810. package/utils/regions.js.map +1 -1
  811. package/utils/registerExtension.js +6 -15
  812. package/utils/registerExtension.js.map +1 -1
  813. package/utils/requireConfig.js +8 -9
  814. package/utils/requireConfig.js.map +1 -1
  815. package/utils/toImportSpecifier.d.ts +5 -0
  816. package/utils/toImportSpecifier.js +6 -0
  817. package/utils/toImportSpecifier.js.map +1 -0
  818. package/abstractions/features/hooks/index.js.map +0 -1
  819. package/abstractions/features/index.js.map +0 -1
  820. package/abstractions/features/pulumi/AdminPulumi.d.ts +0 -8
  821. package/abstractions/features/pulumi/AdminPulumi.js +0 -4
  822. package/abstractions/features/pulumi/AdminPulumi.js.map +0 -1
  823. package/abstractions/features/pulumi/ApiPulumi.d.ts +0 -8
  824. package/abstractions/features/pulumi/ApiPulumi.js +0 -4
  825. package/abstractions/features/pulumi/ApiPulumi.js.map +0 -1
  826. package/abstractions/features/pulumi/CorePulumi.d.ts +0 -8
  827. package/abstractions/features/pulumi/CorePulumi.js +0 -4
  828. package/abstractions/features/pulumi/CorePulumi.js.map +0 -1
  829. package/abstractions/features/pulumi/index.d.ts +0 -3
  830. package/abstractions/features/pulumi/index.js +0 -5
  831. package/abstractions/features/pulumi/index.js.map +0 -1
  832. package/abstractions/index.js.map +0 -1
  833. package/abstractions/models/IAppModel.js.map +0 -1
  834. package/abstractions/models/IAppPackageModel.js.map +0 -1
  835. package/abstractions/models/IPathModel.js.map +0 -1
  836. package/abstractions/models/IProjectConfigDto.js.map +0 -1
  837. package/abstractions/models/IProjectConfigModel.js.map +0 -1
  838. package/abstractions/models/IProjectModel.js.map +0 -1
  839. package/abstractions/models/IUrlModel.js.map +0 -1
  840. package/abstractions/models/IWcpEnvironmentDto.js.map +0 -1
  841. package/abstractions/models/IWcpEnvironmentModel.js.map +0 -1
  842. package/abstractions/models/IWcpUserDto.js.map +0 -1
  843. package/abstractions/models/IWcpUserModel.js.map +0 -1
  844. package/abstractions/models/IWcpUserPatDto.js.map +0 -1
  845. package/abstractions/models/IWcpUserPatModel.js.map +0 -1
  846. package/abstractions/models/PackagesBuilder/IPackagesBuilder.js.map +0 -1
  847. package/abstractions/models/PackagesBuilder/IRunnableBuildProcess.js.map +0 -1
  848. package/abstractions/models/PackagesBuilder/IRunnableBuildProcesses.js.map +0 -1
  849. package/abstractions/models/PackagesBuilder/index.js.map +0 -1
  850. package/abstractions/models/index.js.map +0 -1
  851. package/abstractions/services/ProjectInfoService/index.js.map +0 -1
  852. package/abstractions/services/index.js.map +0 -1
  853. package/abstractions/types.js.map +0 -1
  854. package/decorators/index.js.map +0 -1
  855. package/defineExtension/index.js.map +0 -1
  856. package/defineExtension/models/index.js.map +0 -1
  857. package/defineExtension/types.js.map +0 -1
  858. package/exports/infra/admin.js.map +0 -1
  859. package/exports/infra/api.js.map +0 -1
  860. package/exports/infra/core.js.map +0 -1
  861. package/exports/infra/index.d.ts +0 -8
  862. package/exports/infra/index.js +0 -10
  863. package/exports/infra/index.js.map +0 -1
  864. package/extensions/hooks/index.js.map +0 -1
  865. package/extensions/infra/index.js.map +0 -1
  866. package/extensions/pulumi/AdminPulumi.d.ts +0 -8
  867. package/extensions/pulumi/AdminPulumi.js +0 -25
  868. package/extensions/pulumi/AdminPulumi.js.map +0 -1
  869. package/extensions/pulumi/ApiPulumi.d.ts +0 -8
  870. package/extensions/pulumi/ApiPulumi.js +0 -25
  871. package/extensions/pulumi/ApiPulumi.js.map +0 -1
  872. package/extensions/pulumi/CorePulumi.d.ts +0 -8
  873. package/extensions/pulumi/CorePulumi.js +0 -25
  874. package/extensions/pulumi/CorePulumi.js.map +0 -1
  875. package/extensions/pulumi/index.js.map +0 -1
  876. package/features/BuildApp/PackagesBuilder/utils/requireConfig.d.ts +0 -18
  877. package/features/BuildApp/PackagesBuilder/utils/requireConfig.js +0 -15
  878. package/features/BuildApp/PackagesBuilder/utils/requireConfig.js.map +0 -1
  879. package/features/BuildApp/index.js.map +0 -1
  880. package/features/DeployApp/index.js.map +0 -1
  881. package/features/DestroyApp/index.js.map +0 -1
  882. package/features/ExportStack/index.js.map +0 -1
  883. package/features/GetApp/index.js.map +0 -1
  884. package/features/GetAppOutput/index.js.map +0 -1
  885. package/features/GetAppStackOutput/index.js.map +0 -1
  886. package/features/GetFeatureFlags/index.js.map +0 -1
  887. package/features/GetLogger/index.js.map +0 -1
  888. package/features/GetProductionEnvironments/index.js.map +0 -1
  889. package/features/GetProject/index.js.map +0 -1
  890. package/features/GetProjectConfig/index.js.map +0 -1
  891. package/features/GetProjectInfo/index.js.map +0 -1
  892. package/features/GetPulumiResourceNamePrefix/index.js.map +0 -1
  893. package/features/InstallExtension/index.js.map +0 -1
  894. package/features/IsCi/index.js.map +0 -1
  895. package/features/IsTelemetryEnabled/index.js.map +0 -1
  896. package/features/IsWcpEnabled/index.js.map +0 -1
  897. package/features/IsWebinyJsRepo/index.js.map +0 -1
  898. package/features/RefreshApp/index.js.map +0 -1
  899. package/features/RunPulumiCommand/index.js.map +0 -1
  900. package/features/ValidateProjectConfig/index.js.map +0 -1
  901. package/features/Watch/index.js.map +0 -1
  902. package/features/Watch/watchers/utils/requireConfig.d.ts +0 -18
  903. package/features/Watch/watchers/utils/requireConfig.js +0 -15
  904. package/features/Watch/watchers/utils/requireConfig.js.map +0 -1
  905. package/features/hooks/AdminAfterBuild/index.js.map +0 -1
  906. package/features/hooks/AdminAfterDeploy/index.js.map +0 -1
  907. package/features/hooks/AdminBeforeBuild/index.js.map +0 -1
  908. package/features/hooks/AdminBeforeDeploy/index.js.map +0 -1
  909. package/features/hooks/AdminBeforeWatch/index.js.map +0 -1
  910. package/features/hooks/AfterBuild/index.js.map +0 -1
  911. package/features/hooks/AfterDeploy/index.js.map +0 -1
  912. package/features/hooks/ApiAfterBuild/index.js.map +0 -1
  913. package/features/hooks/ApiAfterDeploy/index.js.map +0 -1
  914. package/features/hooks/ApiBeforeBuild/index.js.map +0 -1
  915. package/features/hooks/ApiBeforeDeploy/index.js.map +0 -1
  916. package/features/hooks/ApiBeforeWatch/index.js.map +0 -1
  917. package/features/hooks/BeforeBuild/index.js.map +0 -1
  918. package/features/hooks/BeforeDeploy/index.js.map +0 -1
  919. package/features/hooks/BeforeWatch/index.js.map +0 -1
  920. package/features/hooks/CoreAfterBuild/index.js.map +0 -1
  921. package/features/hooks/CoreAfterDeploy/index.js.map +0 -1
  922. package/features/hooks/CoreBeforeBuild/index.js.map +0 -1
  923. package/features/hooks/CoreBeforeDeploy/index.js.map +0 -1
  924. package/features/hooks/CoreBeforeWatch/index.js.map +0 -1
  925. package/features/hooks/index.js.map +0 -1
  926. package/features/index.js.map +0 -1
  927. package/features/pulumi/AdminPulumi/AdminPulumi.d.ts +0 -7
  928. package/features/pulumi/AdminPulumi/AdminPulumi.js +0 -21
  929. package/features/pulumi/AdminPulumi/AdminPulumi.js.map +0 -1
  930. package/features/pulumi/AdminPulumi/index.d.ts +0 -1
  931. package/features/pulumi/AdminPulumi/index.js +0 -3
  932. package/features/pulumi/AdminPulumi/index.js.map +0 -1
  933. package/features/pulumi/ApiPulumi/ApiPulumi.d.ts +0 -7
  934. package/features/pulumi/ApiPulumi/ApiPulumi.js +0 -21
  935. package/features/pulumi/ApiPulumi/ApiPulumi.js.map +0 -1
  936. package/features/pulumi/ApiPulumi/index.d.ts +0 -1
  937. package/features/pulumi/ApiPulumi/index.js +0 -3
  938. package/features/pulumi/ApiPulumi/index.js.map +0 -1
  939. package/features/pulumi/CorePulumi/CorePulumi.d.ts +0 -7
  940. package/features/pulumi/CorePulumi/CorePulumi.js +0 -21
  941. package/features/pulumi/CorePulumi/CorePulumi.js.map +0 -1
  942. package/features/pulumi/CorePulumi/index.d.ts +0 -1
  943. package/features/pulumi/CorePulumi/index.js +0 -3
  944. package/features/pulumi/CorePulumi/index.js.map +0 -1
  945. package/features/pulumi/index.d.ts +0 -3
  946. package/features/pulumi/index.js +0 -5
  947. package/features/pulumi/index.js.map +0 -1
  948. package/models/index.js.map +0 -1
  949. package/services/BuildAppWorkspaceService/index.js.map +0 -1
  950. package/services/BuildProjectWorkspaceService/index.js.map +0 -1
  951. package/services/GetAppPackagesService/index.js.map +0 -1
  952. package/services/GetAppService/index.js.map +0 -1
  953. package/services/GetCwdService/index.js.map +0 -1
  954. package/services/GetProjectConfigService/index.js.map +0 -1
  955. package/services/GetProjectIdService/index.js.map +0 -1
  956. package/services/GetProjectService/index.js.map +0 -1
  957. package/services/GetProjectVersionService/index.js.map +0 -1
  958. package/services/GetPulumiService/index.js.map +0 -1
  959. package/services/InitProjectSdkService/index.js.map +0 -1
  960. package/services/InstallExtensionService/index.js.map +0 -1
  961. package/services/InstallExtensionService/types.js.map +0 -1
  962. package/services/IsRemotePulumiBackendService/index.js.map +0 -1
  963. package/services/ListAppLambdaFunctionsService/index.js.map +0 -1
  964. package/services/ListDeployedEnvironmentsService/index.js.map +0 -1
  965. package/services/ListPackagesInAppWorkspaceService/index.js.map +0 -1
  966. package/services/ListPackagesService/index.js.map +0 -1
  967. package/services/LoadEnvVarsService/index.js.map +0 -1
  968. package/services/LocalStorageService/index.js.map +0 -1
  969. package/services/LoggerService/index.js.map +0 -1
  970. package/services/ProjectInfoService/index.js.map +0 -1
  971. package/services/ProjectSdkParamsService/index.js.map +0 -1
  972. package/services/PulumiExportService/index.js.map +0 -1
  973. package/services/PulumiGetConfigPassphraseService/index.js.map +0 -1
  974. package/services/PulumiGetSecretsProviderService/index.js.map +0 -1
  975. package/services/PulumiGetStackOutputService/index.js.map +0 -1
  976. package/services/PulumiImportService/index.js.map +0 -1
  977. package/services/PulumiLoginService/index.js.map +0 -1
  978. package/services/PulumiSelectStackService/index.js.map +0 -1
  979. package/services/SetProjectIdService/index.js.map +0 -1
  980. package/services/StdioService/index.js.map +0 -1
  981. package/services/UiService/index.js.map +0 -1
  982. package/services/ValidateProjectConfigService/index.js.map +0 -1
  983. package/services/WatchedLambdaFunctionsService/index.js.map +0 -1
  984. package/services/WcpService/index.js.map +0 -1
  985. package/services/index.js.map +0 -1
  986. package/utils/env/index.js.map +0 -1
  987. package/utils/env/types.js.map +0 -1
  988. package/utils/index.js.map +0 -1
@@ -1,27 +1,29 @@
1
1
  import { ProjectError } from "../../ProjectError.js";
2
- export class ExtensionInstanceModel {
3
- constructor(definition, params, context) {
4
- this.definition = definition;
5
- this.params = params;
6
- this.context = context;
7
- }
8
- async build() {
9
- return this.definition.build?.(this.params, this.context);
10
- }
11
- async validate() {
12
- return this.definition.validate?.(this.params);
13
- }
14
- async validateParams() {
15
- if (!this.definition.paramsSchema) {
16
- return;
2
+ class ExtensionInstanceModel {
3
+ constructor(definition, params, context){
4
+ this.definition = definition;
5
+ this.params = params;
6
+ this.context = context;
17
7
  }
18
- const paramsSchema = typeof this.definition.paramsSchema === "function" ? this.definition.paramsSchema(this.context) : this.definition.paramsSchema;
19
- const validationResult = await paramsSchema.safeParseAsync(this.params);
20
- if (!validationResult.success) {
21
- const errorMessages = validationResult.error.errors.map(err => err.message).join("; ");
22
- throw ProjectError.from(`Validation failed for extension of type %s: ${errorMessages}`, this.definition.type);
8
+ async build() {
9
+ return this.definition.build?.(this.params, this.context);
10
+ }
11
+ async validate() {
12
+ return this.definition.validate?.(this.params);
13
+ }
14
+ async validateParams() {
15
+ if (!this.definition.paramsSchema) return;
16
+ const paramsSchema = "function" == typeof this.definition.paramsSchema ? this.definition.paramsSchema(this.context) : this.definition.paramsSchema;
17
+ const validationResult = await paramsSchema.safeParseAsync(this.params);
18
+ if (!validationResult.success) {
19
+ const errorMessages = validationResult.error.issues.map((err)=>{
20
+ const field = err.path.length > 0 ? `[${err.path.join(".")}] ` : "";
21
+ return `${field}${err.message}`;
22
+ }).join("; ");
23
+ throw ProjectError.from(`Validation failed for extension of type %s: ${errorMessages}`, this.definition.type);
24
+ }
23
25
  }
24
- }
25
26
  }
27
+ export { ExtensionInstanceModel };
26
28
 
27
29
  //# sourceMappingURL=ExtensionInstanceModel.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ProjectError","ExtensionInstanceModel","constructor","definition","params","context","build","validate","validateParams","paramsSchema","validationResult","safeParseAsync","success","errorMessages","error","errors","map","err","message","join","from","type"],"sources":["ExtensionInstanceModel.ts"],"sourcesContent":["import { type ExtensionDefinitionModel } from \"./ExtensionDefinitionModel.js\";\nimport { type z } from \"zod\";\nimport { type ProjectModel } from \"~/models/index.js\";\nimport { ProjectError } from \"~/ProjectError.js\";\n\nexport interface ExtensionInstanceModelContext {\n [key: string]: any;\n\n project: ProjectModel;\n}\n\nexport class ExtensionInstanceModel<TParamsSchema extends z.ZodTypeAny> {\n constructor(\n public definition: ExtensionDefinitionModel<TParamsSchema>,\n public params: z.infer<TParamsSchema>,\n public context: ExtensionInstanceModelContext\n ) {}\n\n async build() {\n return this.definition.build?.(this.params, this.context);\n }\n\n async validate() {\n return this.definition.validate?.(this.params);\n }\n\n async validateParams() {\n if (!this.definition.paramsSchema) {\n return;\n }\n\n const paramsSchema =\n typeof this.definition.paramsSchema === \"function\"\n ? this.definition.paramsSchema(this.context)\n : this.definition.paramsSchema;\n\n const validationResult = await paramsSchema.safeParseAsync(this.params);\n if (!validationResult.success) {\n const errorMessages = validationResult.error.errors.map(err => err.message).join(\"; \");\n\n throw ProjectError.from(\n `Validation failed for extension of type %s: ${errorMessages}`,\n this.definition.type\n );\n }\n }\n}\n"],"mappings":"AAGA,SAASA,YAAY;AAQrB,OAAO,MAAMC,sBAAsB,CAAqC;EACpEC,WAAWA,CACAC,UAAmD,EACnDC,MAA8B,EAC9BC,OAAsC,EAC/C;IAAA,KAHSF,UAAmD,GAAnDA,UAAmD;IAAA,KACnDC,MAA8B,GAA9BA,MAA8B;IAAA,KAC9BC,OAAsC,GAAtCA,OAAsC;EAC9C;EAEH,MAAMC,KAAKA,CAAA,EAAG;IACV,OAAO,IAAI,CAACH,UAAU,CAACG,KAAK,GAAG,IAAI,CAACF,MAAM,EAAE,IAAI,CAACC,OAAO,CAAC;EAC7D;EAEA,MAAME,QAAQA,CAAA,EAAG;IACb,OAAO,IAAI,CAACJ,UAAU,CAACI,QAAQ,GAAG,IAAI,CAACH,MAAM,CAAC;EAClD;EAEA,MAAMI,cAAcA,CAAA,EAAG;IACnB,IAAI,CAAC,IAAI,CAACL,UAAU,CAACM,YAAY,EAAE;MAC/B;IACJ;IAEA,MAAMA,YAAY,GACd,OAAO,IAAI,CAACN,UAAU,CAACM,YAAY,KAAK,UAAU,GAC5C,IAAI,CAACN,UAAU,CAACM,YAAY,CAAC,IAAI,CAACJ,OAAO,CAAC,GAC1C,IAAI,CAACF,UAAU,CAACM,YAAY;IAEtC,MAAMC,gBAAgB,GAAG,MAAMD,YAAY,CAACE,cAAc,CAAC,IAAI,CAACP,MAAM,CAAC;IACvE,IAAI,CAACM,gBAAgB,CAACE,OAAO,EAAE;MAC3B,MAAMC,aAAa,GAAGH,gBAAgB,CAACI,KAAK,CAACC,MAAM,CAACC,GAAG,CAACC,GAAG,IAAIA,GAAG,CAACC,OAAO,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC;MAEtF,MAAMnB,YAAY,CAACoB,IAAI,CACnB,+CAA+CP,aAAa,EAAE,EAC9D,IAAI,CAACV,UAAU,CAACkB,IACpB,CAAC;IACL;EACJ;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"defineExtension/models/ExtensionInstanceModel.js","sources":["../../../src/defineExtension/models/ExtensionInstanceModel.ts"],"sourcesContent":["import { type ExtensionDefinitionModel } from \"./ExtensionDefinitionModel.js\";\nimport { type z } from \"zod\";\nimport { type ProjectModel } from \"~/models/index.js\";\nimport { ProjectError } from \"~/ProjectError.js\";\n\nexport interface ExtensionInstanceModelContext {\n [key: string]: any;\n\n project: ProjectModel;\n}\n\nexport class ExtensionInstanceModel<TParamsSchema extends z.ZodTypeAny> {\n constructor(\n public definition: ExtensionDefinitionModel<TParamsSchema>,\n public params: z.infer<TParamsSchema>,\n public context: ExtensionInstanceModelContext\n ) {}\n\n async build() {\n return this.definition.build?.(this.params, this.context);\n }\n\n async validate() {\n return this.definition.validate?.(this.params);\n }\n\n async validateParams() {\n if (!this.definition.paramsSchema) {\n return;\n }\n\n const paramsSchema =\n typeof this.definition.paramsSchema === \"function\"\n ? this.definition.paramsSchema(this.context)\n : this.definition.paramsSchema;\n\n const validationResult = await paramsSchema.safeParseAsync(this.params);\n if (!validationResult.success) {\n const errorMessages = validationResult.error.issues\n .map((err: { message: string; path: PropertyKey[] }) => {\n const field = err.path.length > 0 ? `[${err.path.join(\".\")}] ` : \"\";\n return `${field}${err.message}`;\n })\n .join(\"; \");\n\n throw ProjectError.from(\n `Validation failed for extension of type %s: ${errorMessages}`,\n this.definition.type\n );\n }\n }\n}\n"],"names":["ExtensionInstanceModel","definition","params","context","paramsSchema","validationResult","errorMessages","err","field","ProjectError"],"mappings":";AAWO,MAAMA;IACT,YACWC,UAAmD,EACnDC,MAA8B,EAC9BC,OAAsC,CAC/C;aAHSF,UAAU,GAAVA;aACAC,MAAM,GAANA;aACAC,OAAO,GAAPA;IACR;IAEH,MAAM,QAAQ;QACV,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO;IAC5D;IAEA,MAAM,WAAW;QACb,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM;IACjD;IAEA,MAAM,iBAAiB;QACnB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,EAC7B;QAGJ,MAAMC,eACF,AAAwC,cAAxC,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,GAC7B,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,IACzC,IAAI,CAAC,UAAU,CAAC,YAAY;QAEtC,MAAMC,mBAAmB,MAAMD,aAAa,cAAc,CAAC,IAAI,CAAC,MAAM;QACtE,IAAI,CAACC,iBAAiB,OAAO,EAAE;YAC3B,MAAMC,gBAAgBD,iBAAiB,KAAK,CAAC,MAAM,CAC9C,GAAG,CAAC,CAACE;gBACF,MAAMC,QAAQD,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,EAAEA,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG;gBACjE,OAAO,GAAGC,QAAQD,IAAI,OAAO,EAAE;YACnC,GACC,IAAI,CAAC;YAEV,MAAME,aAAa,IAAI,CACnB,CAAC,4CAA4C,EAAEH,eAAe,EAC9D,IAAI,CAAC,UAAU,CAAC,IAAI;QAE5B;IACJ;AACJ"}
@@ -1,4 +1,2 @@
1
1
  export * from "./ExtensionDefinitionModel.js";
2
2
  export * from "./ExtensionInstanceModel.js";
3
-
4
- //# sourceMappingURL=index.js.map
@@ -1,3 +0,0 @@
1
- export {};
2
-
3
- //# sourceMappingURL=types.js.map
@@ -12,5 +12,5 @@ type ZodSrcPathOptions = {
12
12
  project: IProjectModel;
13
13
  abstraction?: Abstraction<any>;
14
14
  };
15
- export declare const zodSrcPath: (options: ZodSrcPathOptions) => z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
15
+ export declare const zodSrcPath: (options: ZodSrcPathOptions) => z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
16
16
  export {};
@@ -1,61 +1,46 @@
1
1
  import { Metadata } from "@webiny/di";
2
2
  import { z } from "zod";
3
+ import fs from "fs";
3
4
  import path from "path";
4
5
  import { ProjectError } from "../../ProjectError.js";
5
6
  import { ExtensionSrcResolver } from "../../utils/index.js";
6
-
7
- /**
8
- * TypeScript type for source paths.
9
- * - `/extensions/${string}` - resolves from project root
10
- * - `@/${string}` or other tsconfig aliases - resolves using tsconfig.json paths
11
- * - string (absolute path) - treated as absolute path
12
- */
13
-
14
- export const zodSrcPath = options => {
15
- const {
16
- project,
17
- abstraction
18
- } = options;
19
- const getTokenName = token => {
20
- const str = token.toString();
21
- return str.replace(/^Symbol\(/, "").replace(/\)$/, "");
22
- };
23
- const tokenName = abstraction ? getTokenName(abstraction.token) : undefined;
24
- const description = abstraction ? `Path to a file exporting ${tokenName}. Use "/extensions/..." to resolve from project root, "@/..." for tsconfig path aliases, or provide an absolute path.` : `Path: "/extensions/..." resolves from project root, "@/..." resolves using tsconfig path aliases, or provide an absolute path.`;
25
- return z.string().describe(description).transform(val => val).superRefine(async (src, ctx) => {
26
- // Check if file exists using ExtensionSrcResolver.
27
- if (!ExtensionSrcResolver.existsSync(src, project)) {
28
- ctx.addIssue({
29
- code: z.ZodIssueCode.custom,
30
- message: ProjectError.formatMessage(`File not found: %s. Please check the path and try again.`, src)
31
- });
32
- return;
33
- }
34
-
35
- // If abstraction validation is required
36
- if (abstraction) {
37
- const absoluteSrcPath = ExtensionSrcResolver.resolvePath(src, project);
38
- const exportName = path.basename(absoluteSrcPath).replace(path.extname(absoluteSrcPath), "");
39
- const exportedImplementation = await ExtensionSrcResolver.importFromPath(src, project);
40
- if (!exportedImplementation) {
41
- ctx.addIssue({
42
- code: z.ZodIssueCode.custom,
43
- message: ProjectError.formatMessage(`The file %s must export a class named %s or as a default export.`, src, exportName)
7
+ const zodSrcPath = (options)=>{
8
+ const { project, abstraction } = options;
9
+ const getTokenName = (token)=>{
10
+ const str = token.toString();
11
+ return str.replace(/^Symbol\(/, "").replace(/\)$/, "");
12
+ };
13
+ const tokenName = abstraction ? getTokenName(abstraction.token) : void 0;
14
+ const description = abstraction ? `Path to a file exporting ${tokenName}. Use "/extensions/..." to resolve from project root, "@/..." for tsconfig path aliases, or provide an absolute path.` : 'Path: "/extensions/..." resolves from project root, "@/..." resolves using tsconfig path aliases, or provide an absolute path.';
15
+ return z.string().describe(description).transform((val)=>val).superRefine(async (src, ctx)=>{
16
+ if (!ExtensionSrcResolver.existsSync(src, project)) return void ctx.addIssue({
17
+ code: z.ZodIssueCode.custom,
18
+ message: ProjectError.formatMessage("File not found: %s. Please check the path and try again.", src)
44
19
  });
45
- return;
46
- }
47
- const metadata = new Metadata(exportedImplementation);
48
- const metadataName = metadata.getAbstraction().toString();
49
- const defName = abstraction.toString();
50
- const isCorrectAbstraction = metadataName === defName;
51
- if (!isCorrectAbstraction) {
52
- ctx.addIssue({
53
- code: z.ZodIssueCode.custom,
54
- message: ProjectError.formatMessage(`The class %s in %s must implement the %s interface.`, exportName, src, tokenName || "")
20
+ const absolutePath = ExtensionSrcResolver.resolvePath(src, project);
21
+ if (fs.statSync(absolutePath).isDirectory()) return void ctx.addIssue({
22
+ code: z.ZodIssueCode.custom,
23
+ message: ProjectError.formatMessage("Expected a file but got a directory: %s. Please provide a path to a specific file.", src)
55
24
  });
56
- }
57
- }
58
- });
25
+ if (abstraction) {
26
+ const absoluteSrcPath = ExtensionSrcResolver.resolvePath(src, project);
27
+ const exportName = path.basename(absoluteSrcPath).replace(path.extname(absoluteSrcPath), "");
28
+ const exportedImplementation = await ExtensionSrcResolver.importFromPath(src, project);
29
+ if (!exportedImplementation) return void ctx.addIssue({
30
+ code: z.ZodIssueCode.custom,
31
+ message: ProjectError.formatMessage("The file %s must export a class named %s or as a default export.", src, exportName)
32
+ });
33
+ const metadata = new Metadata(exportedImplementation);
34
+ const metadataName = metadata.getAbstraction().toString();
35
+ const defName = abstraction.toString();
36
+ const isCorrectAbstraction = metadataName === defName;
37
+ if (!isCorrectAbstraction) ctx.addIssue({
38
+ code: z.ZodIssueCode.custom,
39
+ message: ProjectError.formatMessage("The class %s in %s must implement the %s interface.", exportName, src, tokenName || "")
40
+ });
41
+ }
42
+ });
59
43
  };
44
+ export { zodSrcPath };
60
45
 
61
46
  //# sourceMappingURL=zodSrcPath.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Metadata","z","path","ProjectError","ExtensionSrcResolver","zodSrcPath","options","project","abstraction","getTokenName","token","str","toString","replace","tokenName","undefined","description","string","describe","transform","val","superRefine","src","ctx","existsSync","addIssue","code","ZodIssueCode","custom","message","formatMessage","absoluteSrcPath","resolvePath","exportName","basename","extname","exportedImplementation","importFromPath","metadata","metadataName","getAbstraction","defName","isCorrectAbstraction"],"sources":["zodSrcPath.ts"],"sourcesContent":["import { type Abstraction, Metadata } from \"@webiny/di\";\nimport { z } from \"zod\";\nimport path from \"path\";\nimport { type IProjectModel } from \"~/abstractions/models/index.js\";\nimport { ProjectError } from \"~/ProjectError.js\";\nimport { ExtensionSrcResolver } from \"~/utils/index.js\";\n\n/**\n * TypeScript type for source paths.\n * - `/extensions/${string}` - resolves from project root\n * - `@/${string}` or other tsconfig aliases - resolves using tsconfig.json paths\n * - string (absolute path) - treated as absolute path\n */\nexport type SrcPath = `/extensions/${string}` | string;\n\ntype ZodSrcPathOptions = {\n project: IProjectModel;\n abstraction?: Abstraction<any>;\n};\n\nexport const zodSrcPath = (options: ZodSrcPathOptions) => {\n const { project, abstraction } = options;\n\n const getTokenName = (token: symbol) => {\n const str = token.toString();\n return str.replace(/^Symbol\\(/, \"\").replace(/\\)$/, \"\");\n };\n\n const tokenName = abstraction ? getTokenName(abstraction.token) : undefined;\n const description = abstraction\n ? `Path to a file exporting ${tokenName}. Use \"/extensions/...\" to resolve from project root, \"@/...\" for tsconfig path aliases, or provide an absolute path.`\n : `Path: \"/extensions/...\" resolves from project root, \"@/...\" resolves using tsconfig path aliases, or provide an absolute path.`;\n\n return z\n .string()\n .describe(description)\n .transform((val): SrcPath => val as SrcPath)\n .superRefine(async (src, ctx) => {\n // Check if file exists using ExtensionSrcResolver.\n if (!ExtensionSrcResolver.existsSync(src, project)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: ProjectError.formatMessage(\n `File not found: %s. Please check the path and try again.`,\n src\n )\n });\n return;\n }\n\n // If abstraction validation is required\n if (abstraction) {\n const absoluteSrcPath = ExtensionSrcResolver.resolvePath(src, project);\n const exportName = path\n .basename(absoluteSrcPath)\n .replace(path.extname(absoluteSrcPath), \"\");\n\n const exportedImplementation = await ExtensionSrcResolver.importFromPath(\n src,\n project\n );\n\n if (!exportedImplementation) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: ProjectError.formatMessage(\n `The file %s must export a class named %s or as a default export.`,\n src,\n exportName\n )\n });\n return;\n }\n\n const metadata = new Metadata(exportedImplementation);\n const metadataName = metadata.getAbstraction().toString();\n const defName = abstraction.toString();\n const isCorrectAbstraction = metadataName === defName;\n\n if (!isCorrectAbstraction) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: ProjectError.formatMessage(\n `The class %s in %s must implement the %s interface.`,\n exportName,\n src,\n tokenName || \"\"\n )\n });\n }\n }\n });\n};\n"],"mappings":"AAAA,SAA2BA,QAAQ,QAAQ,YAAY;AACvD,SAASC,CAAC,QAAQ,KAAK;AACvB,OAAOC,IAAI,MAAM,MAAM;AAEvB,SAASC,YAAY;AACrB,SAASC,oBAAoB;;AAE7B;AACA;AACA;AACA;AACA;AACA;;AAQA,OAAO,MAAMC,UAAU,GAAIC,OAA0B,IAAK;EACtD,MAAM;IAAEC,OAAO;IAAEC;EAAY,CAAC,GAAGF,OAAO;EAExC,MAAMG,YAAY,GAAIC,KAAa,IAAK;IACpC,MAAMC,GAAG,GAAGD,KAAK,CAACE,QAAQ,CAAC,CAAC;IAC5B,OAAOD,GAAG,CAACE,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAACA,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;EAC1D,CAAC;EAED,MAAMC,SAAS,GAAGN,WAAW,GAAGC,YAAY,CAACD,WAAW,CAACE,KAAK,CAAC,GAAGK,SAAS;EAC3E,MAAMC,WAAW,GAAGR,WAAW,GACzB,4BAA4BM,SAAS,uHAAuH,GAC5J,gIAAgI;EAEtI,OAAOb,CAAC,CACHgB,MAAM,CAAC,CAAC,CACRC,QAAQ,CAACF,WAAW,CAAC,CACrBG,SAAS,CAAEC,GAAG,IAAcA,GAAc,CAAC,CAC3CC,WAAW,CAAC,OAAOC,GAAG,EAAEC,GAAG,KAAK;IAC7B;IACA,IAAI,CAACnB,oBAAoB,CAACoB,UAAU,CAACF,GAAG,EAAEf,OAAO,CAAC,EAAE;MAChDgB,GAAG,CAACE,QAAQ,CAAC;QACTC,IAAI,EAAEzB,CAAC,CAAC0B,YAAY,CAACC,MAAM;QAC3BC,OAAO,EAAE1B,YAAY,CAAC2B,aAAa,CAC/B,0DAA0D,EAC1DR,GACJ;MACJ,CAAC,CAAC;MACF;IACJ;;IAEA;IACA,IAAId,WAAW,EAAE;MACb,MAAMuB,eAAe,GAAG3B,oBAAoB,CAAC4B,WAAW,CAACV,GAAG,EAAEf,OAAO,CAAC;MACtE,MAAM0B,UAAU,GAAG/B,IAAI,CAClBgC,QAAQ,CAACH,eAAe,CAAC,CACzBlB,OAAO,CAACX,IAAI,CAACiC,OAAO,CAACJ,eAAe,CAAC,EAAE,EAAE,CAAC;MAE/C,MAAMK,sBAAsB,GAAG,MAAMhC,oBAAoB,CAACiC,cAAc,CACpEf,GAAG,EACHf,OACJ,CAAC;MAED,IAAI,CAAC6B,sBAAsB,EAAE;QACzBb,GAAG,CAACE,QAAQ,CAAC;UACTC,IAAI,EAAEzB,CAAC,CAAC0B,YAAY,CAACC,MAAM;UAC3BC,OAAO,EAAE1B,YAAY,CAAC2B,aAAa,CAC/B,kEAAkE,EAClER,GAAG,EACHW,UACJ;QACJ,CAAC,CAAC;QACF;MACJ;MAEA,MAAMK,QAAQ,GAAG,IAAItC,QAAQ,CAACoC,sBAAsB,CAAC;MACrD,MAAMG,YAAY,GAAGD,QAAQ,CAACE,cAAc,CAAC,CAAC,CAAC5B,QAAQ,CAAC,CAAC;MACzD,MAAM6B,OAAO,GAAGjC,WAAW,CAACI,QAAQ,CAAC,CAAC;MACtC,MAAM8B,oBAAoB,GAAGH,YAAY,KAAKE,OAAO;MAErD,IAAI,CAACC,oBAAoB,EAAE;QACvBnB,GAAG,CAACE,QAAQ,CAAC;UACTC,IAAI,EAAEzB,CAAC,CAAC0B,YAAY,CAACC,MAAM;UAC3BC,OAAO,EAAE1B,YAAY,CAAC2B,aAAa,CAC/B,qDAAqD,EACrDG,UAAU,EACVX,GAAG,EACHR,SAAS,IAAI,EACjB;QACJ,CAAC,CAAC;MACN;IACJ;EACJ,CAAC,CAAC;AACV,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"defineExtension/zodTypes/zodSrcPath.js","sources":["../../../src/defineExtension/zodTypes/zodSrcPath.ts"],"sourcesContent":["import { type Abstraction, Metadata } from \"@webiny/di\";\nimport { z } from \"zod\";\nimport fs from \"fs\";\nimport path from \"path\";\nimport { type IProjectModel } from \"~/abstractions/models/index.js\";\nimport { ProjectError } from \"~/ProjectError.js\";\nimport { ExtensionSrcResolver } from \"~/utils/index.js\";\n\n/**\n * TypeScript type for source paths.\n * - `/extensions/${string}` - resolves from project root\n * - `@/${string}` or other tsconfig aliases - resolves using tsconfig.json paths\n * - string (absolute path) - treated as absolute path\n */\nexport type SrcPath = `/extensions/${string}` | string;\n\ntype ZodSrcPathOptions = {\n project: IProjectModel;\n abstraction?: Abstraction<any>;\n};\n\nexport const zodSrcPath = (options: ZodSrcPathOptions) => {\n const { project, abstraction } = options;\n\n const getTokenName = (token: symbol) => {\n const str = token.toString();\n return str.replace(/^Symbol\\(/, \"\").replace(/\\)$/, \"\");\n };\n\n const tokenName = abstraction ? getTokenName(abstraction.token) : undefined;\n const description = abstraction\n ? `Path to a file exporting ${tokenName}. Use \"/extensions/...\" to resolve from project root, \"@/...\" for tsconfig path aliases, or provide an absolute path.`\n : `Path: \"/extensions/...\" resolves from project root, \"@/...\" resolves using tsconfig path aliases, or provide an absolute path.`;\n\n return z\n .string()\n .describe(description)\n .transform((val): SrcPath => val as SrcPath)\n .superRefine(async (src, ctx) => {\n // Check if file exists using ExtensionSrcResolver.\n if (!ExtensionSrcResolver.existsSync(src, project)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: ProjectError.formatMessage(\n `File not found: %s. Please check the path and try again.`,\n src\n )\n });\n return;\n }\n\n // Ensure the resolved path points to a file, not a directory.\n const absolutePath = ExtensionSrcResolver.resolvePath(src, project);\n if (fs.statSync(absolutePath).isDirectory()) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: ProjectError.formatMessage(\n `Expected a file but got a directory: %s. Please provide a path to a specific file.`,\n src\n )\n });\n return;\n }\n\n // If abstraction validation is required\n if (abstraction) {\n const absoluteSrcPath = ExtensionSrcResolver.resolvePath(src, project);\n const exportName = path\n .basename(absoluteSrcPath)\n .replace(path.extname(absoluteSrcPath), \"\");\n\n const exportedImplementation = await ExtensionSrcResolver.importFromPath(\n src,\n project\n );\n\n if (!exportedImplementation) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: ProjectError.formatMessage(\n `The file %s must export a class named %s or as a default export.`,\n src,\n exportName\n )\n });\n return;\n }\n\n const metadata = new Metadata(exportedImplementation);\n const metadataName = metadata.getAbstraction().toString();\n const defName = abstraction.toString();\n const isCorrectAbstraction = metadataName === defName;\n\n if (!isCorrectAbstraction) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: ProjectError.formatMessage(\n `The class %s in %s must implement the %s interface.`,\n exportName,\n src,\n tokenName || \"\"\n )\n });\n }\n }\n });\n};\n"],"names":["zodSrcPath","options","project","abstraction","getTokenName","token","str","tokenName","undefined","description","z","val","src","ctx","ExtensionSrcResolver","ProjectError","absolutePath","fs","absoluteSrcPath","exportName","path","exportedImplementation","metadata","Metadata","metadataName","defName","isCorrectAbstraction"],"mappings":";;;;;;AAqBO,MAAMA,aAAa,CAACC;IACvB,MAAM,EAAEC,OAAO,EAAEC,WAAW,EAAE,GAAGF;IAEjC,MAAMG,eAAe,CAACC;QAClB,MAAMC,MAAMD,MAAM,QAAQ;QAC1B,OAAOC,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,OAAO;IACvD;IAEA,MAAMC,YAAYJ,cAAcC,aAAaD,YAAY,KAAK,IAAIK;IAClE,MAAMC,cAAcN,cACd,CAAC,yBAAyB,EAAEI,UAAU,qHAAqH,CAAC,GAC5J;IAEN,OAAOG,EAAAA,MACI,GACN,QAAQ,CAACD,aACT,SAAS,CAAC,CAACE,MAAiBA,KAC5B,WAAW,CAAC,OAAOC,KAAKC;QAErB,IAAI,CAACC,qBAAqB,UAAU,CAACF,KAAKV,UAAU,YAChDW,IAAI,QAAQ,CAAC;YACT,MAAMH,EAAE,YAAY,CAAC,MAAM;YAC3B,SAASK,aAAa,aAAa,CAC/B,4DACAH;QAER;QAKJ,MAAMI,eAAeF,qBAAqB,WAAW,CAACF,KAAKV;QAC3D,IAAIe,GAAG,QAAQ,CAACD,cAAc,WAAW,IAAI,YACzCH,IAAI,QAAQ,CAAC;YACT,MAAMH,EAAE,YAAY,CAAC,MAAM;YAC3B,SAASK,aAAa,aAAa,CAC/B,sFACAH;QAER;QAKJ,IAAIT,aAAa;YACb,MAAMe,kBAAkBJ,qBAAqB,WAAW,CAACF,KAAKV;YAC9D,MAAMiB,aAAaC,KAAAA,QACN,CAACF,iBACT,OAAO,CAACE,KAAK,OAAO,CAACF,kBAAkB;YAE5C,MAAMG,yBAAyB,MAAMP,qBAAqB,cAAc,CACpEF,KACAV;YAGJ,IAAI,CAACmB,wBAAwB,YACzBR,IAAI,QAAQ,CAAC;gBACT,MAAMH,EAAE,YAAY,CAAC,MAAM;gBAC3B,SAASK,aAAa,aAAa,CAC/B,oEACAH,KACAO;YAER;YAIJ,MAAMG,WAAW,IAAIC,SAASF;YAC9B,MAAMG,eAAeF,SAAS,cAAc,GAAG,QAAQ;YACvD,MAAMG,UAAUtB,YAAY,QAAQ;YACpC,MAAMuB,uBAAuBF,iBAAiBC;YAE9C,IAAI,CAACC,sBACDb,IAAI,QAAQ,CAAC;gBACT,MAAMH,EAAE,YAAY,CAAC,MAAM;gBAC3B,SAASK,aAAa,aAAa,CAC/B,uDACAI,YACAP,KACAL,aAAa;YAErB;QAER;IACJ;AACR"}
@@ -3,4 +3,3 @@ export { AdminBeforeBuild as AdminBeforeBuildHook } from "../../abstractions/fea
3
3
  export { AdminAfterDeploy as AdminAfterDeployHook } from "../../abstractions/features/hooks/AdminAfterDeploy.js";
4
4
  export { AdminBeforeDeploy as AdminBeforeDeployHook } from "../../abstractions/features/hooks/AdminBeforeDeploy.js";
5
5
  export { AdminBeforeWatch as AdminBeforeWatchHook } from "../../abstractions/features/hooks/AdminBeforeWatch.js";
6
- export { AdminPulumi } from "../../abstractions/features/pulumi/AdminPulumi.js";
@@ -3,6 +3,3 @@ export { AdminBeforeBuild as AdminBeforeBuildHook } from "../../abstractions/fea
3
3
  export { AdminAfterDeploy as AdminAfterDeployHook } from "../../abstractions/features/hooks/AdminAfterDeploy.js";
4
4
  export { AdminBeforeDeploy as AdminBeforeDeployHook } from "../../abstractions/features/hooks/AdminBeforeDeploy.js";
5
5
  export { AdminBeforeWatch as AdminBeforeWatchHook } from "../../abstractions/features/hooks/AdminBeforeWatch.js";
6
- export { AdminPulumi } from "../../abstractions/features/pulumi/AdminPulumi.js";
7
-
8
- //# sourceMappingURL=admin.js.map
@@ -3,4 +3,3 @@ export { ApiBeforeBuild as ApiBeforeBuildHook } from "../../abstractions/feature
3
3
  export { ApiAfterDeploy as ApiAfterDeployHook } from "../../abstractions/features/hooks/ApiAfterDeploy.js";
4
4
  export { ApiBeforeDeploy as ApiBeforeDeployHook } from "../../abstractions/features/hooks/ApiBeforeDeploy.js";
5
5
  export { ApiBeforeWatch as ApiBeforeWatchHook } from "../../abstractions/features/hooks/ApiBeforeWatch.js";
6
- export { ApiPulumi } from "../../abstractions/features/pulumi/ApiPulumi.js";
@@ -3,6 +3,3 @@ export { ApiBeforeBuild as ApiBeforeBuildHook } from "../../abstractions/feature
3
3
  export { ApiAfterDeploy as ApiAfterDeployHook } from "../../abstractions/features/hooks/ApiAfterDeploy.js";
4
4
  export { ApiBeforeDeploy as ApiBeforeDeployHook } from "../../abstractions/features/hooks/ApiBeforeDeploy.js";
5
5
  export { ApiBeforeWatch as ApiBeforeWatchHook } from "../../abstractions/features/hooks/ApiBeforeWatch.js";
6
- export { ApiPulumi } from "../../abstractions/features/pulumi/ApiPulumi.js";
7
-
8
- //# sourceMappingURL=api.js.map
@@ -2,4 +2,3 @@ export { CoreAfterBuild as CoreAfterBuildHook } from "../../abstractions/feature
2
2
  export { CoreBeforeBuild as CoreBeforeBuildHook } from "../../abstractions/features/hooks/CoreBeforeBuild.js";
3
3
  export { CoreAfterDeploy as CoreAfterDeployHook } from "../../abstractions/features/hooks/CoreAfterDeploy.js";
4
4
  export { CoreBeforeDeploy as CoreBeforeDeployHook } from "../../abstractions/features/hooks/CoreBeforeDeploy.js";
5
- export { CorePulumi } from "../../abstractions/features/pulumi/CorePulumi.js";
@@ -2,6 +2,3 @@ export { CoreAfterBuild as CoreAfterBuildHook } from "../../abstractions/feature
2
2
  export { CoreBeforeBuild as CoreBeforeBuildHook } from "../../abstractions/features/hooks/CoreBeforeBuild.js";
3
3
  export { CoreAfterDeploy as CoreAfterDeployHook } from "../../abstractions/features/hooks/CoreAfterDeploy.js";
4
4
  export { CoreBeforeDeploy as CoreBeforeDeployHook } from "../../abstractions/features/hooks/CoreBeforeDeploy.js";
5
- export { CorePulumi } from "../../abstractions/features/pulumi/CorePulumi.js";
6
-
7
- //# sourceMappingURL=core.js.map
@@ -0,0 +1,8 @@
1
+ export { LoggerService as Logger } from "../abstractions/services/LoggerService.js";
2
+ export { UiService as Ui } from "../abstractions/services/UiService.js";
3
+ export { AfterBuild as AfterBuildHook } from "../abstractions/features/hooks/AfterBuild.js";
4
+ export { BeforeBuild as BeforeBuildHook } from "../abstractions/features/hooks/BeforeBuild.js";
5
+ export { AfterDeploy as AfterDeployHook } from "../abstractions/features/hooks/AfterDeploy.js";
6
+ export { BeforeDeploy as BeforeDeployHook } from "../abstractions/features/hooks/BeforeDeploy.js";
7
+ export { BeforeWatch as BeforeWatchHook } from "../abstractions/features/hooks/BeforeWatch.js";
8
+ export { EnvVar } from "../extensions/EnvVar.js";
@@ -0,0 +1,8 @@
1
+ export { LoggerService as Logger } from "../abstractions/services/LoggerService.js";
2
+ export { UiService as Ui } from "../abstractions/services/UiService.js";
3
+ export { AfterBuild as AfterBuildHook } from "../abstractions/features/hooks/AfterBuild.js";
4
+ export { BeforeBuild as BeforeBuildHook } from "../abstractions/features/hooks/BeforeBuild.js";
5
+ export { AfterDeploy as AfterDeployHook } from "../abstractions/features/hooks/AfterDeploy.js";
6
+ export { BeforeDeploy as BeforeDeployHook } from "../abstractions/features/hooks/BeforeDeploy.js";
7
+ export { BeforeWatch as BeforeWatchHook } from "../abstractions/features/hooks/BeforeWatch.js";
8
+ export { EnvVar } from "../extensions/EnvVar.js";
@@ -1,11 +1,5 @@
1
1
  import { z } from "zod";
2
2
  export declare const AdminBuildParam: import("~/defineExtension/index.js").ExtensionComponent<z.ZodObject<{
3
3
  paramName: z.ZodString;
4
- value: z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodArray<z.ZodAny, "many">, z.ZodNumber, z.ZodBoolean]>;
5
- }, "strip", z.ZodTypeAny, {
6
- value: string | number | boolean | any[] | Record<string, any>;
7
- paramName: string;
8
- }, {
9
- value: string | number | boolean | any[] | Record<string, any>;
10
- paramName: string;
11
- }>>;
4
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodArray<z.ZodAny>, z.ZodNumber, z.ZodBoolean]>;
5
+ }, z.core.$strip>>;
@@ -1,25 +1,21 @@
1
1
  import { z } from "zod";
2
2
  import { defineExtension } from "../defineExtension/index.js";
3
- import crypto from "crypto";
3
+ import crypto_0 from "crypto";
4
4
  import path from "path";
5
5
  import fs from "fs";
6
6
  import { Node, Project } from "ts-morph";
7
7
  async function generateBuildParamsFeature(buildParamsDir, ctx) {
8
- const featureFilePath = path.join(buildParamsDir, "feature.ts");
9
-
10
- // Get all BuildParam_*.ts files.
11
- const files = fs.readdirSync(buildParamsDir).filter(f => f.startsWith("BuildParam_") && f.endsWith(".ts") && f !== "feature.ts");
12
-
13
- // Generate imports and registrations.
14
- const imports = files.map(file => {
15
- const className = path.parse(file).name;
16
- return `import ${className} from "./${className}.js";`;
17
- }).join("\n");
18
- const registrations = files.map(file => {
19
- const className = path.parse(file).name;
20
- return ` container.register(${className});`;
21
- }).join("\n");
22
- const featureContent = `import { createFeature } from "@webiny/feature/admin";
8
+ const featureFilePath = path.join(buildParamsDir, "feature.ts");
9
+ const files = fs.readdirSync(buildParamsDir).filter((f)=>f.startsWith("BuildParam_") && f.endsWith(".ts") && "feature.ts" !== f);
10
+ const imports = files.map((file)=>{
11
+ const className = path.parse(file).name;
12
+ return `import ${className} from "./${className}.js";`;
13
+ }).join("\n");
14
+ const registrations = files.map((file)=>{
15
+ const className = path.parse(file).name;
16
+ return ` container.register(${className});`;
17
+ }).join("\n");
18
+ const featureContent = `import { createFeature } from "@webiny/feature/admin";
23
19
  import { Container } from "@webiny/di";
24
20
  ${imports}
25
21
 
@@ -30,138 +26,101 @@ ${registrations}
30
26
  }
31
27
  });
32
28
  `;
33
- fs.writeFileSync(featureFilePath, featureContent, "utf8");
34
-
35
- // Now we need to update Extensions.tsx to use RegisterFeature with this feature.
36
- await updateExtensionsTsx(ctx);
29
+ fs.writeFileSync(featureFilePath, featureContent, "utf8");
30
+ await updateExtensionsTsx(ctx);
37
31
  }
38
32
  async function updateExtensionsTsx(ctx) {
39
- const extensionsTsxFilePath = ctx.project.paths.workspaceFolder.join("apps", "admin", "src", "Extensions.tsx").toString();
40
- const project = new Project();
41
- project.addSourceFileAtPath(extensionsTsxFilePath);
42
- const source = project.getSourceFileOrThrow(extensionsTsxFilePath);
43
-
44
- // Check if we already have the imports.
45
- const buildParamsFeatureImport = "./buildParams/feature.js";
46
- const existingFeatureImport = source.getImportDeclaration(buildParamsFeatureImport);
47
- if (!existingFeatureImport) {
48
- let index = 1;
49
- const importDeclarations = source.getImportDeclarations();
50
- if (importDeclarations.length) {
51
- const last = importDeclarations[importDeclarations.length - 1];
52
- index = last.getChildIndex() + 1;
33
+ const extensionsTsxFilePath = ctx.project.paths.workspaceFolder.join("apps", "admin", "src", "Extensions.tsx").toString();
34
+ const project = new Project();
35
+ project.addSourceFileAtPath(extensionsTsxFilePath);
36
+ const source = project.getSourceFileOrThrow(extensionsTsxFilePath);
37
+ const buildParamsFeatureImport = "./buildParams/feature.js";
38
+ const existingFeatureImport = source.getImportDeclaration(buildParamsFeatureImport);
39
+ if (!existingFeatureImport) {
40
+ let index = 1;
41
+ const importDeclarations = source.getImportDeclarations();
42
+ if (importDeclarations.length) {
43
+ const last = importDeclarations[importDeclarations.length - 1];
44
+ index = last.getChildIndex() + 1;
45
+ }
46
+ source.insertImportDeclaration(index, {
47
+ namedImports: [
48
+ "BuildParamsInternalFeature"
49
+ ],
50
+ moduleSpecifier: buildParamsFeatureImport
51
+ });
52
+ const buildParamsFeatureImportPath = "@webiny/app-admin";
53
+ const existingBuildParamsImport = source.getImportDeclaration(buildParamsFeatureImportPath);
54
+ if (existingBuildParamsImport) {
55
+ const namedImports = existingBuildParamsImport.getNamedImports();
56
+ const hasBuildParamsFeature = namedImports.some((ni)=>"BuildParamsFeature" === ni.getName());
57
+ if (!hasBuildParamsFeature) existingBuildParamsImport.addNamedImport("BuildParamsFeature");
58
+ } else source.insertImportDeclaration(index, {
59
+ namedImports: [
60
+ "BuildParamsFeature"
61
+ ],
62
+ moduleSpecifier: buildParamsFeatureImportPath
63
+ });
64
+ const registerFeatureImportPath = "@webiny/app-admin";
65
+ const existingRegisterFeatureImport = source.getImportDeclaration(registerFeatureImportPath);
66
+ if (existingRegisterFeatureImport) {
67
+ const namedImports = existingRegisterFeatureImport.getNamedImports();
68
+ const hasRegisterFeature = namedImports.some((ni)=>"RegisterFeature" === ni.getName());
69
+ if (!hasRegisterFeature) existingRegisterFeatureImport.addNamedImport("RegisterFeature");
70
+ } else source.insertImportDeclaration(index, {
71
+ namedImports: [
72
+ "RegisterFeature"
73
+ ],
74
+ moduleSpecifier: registerFeatureImportPath
75
+ });
53
76
  }
54
-
55
- // Add import for BuildParamsInternalFeature.
56
- source.insertImportDeclaration(index, {
57
- namedImports: ["BuildParamsInternalFeature"],
58
- moduleSpecifier: buildParamsFeatureImport
77
+ const extensionsIdentifier = source.getFirstDescendant((node)=>{
78
+ if (!Node.isIdentifier(node)) return false;
79
+ return "Extensions" === node.getText();
59
80
  });
60
-
61
- // Add import for BuildParamsFeature.
62
- const buildParamsFeatureImportPath = "@webiny/app-admin";
63
- const existingBuildParamsImport = source.getImportDeclaration(buildParamsFeatureImportPath);
64
- if (!existingBuildParamsImport) {
65
- source.insertImportDeclaration(index, {
66
- namedImports: ["BuildParamsFeature"],
67
- moduleSpecifier: buildParamsFeatureImportPath
68
- });
69
- } else {
70
- // Add to existing import if BuildParamsFeature not already there.
71
- const namedImports = existingBuildParamsImport.getNamedImports();
72
- const hasBuildParamsFeature = namedImports.some(ni => ni.getName() === "BuildParamsFeature");
73
- if (!hasBuildParamsFeature) {
74
- existingBuildParamsImport.addNamedImport("BuildParamsFeature");
75
- }
76
- }
77
-
78
- // Add import for RegisterFeature if not present.
79
- const registerFeatureImportPath = "@webiny/app-admin";
80
- const existingRegisterFeatureImport = source.getImportDeclaration(registerFeatureImportPath);
81
- if (existingRegisterFeatureImport) {
82
- const namedImports = existingRegisterFeatureImport.getNamedImports();
83
- const hasRegisterFeature = namedImports.some(ni => ni.getName() === "RegisterFeature");
84
- if (!hasRegisterFeature) {
85
- existingRegisterFeatureImport.addNamedImport("RegisterFeature");
86
- }
87
- } else {
88
- source.insertImportDeclaration(index, {
89
- namedImports: ["RegisterFeature"],
90
- moduleSpecifier: registerFeatureImportPath
91
- });
92
- }
93
- }
94
-
95
- // Now add <RegisterFeature> components to the Extensions component.
96
- const extensionsIdentifier = source.getFirstDescendant(node => {
97
- if (!Node.isIdentifier(node)) {
98
- return false;
81
+ if (!extensionsIdentifier) throw new Error(`Could not find the "Extensions" React component in "${extensionsTsxFilePath}".`);
82
+ const extensionsArrowFn = extensionsIdentifier.getNextSibling((node)=>Node.isArrowFunction(node));
83
+ if (!extensionsArrowFn) throw new Error('Could not find the "Extensions" React component arrow function.');
84
+ const extensionsArrowFnFragment = extensionsArrowFn.getFirstDescendant((node)=>Node.isJsxFragment(node));
85
+ if (!extensionsArrowFnFragment) throw new Error("Could not find JSX fragment in Extensions component.");
86
+ const currentContent = extensionsArrowFnFragment.getFullText().replace("<>", "").replace("</>", "").trim();
87
+ if (!currentContent.includes("BuildParamsFeature")) {
88
+ const newContent = `<><RegisterFeature feature={BuildParamsFeature} /><RegisterFeature feature={BuildParamsInternalFeature} />${currentContent}</>`;
89
+ extensionsArrowFnFragment.replaceWithText(newContent);
99
90
  }
100
- return node.getText() === "Extensions";
101
- });
102
- if (!extensionsIdentifier) {
103
- throw new Error(`Could not find the "Extensions" React component in "${extensionsTsxFilePath}".`);
104
- }
105
- const extensionsArrowFn = extensionsIdentifier.getNextSibling(node => Node.isArrowFunction(node));
106
- if (!extensionsArrowFn) {
107
- throw new Error(`Could not find the "Extensions" React component arrow function.`);
108
- }
109
- const extensionsArrowFnFragment = extensionsArrowFn.getFirstDescendant(node => {
110
- return Node.isJsxFragment(node);
111
- });
112
- if (!extensionsArrowFnFragment) {
113
- throw new Error(`Could not find JSX fragment in Extensions component.`);
114
- }
115
- const currentContent = extensionsArrowFnFragment.getFullText().replace("<>", "").replace("</>", "").trim();
116
-
117
- // Check if we already have the RegisterFeature components.
118
- if (!currentContent.includes("BuildParamsFeature")) {
119
- const newContent = `<><RegisterFeature feature={BuildParamsFeature} /><RegisterFeature feature={BuildParamsInternalFeature} />${currentContent}</>`;
120
- extensionsArrowFnFragment.replaceWithText(newContent);
121
- }
122
- await source.save();
91
+ await source.save();
123
92
  }
124
- export const AdminBuildParam = defineExtension({
125
- type: "Admin/BuildParam",
126
- tags: {
127
- runtimeContext: "app-build",
128
- appName: "admin"
129
- },
130
- description: "Add build-time parameter to Admin app.",
131
- multiple: true,
132
- paramsSchema: () => {
133
- return z.object({
134
- paramName: z.string(),
135
- value: z.union([z.string(), z.record(z.any()), z.array(z.any()), z.number(), z.boolean()])
136
- });
137
- },
138
- async build(params, ctx) {
139
- const buildParamsDir = ctx.project.paths.workspaceFolder.join("apps", "admin", "src", "buildParams").toString();
140
- const {
141
- paramName,
142
- value
143
- } = params;
144
-
145
- // Serialize value to a TypeScript literal.
146
- const valueStr = JSON.stringify(value, null, 4);
147
-
148
- // Generate a unique class name based on the paramName.
149
- const hash = crypto.createHash("sha256").update(paramName).digest("hex");
150
- const className = `BuildParam_${hash.slice(-10)}`;
151
- const fileName = `${className}.ts`;
152
- const filePath = path.join(buildParamsDir, fileName);
153
-
154
- // Ensure buildParams directory exists.
155
- if (!fs.existsSync(buildParamsDir)) {
156
- fs.mkdirSync(buildParamsDir, {
157
- recursive: true
158
- });
159
- }
160
-
161
- // Check if file already exists.
162
- if (!fs.existsSync(filePath)) {
163
- // Create the BuildParam implementation file.
164
- const fileContent = `import { BuildParam } from "webiny/admin/build-params";
93
+ const AdminBuildParam = defineExtension({
94
+ type: "Admin/BuildParam",
95
+ tags: {
96
+ runtimeContext: "app-build",
97
+ appName: "admin"
98
+ },
99
+ description: "Add build-time parameter to Admin app.",
100
+ multiple: true,
101
+ paramsSchema: ()=>z.object({
102
+ paramName: z.string(),
103
+ value: z.union([
104
+ z.string(),
105
+ z.record(z.string(), z.any()),
106
+ z.array(z.any()),
107
+ z.number(),
108
+ z.boolean()
109
+ ])
110
+ }),
111
+ async build (params, ctx) {
112
+ const buildParamsDir = ctx.project.paths.workspaceFolder.join("apps", "admin", "src", "buildParams").toString();
113
+ const { paramName, value } = params;
114
+ const valueStr = JSON.stringify(value, null, 4);
115
+ const hash = crypto_0.createHash("sha256").update(paramName).digest("hex");
116
+ const className = `BuildParam_${hash.slice(-10)}`;
117
+ const fileName = `${className}.ts`;
118
+ const filePath = path.join(buildParamsDir, fileName);
119
+ if (!fs.existsSync(buildParamsDir)) fs.mkdirSync(buildParamsDir, {
120
+ recursive: true
121
+ });
122
+ if (!fs.existsSync(filePath)) {
123
+ const fileContent = `import { BuildParam } from "webiny/admin/build-params";
165
124
 
166
125
  class ${className} implements BuildParam.Interface {
167
126
  key = "${paramName}";
@@ -173,12 +132,11 @@ export default BuildParam.createImplementation({
173
132
  dependencies: []
174
133
  });
175
134
  `;
176
- fs.writeFileSync(filePath, fileContent, "utf8");
135
+ fs.writeFileSync(filePath, fileContent, "utf8");
136
+ }
137
+ await generateBuildParamsFeature(buildParamsDir, ctx);
177
138
  }
178
-
179
- // Now we need to generate/update the feature file that imports all BuildParams.
180
- await generateBuildParamsFeature(buildParamsDir, ctx);
181
- }
182
139
  });
140
+ export { AdminBuildParam };
183
141
 
184
142
  //# sourceMappingURL=AdminBuildParam.js.map