@webiny/project 6.3.0 → 6.4.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/GracefulError.js +13 -15
- package/GracefulError.js.map +1 -1
- package/ProjectError.js +11 -13
- package/ProjectError.js.map +1 -1
- package/ProjectSdk.js +113 -129
- package/ProjectSdk.js.map +1 -1
- package/abstractions/createAbstraction.js +3 -2
- package/abstractions/createAbstraction.js.map +1 -1
- package/abstractions/features/BuildApp.js +2 -1
- package/abstractions/features/BuildApp.js.map +1 -1
- package/abstractions/features/BuildExtension.js +2 -1
- package/abstractions/features/BuildExtension.js.map +1 -1
- package/abstractions/features/DeployApp.js +2 -1
- package/abstractions/features/DeployApp.js.map +1 -1
- package/abstractions/features/DestroyApp.js +2 -1
- package/abstractions/features/DestroyApp.js.map +1 -1
- package/abstractions/features/ExportStack.js +2 -1
- package/abstractions/features/ExportStack.js.map +1 -1
- package/abstractions/features/GetApp.js +2 -1
- package/abstractions/features/GetApp.js.map +1 -1
- package/abstractions/features/GetAppOutput.js +2 -1
- package/abstractions/features/GetAppOutput.js.map +1 -1
- package/abstractions/features/GetAppStackOutput.js +2 -6
- package/abstractions/features/GetAppStackOutput.js.map +1 -1
- package/abstractions/features/GetFeatureFlags.js +2 -1
- package/abstractions/features/GetFeatureFlags.js.map +1 -1
- package/abstractions/features/GetLogger.js +2 -1
- package/abstractions/features/GetLogger.js.map +1 -1
- package/abstractions/features/GetProductionEnvironments.js +2 -1
- package/abstractions/features/GetProductionEnvironments.js.map +1 -1
- package/abstractions/features/GetProject.js +2 -1
- package/abstractions/features/GetProject.js.map +1 -1
- package/abstractions/features/GetProjectConfig.js +2 -1
- package/abstractions/features/GetProjectConfig.js.map +1 -1
- package/abstractions/features/GetProjectInfo.js +2 -1
- package/abstractions/features/GetProjectInfo.js.map +1 -1
- package/abstractions/features/GetPulumiResourceNamePrefix.js +2 -1
- package/abstractions/features/GetPulumiResourceNamePrefix.js.map +1 -1
- package/abstractions/features/InstallExtension.js +2 -1
- package/abstractions/features/InstallExtension.js.map +1 -1
- package/abstractions/features/IsCi.js +2 -1
- package/abstractions/features/IsCi.js.map +1 -1
- package/abstractions/features/IsTelemetryEnabled.js +2 -1
- package/abstractions/features/IsTelemetryEnabled.js.map +1 -1
- package/abstractions/features/IsWcpEnabled.js +2 -1
- package/abstractions/features/IsWcpEnabled.js.map +1 -1
- package/abstractions/features/IsWebinyJsRepo.js +2 -1
- package/abstractions/features/IsWebinyJsRepo.js.map +1 -1
- package/abstractions/features/RefreshApp.js +2 -1
- package/abstractions/features/RefreshApp.js.map +1 -1
- package/abstractions/features/RunPulumiCommand.js +2 -1
- package/abstractions/features/RunPulumiCommand.js.map +1 -1
- package/abstractions/features/ValidateProjectConfig.js +2 -1
- package/abstractions/features/ValidateProjectConfig.js.map +1 -1
- package/abstractions/features/Watch.js +2 -1
- package/abstractions/features/Watch.js.map +1 -1
- package/abstractions/features/hooks/AdminAfterBuild.js +2 -1
- package/abstractions/features/hooks/AdminAfterBuild.js.map +1 -1
- package/abstractions/features/hooks/AdminAfterDeploy.js +2 -1
- package/abstractions/features/hooks/AdminAfterDeploy.js.map +1 -1
- package/abstractions/features/hooks/AdminBeforeBuild.js +2 -1
- package/abstractions/features/hooks/AdminBeforeBuild.js.map +1 -1
- package/abstractions/features/hooks/AdminBeforeDeploy.js +2 -1
- package/abstractions/features/hooks/AdminBeforeDeploy.js.map +1 -1
- package/abstractions/features/hooks/AdminBeforeWatch.js +2 -1
- package/abstractions/features/hooks/AdminBeforeWatch.js.map +1 -1
- package/abstractions/features/hooks/AfterBuild.js +2 -1
- package/abstractions/features/hooks/AfterBuild.js.map +1 -1
- package/abstractions/features/hooks/AfterDeploy.js +2 -1
- package/abstractions/features/hooks/AfterDeploy.js.map +1 -1
- package/abstractions/features/hooks/ApiAfterBuild.js +2 -1
- package/abstractions/features/hooks/ApiAfterBuild.js.map +1 -1
- package/abstractions/features/hooks/ApiAfterDeploy.js +2 -1
- package/abstractions/features/hooks/ApiAfterDeploy.js.map +1 -1
- package/abstractions/features/hooks/ApiBeforeBuild.js +2 -1
- package/abstractions/features/hooks/ApiBeforeBuild.js.map +1 -1
- package/abstractions/features/hooks/ApiBeforeDeploy.js +2 -1
- package/abstractions/features/hooks/ApiBeforeDeploy.js.map +1 -1
- package/abstractions/features/hooks/ApiBeforeWatch.js +2 -1
- package/abstractions/features/hooks/ApiBeforeWatch.js.map +1 -1
- package/abstractions/features/hooks/BeforeBuild.js +2 -1
- package/abstractions/features/hooks/BeforeBuild.js.map +1 -1
- package/abstractions/features/hooks/BeforeDeploy.js +2 -1
- package/abstractions/features/hooks/BeforeDeploy.js.map +1 -1
- package/abstractions/features/hooks/BeforeWatch.js +2 -1
- package/abstractions/features/hooks/BeforeWatch.js.map +1 -1
- package/abstractions/features/hooks/CoreAfterBuild.js +2 -1
- package/abstractions/features/hooks/CoreAfterBuild.js.map +1 -1
- package/abstractions/features/hooks/CoreAfterDeploy.js +2 -1
- package/abstractions/features/hooks/CoreAfterDeploy.js.map +1 -1
- package/abstractions/features/hooks/CoreBeforeBuild.js +2 -1
- package/abstractions/features/hooks/CoreBeforeBuild.js.map +1 -1
- package/abstractions/features/hooks/CoreBeforeDeploy.js +2 -1
- package/abstractions/features/hooks/CoreBeforeDeploy.js.map +1 -1
- package/abstractions/features/hooks/CoreBeforeWatch.js +2 -1
- package/abstractions/features/hooks/CoreBeforeWatch.js.map +1 -1
- package/abstractions/features/hooks/index.js +0 -2
- package/abstractions/features/index.js +0 -2
- package/abstractions/index.js +0 -2
- package/abstractions/models/IAppModel.js +0 -3
- package/abstractions/models/IAppPackageModel.js +0 -3
- package/abstractions/models/IPathModel.js +0 -3
- package/abstractions/models/IProjectConfigDto.js +0 -3
- package/abstractions/models/IProjectConfigModel.js +0 -3
- package/abstractions/models/IProjectModel.js +0 -3
- package/abstractions/models/IUrlModel.js +0 -3
- package/abstractions/models/IWcpEnvironmentDto.js +0 -3
- package/abstractions/models/IWcpEnvironmentModel.js +0 -3
- package/abstractions/models/IWcpUserDto.js +0 -3
- package/abstractions/models/IWcpUserModel.js +0 -3
- package/abstractions/models/IWcpUserPatDto.js +0 -3
- package/abstractions/models/IWcpUserPatModel.js +0 -3
- package/abstractions/models/PackagesBuilder/IPackagesBuilder.js +0 -3
- package/abstractions/models/PackagesBuilder/IRunnableBuildProcess.js +0 -3
- package/abstractions/models/PackagesBuilder/IRunnableBuildProcesses.js +0 -3
- package/abstractions/models/PackagesBuilder/index.js +0 -3
- package/abstractions/models/index.js +0 -3
- package/abstractions/services/BuildAppWorkspaceService.js +2 -1
- package/abstractions/services/BuildAppWorkspaceService.js.map +1 -1
- package/abstractions/services/BuildProjectWorkspaceService.js +2 -1
- package/abstractions/services/BuildProjectWorkspaceService.js.map +1 -1
- package/abstractions/services/GetAppPackagesService.js +2 -1
- package/abstractions/services/GetAppPackagesService.js.map +1 -1
- package/abstractions/services/GetAppService.js +2 -1
- package/abstractions/services/GetAppService.js.map +1 -1
- package/abstractions/services/GetCwdService.js +2 -1
- package/abstractions/services/GetCwdService.js.map +1 -1
- package/abstractions/services/GetProjectConfigService.js +2 -1
- package/abstractions/services/GetProjectConfigService.js.map +1 -1
- package/abstractions/services/GetProjectIdService.js +2 -1
- package/abstractions/services/GetProjectIdService.js.map +1 -1
- package/abstractions/services/GetProjectService.js +2 -1
- package/abstractions/services/GetProjectService.js.map +1 -1
- package/abstractions/services/GetProjectVersionService.js +2 -1
- package/abstractions/services/GetProjectVersionService.js.map +1 -1
- package/abstractions/services/GetPulumiService.js +2 -1
- package/abstractions/services/GetPulumiService.js.map +1 -1
- package/abstractions/services/InitProjectSdkService.js +2 -1
- package/abstractions/services/InitProjectSdkService.js.map +1 -1
- package/abstractions/services/InstallExtensionService.js +2 -1
- package/abstractions/services/InstallExtensionService.js.map +1 -1
- package/abstractions/services/IsRemotePulumiBackendService.js +2 -1
- package/abstractions/services/IsRemotePulumiBackendService.js.map +1 -1
- package/abstractions/services/ListAppLambdaFunctionsService.js +2 -1
- package/abstractions/services/ListAppLambdaFunctionsService.js.map +1 -1
- package/abstractions/services/ListDeployedEnvironmentsService.js +2 -1
- package/abstractions/services/ListDeployedEnvironmentsService.js.map +1 -1
- package/abstractions/services/ListPackagesInAppWorkspaceService.js +2 -1
- package/abstractions/services/ListPackagesInAppWorkspaceService.js.map +1 -1
- package/abstractions/services/ListPackagesService.js +2 -1
- package/abstractions/services/ListPackagesService.js.map +1 -1
- package/abstractions/services/LoadEnvVarsService.js +2 -1
- package/abstractions/services/LoadEnvVarsService.js.map +1 -1
- package/abstractions/services/LocalStorageService.js +2 -1
- package/abstractions/services/LocalStorageService.js.map +1 -1
- package/abstractions/services/LoggerService.js +2 -1
- package/abstractions/services/LoggerService.js.map +1 -1
- package/abstractions/services/ProjectInfoService/GetIsCiService.js +2 -1
- package/abstractions/services/ProjectInfoService/GetIsCiService.js.map +1 -1
- package/abstractions/services/ProjectInfoService/GetNpmVersionService.js +2 -1
- package/abstractions/services/ProjectInfoService/GetNpmVersionService.js.map +1 -1
- package/abstractions/services/ProjectInfoService/GetNpxVersionService.js +2 -1
- package/abstractions/services/ProjectInfoService/GetNpxVersionService.js.map +1 -1
- package/abstractions/services/ProjectInfoService/GetPulumiVersionService.js +2 -1
- package/abstractions/services/ProjectInfoService/GetPulumiVersionService.js.map +1 -1
- package/abstractions/services/ProjectInfoService/GetYarnVersionService.js +2 -1
- package/abstractions/services/ProjectInfoService/GetYarnVersionService.js.map +1 -1
- package/abstractions/services/ProjectInfoService/ProjectInfoService.js +2 -1
- package/abstractions/services/ProjectInfoService/ProjectInfoService.js.map +1 -1
- package/abstractions/services/ProjectInfoService/index.js +0 -2
- package/abstractions/services/ProjectSdkParamsService.js +2 -1
- package/abstractions/services/ProjectSdkParamsService.js.map +1 -1
- package/abstractions/services/PulumiExportService.js +3 -4
- package/abstractions/services/PulumiExportService.js.map +1 -1
- package/abstractions/services/PulumiGetConfigPassphraseService.js +2 -1
- package/abstractions/services/PulumiGetConfigPassphraseService.js.map +1 -1
- package/abstractions/services/PulumiGetSecretsProviderService.js +2 -1
- package/abstractions/services/PulumiGetSecretsProviderService.js.map +1 -1
- package/abstractions/services/PulumiGetStackOutputService.js +2 -1
- package/abstractions/services/PulumiGetStackOutputService.js.map +1 -1
- package/abstractions/services/PulumiImportService.js +2 -1
- package/abstractions/services/PulumiImportService.js.map +1 -1
- package/abstractions/services/PulumiLoginService.js +2 -1
- package/abstractions/services/PulumiLoginService.js.map +1 -1
- package/abstractions/services/PulumiSelectStackService.js +2 -1
- package/abstractions/services/PulumiSelectStackService.js.map +1 -1
- package/abstractions/services/SetProjectIdService.js +2 -1
- package/abstractions/services/SetProjectIdService.js.map +1 -1
- package/abstractions/services/StdioService.js +2 -1
- package/abstractions/services/StdioService.js.map +1 -1
- package/abstractions/services/UiService.js +2 -1
- package/abstractions/services/UiService.js.map +1 -1
- package/abstractions/services/ValidateProjectConfigService.js +2 -1
- package/abstractions/services/ValidateProjectConfigService.js.map +1 -1
- package/abstractions/services/WatchedLambdaFunctionsService.js +2 -1
- package/abstractions/services/WatchedLambdaFunctionsService.js.map +1 -1
- package/abstractions/services/WcpService.js +2 -1
- package/abstractions/services/WcpService.js.map +1 -1
- package/abstractions/services/index.js +0 -2
- package/abstractions/types.js +0 -3
- package/components/Wcp.js +27 -38
- package/components/Wcp.js.map +1 -1
- package/createProjectSdkContainer.js +103 -112
- package/createProjectSdkContainer.js.map +1 -1
- package/decorators/BuildAppWithHooks.js +54 -44
- package/decorators/BuildAppWithHooks.js.map +1 -1
- package/decorators/DeployAppClearWatchedLambdaFunctions.js +27 -29
- package/decorators/DeployAppClearWatchedLambdaFunctions.js.map +1 -1
- package/decorators/DeployAppRefreshStackOutputCache.js +26 -30
- package/decorators/DeployAppRefreshStackOutputCache.js.map +1 -1
- package/decorators/DeployAppWithHooks.js +51 -41
- package/decorators/DeployAppWithHooks.js.map +1 -1
- package/decorators/DeployAppWithWatchedLambdaReplacement.js +33 -37
- package/decorators/DeployAppWithWatchedLambdaReplacement.js.map +1 -1
- package/decorators/GetFeatureFlagsWithLicense.js +36 -57
- package/decorators/GetFeatureFlagsWithLicense.js.map +1 -1
- package/decorators/GetPulumiServiceWithDownloadInfo.js +21 -19
- package/decorators/GetPulumiServiceWithDownloadInfo.js.map +1 -1
- package/decorators/WatchWithHooks.js +30 -27
- package/decorators/WatchWithHooks.js.map +1 -1
- package/decorators/index.js +0 -2
- package/defineExtension/createExtensionDefinition.js +12 -19
- package/defineExtension/createExtensionDefinition.js.map +1 -1
- package/defineExtension/createExtensionReactComponent.js +40 -46
- package/defineExtension/createExtensionReactComponent.js.map +1 -1
- package/defineExtension/defineExtension.js +8 -9
- package/defineExtension/defineExtension.js.map +1 -1
- package/defineExtension/index.js +0 -2
- package/defineExtension/models/ExtensionDefinitionModel.js +11 -10
- package/defineExtension/models/ExtensionDefinitionModel.js.map +1 -1
- package/defineExtension/models/ExtensionInstanceModel.js +23 -24
- package/defineExtension/models/ExtensionInstanceModel.js.map +1 -1
- package/defineExtension/models/index.js +0 -2
- package/defineExtension/types.js +0 -3
- package/defineExtension/zodTypes/zodSrcPath.js +35 -61
- package/defineExtension/zodTypes/zodSrcPath.js.map +1 -1
- package/exports/infra/admin.js +0 -2
- package/exports/infra/api.js +0 -2
- package/exports/infra/core.js +0 -2
- package/exports/infra.js +0 -2
- package/extensions/AdminBuildParam.js +105 -147
- package/extensions/AdminBuildParam.js.map +1 -1
- package/extensions/AdminExtension.js +64 -90
- package/extensions/AdminExtension.js.map +1 -1
- package/extensions/ApiBuildParam.js +71 -97
- package/extensions/ApiBuildParam.js.map +1 -1
- package/extensions/ApiExtension.js +71 -92
- package/extensions/ApiExtension.js.map +1 -1
- package/extensions/DatabaseSetup.js +14 -9
- package/extensions/DatabaseSetup.js.map +1 -1
- package/extensions/EnvVar.js +12 -16
- package/extensions/EnvVar.js.map +1 -1
- package/extensions/ExtensionDefinitions.js +11 -10
- package/extensions/ExtensionDefinitions.js.map +1 -1
- package/extensions/FeatureFlags.js +47 -48
- package/extensions/FeatureFlags.js.map +1 -1
- package/extensions/Project/EnsureApiDeployedBeforeAdminBuild.js +20 -21
- package/extensions/Project/EnsureApiDeployedBeforeAdminBuild.js.map +1 -1
- package/extensions/Project/EnsureApiDeployedBeforeAdminWatch.js +20 -21
- package/extensions/Project/EnsureApiDeployedBeforeAdminWatch.js.map +1 -1
- package/extensions/Project/EnsureApiDeployedBeforeWatch.js +20 -21
- package/extensions/Project/EnsureApiDeployedBeforeWatch.js.map +1 -1
- package/extensions/Project/EnsureCoreDeployedBeforeApiDeploy.js +22 -25
- package/extensions/Project/EnsureCoreDeployedBeforeApiDeploy.js.map +1 -1
- package/extensions/Project/EnsureTelemetryEnabledForOss.js +25 -28
- package/extensions/Project/EnsureTelemetryEnabledForOss.js.map +1 -1
- package/extensions/Project/SetAdminAppEnvVarsBeforeBuild.js +29 -34
- package/extensions/Project/SetAdminAppEnvVarsBeforeBuild.js.map +1 -1
- package/extensions/Project/SetAdminAppEnvVarsBeforeWatch.js +30 -35
- package/extensions/Project/SetAdminAppEnvVarsBeforeWatch.js.map +1 -1
- package/extensions/Project/ShowConfigChangeInfoBeforeAdminWatch.js +12 -9
- package/extensions/Project/ShowConfigChangeInfoBeforeAdminWatch.js.map +1 -1
- package/extensions/Project/ShowConfigChangeInfoBeforeApiWatch.js +12 -9
- package/extensions/Project/ShowConfigChangeInfoBeforeApiWatch.js.map +1 -1
- package/extensions/Project/TelemetryNoLongerNewUser.js +7 -7
- package/extensions/Project/TelemetryNoLongerNewUser.js.map +1 -1
- package/extensions/Project/ValidateEncryptionBeforeDeploy.js +22 -23
- package/extensions/Project/ValidateEncryptionBeforeDeploy.js.map +1 -1
- package/extensions/Project/ValidateProductionPulumiState.js +25 -28
- package/extensions/Project/ValidateProductionPulumiState.js.map +1 -1
- package/extensions/Project/WcpInjectTelemetryClientAfterBuild.js +46 -51
- package/extensions/Project/WcpInjectTelemetryClientAfterBuild.js.map +1 -1
- package/extensions/Project.js +29 -30
- package/extensions/Project.js.map +1 -1
- package/extensions/ProjectDecorator.js +13 -16
- package/extensions/ProjectDecorator.js.map +1 -1
- package/extensions/ProjectId.js +11 -13
- package/extensions/ProjectId.js.map +1 -1
- package/extensions/ProjectImplementation.js +14 -17
- package/extensions/ProjectImplementation.js.map +1 -1
- package/extensions/Telemetry.js +10 -9
- package/extensions/Telemetry.js.map +1 -1
- package/extensions/hooks/AdminAfterBuild.js +16 -19
- package/extensions/hooks/AdminAfterBuild.js.map +1 -1
- package/extensions/hooks/AdminAfterDeploy.js +16 -19
- package/extensions/hooks/AdminAfterDeploy.js.map +1 -1
- package/extensions/hooks/AdminBeforeBuild.js +16 -19
- package/extensions/hooks/AdminBeforeBuild.js.map +1 -1
- package/extensions/hooks/AdminBeforeDeploy.js +16 -19
- package/extensions/hooks/AdminBeforeDeploy.js.map +1 -1
- package/extensions/hooks/AdminBeforeWatch.js +16 -19
- package/extensions/hooks/AdminBeforeWatch.js.map +1 -1
- package/extensions/hooks/AfterBuild.js +15 -18
- package/extensions/hooks/AfterBuild.js.map +1 -1
- package/extensions/hooks/AfterDeploy.js +15 -18
- package/extensions/hooks/AfterDeploy.js.map +1 -1
- package/extensions/hooks/ApiAfterBuild.js +16 -19
- package/extensions/hooks/ApiAfterBuild.js.map +1 -1
- package/extensions/hooks/ApiAfterDeploy.js +16 -19
- package/extensions/hooks/ApiAfterDeploy.js.map +1 -1
- package/extensions/hooks/ApiBeforeBuild.js +16 -19
- package/extensions/hooks/ApiBeforeBuild.js.map +1 -1
- package/extensions/hooks/ApiBeforeDeploy.js +16 -19
- package/extensions/hooks/ApiBeforeDeploy.js.map +1 -1
- package/extensions/hooks/ApiBeforeWatch.js +16 -19
- package/extensions/hooks/ApiBeforeWatch.js.map +1 -1
- package/extensions/hooks/BeforeBuild.js +15 -18
- package/extensions/hooks/BeforeBuild.js.map +1 -1
- package/extensions/hooks/BeforeDeploy.js +15 -18
- package/extensions/hooks/BeforeDeploy.js.map +1 -1
- package/extensions/hooks/BeforeWatch.js +15 -18
- package/extensions/hooks/BeforeWatch.js.map +1 -1
- package/extensions/hooks/CoreAfterBuild.js +16 -19
- package/extensions/hooks/CoreAfterBuild.js.map +1 -1
- package/extensions/hooks/CoreAfterDeploy.js +16 -19
- package/extensions/hooks/CoreAfterDeploy.js.map +1 -1
- package/extensions/hooks/CoreBeforeBuild.js +16 -19
- package/extensions/hooks/CoreBeforeBuild.js.map +1 -1
- package/extensions/hooks/CoreBeforeDeploy.js +16 -19
- package/extensions/hooks/CoreBeforeDeploy.js.map +1 -1
- package/extensions/hooks/CoreBeforeWatch.js +16 -19
- package/extensions/hooks/CoreBeforeWatch.js.map +1 -1
- package/extensions/hooks/index.js +0 -2
- package/extensions/index.js +43 -57
- package/extensions/index.js.map +1 -1
- package/extensions/infra/Ci.js +8 -24
- package/extensions/infra/Ci.js.map +1 -1
- package/extensions/infra/Env.js +35 -92
- package/extensions/infra/Env.js.map +1 -1
- package/extensions/infra/index.js +0 -2
- package/extensions/pulumi/AdminStackOutputValue.js +13 -12
- package/extensions/pulumi/AdminStackOutputValue.js.map +1 -1
- package/extensions/pulumi/ApiStackOutputValue.js +13 -12
- package/extensions/pulumi/ApiStackOutputValue.js.map +1 -1
- package/extensions/pulumi/CoreStackOutputValue.js +13 -12
- package/extensions/pulumi/CoreStackOutputValue.js.map +1 -1
- package/extensions/pulumi/ProductionEnvironments.js +29 -39
- package/extensions/pulumi/ProductionEnvironments.js.map +1 -1
- package/extensions/pulumi/PulumiResourceNamePrefix.js +10 -9
- package/extensions/pulumi/PulumiResourceNamePrefix.js.map +1 -1
- package/extensions/pulumi/index.js +0 -2
- package/features/BuildApp/BuildApp.js +49 -40
- package/features/BuildApp/BuildApp.js.map +1 -1
- package/features/BuildApp/PackagesBuilder/PackagesBuilder.js +34 -39
- package/features/BuildApp/PackagesBuilder/PackagesBuilder.js.map +1 -1
- package/features/BuildApp/PackagesBuilder/RunnableBuildProcess.js +39 -33
- package/features/BuildApp/PackagesBuilder/RunnableBuildProcess.js.map +1 -1
- package/features/BuildApp/PackagesBuilder/RunnableBuildProcesses.js +39 -46
- package/features/BuildApp/PackagesBuilder/RunnableBuildProcesses.js.map +1 -1
- package/features/BuildApp/PackagesBuilder/worker.js +26 -34
- package/features/BuildApp/PackagesBuilder/worker.js.map +1 -1
- package/features/BuildApp/index.js +0 -2
- package/features/DeployApp/DeployApp.js +79 -79
- package/features/DeployApp/DeployApp.js.map +1 -1
- package/features/DeployApp/index.js +0 -2
- package/features/DestroyApp/DestroyApp.js +60 -46
- package/features/DestroyApp/DestroyApp.js.map +1 -1
- package/features/DestroyApp/index.js +0 -2
- package/features/ExportStack/ExportStack.js +21 -16
- package/features/ExportStack/ExportStack.js.map +1 -1
- package/features/ExportStack/index.js +0 -2
- package/features/GetApp/GetApp.js +14 -11
- package/features/GetApp/GetApp.js.map +1 -1
- package/features/GetApp/index.js +0 -2
- package/features/GetAppOutput/GetAppOutput.js +44 -33
- package/features/GetAppOutput/GetAppOutput.js.map +1 -1
- package/features/GetAppOutput/index.js +0 -2
- package/features/GetAppStackOutput/GetAppStackOutput.js +20 -15
- package/features/GetAppStackOutput/GetAppStackOutput.js.map +1 -1
- package/features/GetAppStackOutput/index.js +0 -2
- package/features/GetFeatureFlags/GetFeatureFlags.js +20 -19
- package/features/GetFeatureFlags/GetFeatureFlags.js.map +1 -1
- package/features/GetFeatureFlags/index.js +0 -2
- package/features/GetLogger/GetLogger.js +14 -11
- package/features/GetLogger/GetLogger.js.map +1 -1
- package/features/GetLogger/index.js +0 -2
- package/features/GetProductionEnvironments/GetProductionEnvironments.js +24 -19
- package/features/GetProductionEnvironments/GetProductionEnvironments.js.map +1 -1
- package/features/GetProductionEnvironments/index.js +0 -2
- package/features/GetProject/GetProject.js +14 -11
- package/features/GetProject/GetProject.js.map +1 -1
- package/features/GetProject/index.js +0 -2
- package/features/GetProjectConfig/GetProjectConfig.js +14 -11
- package/features/GetProjectConfig/GetProjectConfig.js.map +1 -1
- package/features/GetProjectConfig/index.js +0 -2
- package/features/GetProjectInfo/GetProjectInfo.js +14 -11
- package/features/GetProjectInfo/GetProjectInfo.js.map +1 -1
- package/features/GetProjectInfo/index.js +0 -2
- package/features/GetPulumiResourceNamePrefix/GetPulumiResourceNamePrefix.js +18 -17
- package/features/GetPulumiResourceNamePrefix/GetPulumiResourceNamePrefix.js.map +1 -1
- package/features/GetPulumiResourceNamePrefix/index.js +0 -2
- package/features/InstallExtension/InstallExtension.js +14 -11
- package/features/InstallExtension/InstallExtension.js.map +1 -1
- package/features/InstallExtension/index.js +0 -2
- package/features/IsCi/IsCi.js +14 -11
- package/features/IsCi/IsCi.js.map +1 -1
- package/features/IsCi/index.js +0 -2
- package/features/IsTelemetryEnabled/IsTelemetryEnabled.js +19 -18
- package/features/IsTelemetryEnabled/IsTelemetryEnabled.js.map +1 -1
- package/features/IsTelemetryEnabled/index.js +0 -2
- package/features/IsWcpEnabled/IsWcpEnabled.js +15 -12
- package/features/IsWcpEnabled/IsWcpEnabled.js.map +1 -1
- package/features/IsWcpEnabled/index.js +0 -2
- package/features/IsWebinyJsRepo/IsWebinyJsRepo.js +17 -14
- package/features/IsWebinyJsRepo/IsWebinyJsRepo.js.map +1 -1
- package/features/IsWebinyJsRepo/index.js +0 -2
- package/features/RefreshApp/RefreshApp.js +57 -46
- package/features/RefreshApp/RefreshApp.js.map +1 -1
- package/features/RefreshApp/index.js +0 -2
- package/features/RunPulumiCommand/RunPulumiCommand.js +54 -43
- package/features/RunPulumiCommand/RunPulumiCommand.js.map +1 -1
- package/features/RunPulumiCommand/index.js +0 -2
- package/features/ValidateProjectConfig/ValidateProjectConfig.js +14 -11
- package/features/ValidateProjectConfig/ValidateProjectConfig.js.map +1 -1
- package/features/ValidateProjectConfig/index.js +0 -2
- package/features/Watch/Watch.js +178 -181
- package/features/Watch/Watch.js.map +1 -1
- package/features/Watch/getIotEndpoint.js +14 -12
- package/features/Watch/getIotEndpoint.js.map +1 -1
- package/features/Watch/index.js +0 -2
- package/features/Watch/initInvocationForwarding.js +76 -95
- package/features/Watch/initInvocationForwarding.js.map +1 -1
- package/features/Watch/localInvocationWorker.js +24 -33
- package/features/Watch/localInvocationWorker.js.map +1 -1
- package/features/Watch/replaceLambdaFunctions.js +61 -84
- package/features/Watch/replaceLambdaFunctions.js.map +1 -1
- package/features/Watch/watchers/BasePackagesWatcher.js +10 -13
- package/features/Watch/watchers/BasePackagesWatcher.js.map +1 -1
- package/features/Watch/watchers/MultiplePackagesWatcher.js +11 -12
- package/features/Watch/watchers/MultiplePackagesWatcher.js.map +1 -1
- package/features/Watch/watchers/PackagesWatcher.js +15 -18
- package/features/Watch/watchers/PackagesWatcher.js.map +1 -1
- package/features/Watch/watchers/RunnableWatchProcess.js +41 -40
- package/features/Watch/watchers/RunnableWatchProcess.js.map +1 -1
- package/features/Watch/watchers/RunnableWatchProcesses.js +35 -34
- package/features/Watch/watchers/RunnableWatchProcesses.js.map +1 -1
- package/features/Watch/watchers/SinglePackageWatcher.js +11 -8
- package/features/Watch/watchers/SinglePackageWatcher.js.map +1 -1
- package/features/Watch/watchers/WebinyConfigWatcher.js +30 -40
- package/features/Watch/watchers/WebinyConfigWatcher.js.map +1 -1
- package/features/Watch/watchers/ZeroPackagesWatcher.js +5 -5
- package/features/Watch/watchers/ZeroPackagesWatcher.js.map +1 -1
- package/features/Watch/watchers/utils/measureDuration.js +7 -8
- package/features/Watch/watchers/utils/measureDuration.js.map +1 -1
- package/features/Watch/watchers/worker.js +12 -21
- package/features/Watch/watchers/worker.js.map +1 -1
- package/features/hooks/AdminAfterBuild/AdminBeforeBuild.js +19 -15
- package/features/hooks/AdminAfterBuild/AdminBeforeBuild.js.map +1 -1
- package/features/hooks/AdminAfterBuild/index.js +0 -2
- package/features/hooks/AdminAfterDeploy/AdminBeforeBuild.js +19 -15
- package/features/hooks/AdminAfterDeploy/AdminBeforeBuild.js.map +1 -1
- package/features/hooks/AdminAfterDeploy/index.js +0 -2
- package/features/hooks/AdminBeforeBuild/AdminBeforeBuild.js +19 -15
- package/features/hooks/AdminBeforeBuild/AdminBeforeBuild.js.map +1 -1
- package/features/hooks/AdminBeforeBuild/index.js +0 -2
- package/features/hooks/AdminBeforeDeploy/AdminBeforeDeploy.js +19 -15
- package/features/hooks/AdminBeforeDeploy/AdminBeforeDeploy.js.map +1 -1
- package/features/hooks/AdminBeforeDeploy/index.js +0 -2
- package/features/hooks/AdminBeforeWatch/AdminBeforeWatch.js +18 -14
- package/features/hooks/AdminBeforeWatch/AdminBeforeWatch.js.map +1 -1
- package/features/hooks/AdminBeforeWatch/index.js +0 -2
- package/features/hooks/AfterBuild/AfterBuild.js +19 -15
- package/features/hooks/AfterBuild/AfterBuild.js.map +1 -1
- package/features/hooks/AfterBuild/index.js +0 -2
- package/features/hooks/AfterDeploy/AfterDeploy.js +19 -15
- package/features/hooks/AfterDeploy/AfterDeploy.js.map +1 -1
- package/features/hooks/AfterDeploy/index.js +0 -2
- package/features/hooks/ApiAfterBuild/ApiBeforeBuild.js +18 -14
- package/features/hooks/ApiAfterBuild/ApiBeforeBuild.js.map +1 -1
- package/features/hooks/ApiAfterBuild/index.js +0 -2
- package/features/hooks/ApiAfterDeploy/ApiBeforeBuild.js +18 -14
- package/features/hooks/ApiAfterDeploy/ApiBeforeBuild.js.map +1 -1
- package/features/hooks/ApiAfterDeploy/index.js +0 -2
- package/features/hooks/ApiBeforeBuild/ApiBeforeBuild.js +18 -14
- package/features/hooks/ApiBeforeBuild/ApiBeforeBuild.js.map +1 -1
- package/features/hooks/ApiBeforeBuild/index.js +0 -2
- package/features/hooks/ApiBeforeDeploy/ApiBeforeDeploy.js +18 -14
- package/features/hooks/ApiBeforeDeploy/ApiBeforeDeploy.js.map +1 -1
- package/features/hooks/ApiBeforeDeploy/index.js +0 -2
- package/features/hooks/ApiBeforeWatch/ApiBeforeWatch.js +18 -14
- package/features/hooks/ApiBeforeWatch/ApiBeforeWatch.js.map +1 -1
- package/features/hooks/ApiBeforeWatch/index.js +0 -2
- package/features/hooks/BeforeBuild/BeforeBuild.js +19 -15
- package/features/hooks/BeforeBuild/BeforeBuild.js.map +1 -1
- package/features/hooks/BeforeBuild/index.js +0 -2
- package/features/hooks/BeforeDeploy/BeforeDeploy.js +19 -15
- package/features/hooks/BeforeDeploy/BeforeDeploy.js.map +1 -1
- package/features/hooks/BeforeDeploy/index.js +0 -2
- package/features/hooks/BeforeWatch/BeforeWatch.js +19 -15
- package/features/hooks/BeforeWatch/BeforeWatch.js.map +1 -1
- package/features/hooks/BeforeWatch/index.js +0 -2
- package/features/hooks/CoreAfterBuild/CoreBeforeBuild.js +18 -14
- package/features/hooks/CoreAfterBuild/CoreBeforeBuild.js.map +1 -1
- package/features/hooks/CoreAfterBuild/index.js +0 -2
- package/features/hooks/CoreAfterDeploy/CoreBeforeBuild.js +18 -14
- package/features/hooks/CoreAfterDeploy/CoreBeforeBuild.js.map +1 -1
- package/features/hooks/CoreAfterDeploy/index.js +0 -2
- package/features/hooks/CoreBeforeBuild/CoreBeforeBuild.js +18 -14
- package/features/hooks/CoreBeforeBuild/CoreBeforeBuild.js.map +1 -1
- package/features/hooks/CoreBeforeBuild/index.js +0 -2
- package/features/hooks/CoreBeforeDeploy/CoreBeforeDeploy.js +18 -14
- package/features/hooks/CoreBeforeDeploy/CoreBeforeDeploy.js.map +1 -1
- package/features/hooks/CoreBeforeDeploy/index.js +0 -2
- package/features/hooks/CoreBeforeWatch/CoreBeforeWatch.js +18 -14
- package/features/hooks/CoreBeforeWatch/CoreBeforeWatch.js.map +1 -1
- package/features/hooks/CoreBeforeWatch/index.js +0 -2
- package/features/hooks/index.js +0 -2
- package/features/index.js +0 -2
- package/index.js +5 -10
- package/index.js.map +1 -1
- package/models/AppModel.js +20 -19
- package/models/AppModel.js.map +1 -1
- package/models/AppPackageModel.js +10 -9
- package/models/AppPackageModel.js.map +1 -1
- package/models/PathModel.js +23 -26
- package/models/PathModel.js.map +1 -1
- package/models/ProjectConfigModel.js +12 -16
- package/models/ProjectConfigModel.js.map +1 -1
- package/models/ProjectModel.js +37 -36
- package/models/ProjectModel.js.map +1 -1
- package/models/UrlModel.js +23 -23
- package/models/UrlModel.js.map +1 -1
- package/models/WcpEnvironmentModel.js +23 -22
- package/models/WcpEnvironmentModel.js.map +1 -1
- package/models/WcpUserModel.js +13 -12
- package/models/WcpUserModel.js.map +1 -1
- package/models/WcpUserPatModel.js +12 -11
- package/models/WcpUserPatModel.js.map +1 -1
- package/models/index.js +0 -2
- package/package.json +15 -15
- package/rslib-runtime.js +14 -0
- package/rslib-runtime.js.map +1 -0
- package/services/BuildAppWorkspaceService/BuildAppWorkspaceService.js +62 -69
- package/services/BuildAppWorkspaceService/BuildAppWorkspaceService.js.map +1 -1
- package/services/BuildAppWorkspaceService/index.js +0 -2
- package/services/BuildProjectWorkspaceService/BuildProjectWorkspaceService.js +21 -17
- package/services/BuildProjectWorkspaceService/BuildProjectWorkspaceService.js.map +1 -1
- package/services/BuildProjectWorkspaceService/index.js +0 -2
- package/services/GetAppPackagesService/GetAppPackagesService.js +24 -23
- package/services/GetAppPackagesService/GetAppPackagesService.js.map +1 -1
- package/services/GetAppPackagesService/index.js +0 -2
- package/services/GetAppService/GetAppService.js +24 -27
- package/services/GetAppService/GetAppService.js.map +1 -1
- package/services/GetAppService/index.js +0 -2
- package/services/GetCwdService/GetCwdService.js +15 -12
- package/services/GetCwdService/GetCwdService.js.map +1 -1
- package/services/GetCwdService/index.js +0 -2
- package/services/GetProjectConfigService/EnvContext.js +29 -38
- package/services/GetProjectConfigService/EnvContext.js.map +1 -1
- package/services/GetProjectConfigService/GetProjectConfigService.js +102 -115
- package/services/GetProjectConfigService/GetProjectConfigService.js.map +1 -1
- package/services/GetProjectConfigService/ProductionEnvironmentsContext.js +13 -18
- package/services/GetProjectConfigService/ProductionEnvironmentsContext.js.map +1 -1
- package/services/GetProjectConfigService/WcpProjectLicenseContext.js +32 -37
- package/services/GetProjectConfigService/WcpProjectLicenseContext.js.map +1 -1
- package/services/GetProjectConfigService/index.js +0 -2
- package/services/GetProjectConfigService/renderConfig.js +32 -38
- package/services/GetProjectConfigService/renderConfig.js.map +1 -1
- package/services/GetProjectConfigService/renderConfigWorker.js +37 -48
- package/services/GetProjectConfigService/renderConfigWorker.js.map +1 -1
- package/services/GetProjectIdService/GetProjectIdService.js +22 -23
- package/services/GetProjectIdService/GetProjectIdService.js.map +1 -1
- package/services/GetProjectIdService/index.js +0 -2
- package/services/GetProjectService/GetProjectService.js +43 -45
- package/services/GetProjectService/GetProjectService.js.map +1 -1
- package/services/GetProjectService/index.js +0 -2
- package/services/GetProjectVersionService/GetProjectVersionService.js +23 -22
- package/services/GetProjectVersionService/GetProjectVersionService.js.map +1 -1
- package/services/GetProjectVersionService/index.js +0 -2
- package/services/GetPulumiService/GetPulumiService.js +36 -41
- package/services/GetPulumiService/GetPulumiService.js.map +1 -1
- package/services/GetPulumiService/index.js +0 -2
- package/services/InitProjectSdkService/InitProjectSdkService.js +36 -46
- package/services/InitProjectSdkService/InitProjectSdkService.js.map +1 -1
- package/services/InitProjectSdkService/applyEnvVars.js +5 -8
- package/services/InitProjectSdkService/applyEnvVars.js.map +1 -1
- package/services/InitProjectSdkService/applyWcpEnvVars.js +91 -136
- package/services/InitProjectSdkService/applyWcpEnvVars.js.map +1 -1
- package/services/InitProjectSdkService/index.js +0 -2
- package/services/InitProjectSdkService/registerDecorators.js +10 -7
- package/services/InitProjectSdkService/registerDecorators.js.map +1 -1
- package/services/InitProjectSdkService/registerHooks.js +30 -7
- package/services/InitProjectSdkService/registerHooks.js.map +1 -1
- package/services/InitProjectSdkService/registerImplementations.js +10 -11
- package/services/InitProjectSdkService/registerImplementations.js.map +1 -1
- package/services/InitProjectSdkService/registerPulumiExtensions.js +12 -9
- package/services/InitProjectSdkService/registerPulumiExtensions.js.map +1 -1
- package/services/InstallExtensionService/InstallExtensionService.js +78 -121
- package/services/InstallExtensionService/InstallExtensionService.js.map +1 -1
- package/services/InstallExtensionService/downloadFolderFromS3.js +46 -65
- package/services/InstallExtensionService/downloadFolderFromS3.js.map +1 -1
- package/services/InstallExtensionService/index.js +0 -2
- package/services/InstallExtensionService/mergePackageJson.js +15 -25
- package/services/InstallExtensionService/mergePackageJson.js.map +1 -1
- package/services/InstallExtensionService/types.js +0 -3
- package/services/InstallExtensionService/updateWebinyConfig.js +60 -137
- package/services/InstallExtensionService/updateWebinyConfig.js.map +1 -1
- package/services/IsRemotePulumiBackendService/IsRemotePulumiBackendService.js +9 -17
- package/services/IsRemotePulumiBackendService/IsRemotePulumiBackendService.js.map +1 -1
- package/services/IsRemotePulumiBackendService/index.js +0 -2
- package/services/ListAppLambdaFunctionsService/ListAppLambdaFunctionsService.js +50 -73
- package/services/ListAppLambdaFunctionsService/ListAppLambdaFunctionsService.js.map +1 -1
- package/services/ListAppLambdaFunctionsService/index.js +0 -2
- package/services/ListDeployedEnvironmentsService/ListDeployedEnvironmentsService.js +21 -23
- package/services/ListDeployedEnvironmentsService/ListDeployedEnvironmentsService.js.map +1 -1
- package/services/ListDeployedEnvironmentsService/index.js +0 -2
- package/services/ListPackagesInAppWorkspaceService/ListPackagesInAppWorkspaceService.js +34 -29
- package/services/ListPackagesInAppWorkspaceService/ListPackagesInAppWorkspaceService.js.map +1 -1
- package/services/ListPackagesInAppWorkspaceService/index.js +0 -2
- package/services/ListPackagesService/ListPackagesService.js +81 -114
- package/services/ListPackagesService/ListPackagesService.js.map +1 -1
- package/services/ListPackagesService/index.js +0 -2
- package/services/LoadEnvVarsService/LoadEnvVarsService.js +28 -29
- package/services/LoadEnvVarsService/LoadEnvVarsService.js.map +1 -1
- package/services/LoadEnvVarsService/index.js +0 -2
- package/services/LocalStorageService/LocalStorageService.js +41 -44
- package/services/LocalStorageService/LocalStorageService.js.map +1 -1
- package/services/LocalStorageService/index.js +0 -2
- package/services/LoggerService/LoggerService.js +76 -84
- package/services/LoggerService/LoggerService.js.map +1 -1
- package/services/LoggerService/index.js +0 -2
- package/services/ProjectInfoService/GetIsCiService.js +9 -8
- package/services/ProjectInfoService/GetIsCiService.js.map +1 -1
- package/services/ProjectInfoService/GetNpmVersionService.js +9 -8
- package/services/ProjectInfoService/GetNpmVersionService.js.map +1 -1
- package/services/ProjectInfoService/GetNpxVersionService.js +9 -8
- package/services/ProjectInfoService/GetNpxVersionService.js.map +1 -1
- package/services/ProjectInfoService/GetPulumiVersionService.js +38 -30
- package/services/ProjectInfoService/GetPulumiVersionService.js.map +1 -1
- package/services/ProjectInfoService/GetYarnVersionService.js +9 -8
- package/services/ProjectInfoService/GetYarnVersionService.js.map +1 -1
- package/services/ProjectInfoService/ProjectInfoService.js +56 -51
- package/services/ProjectInfoService/ProjectInfoService.js.map +1 -1
- package/services/ProjectInfoService/index.js +0 -2
- package/services/ProjectSdkParamsService/ProjectSdkParamsService.js +37 -34
- package/services/ProjectSdkParamsService/ProjectSdkParamsService.js.map +1 -1
- package/services/ProjectSdkParamsService/index.js +0 -2
- package/services/PulumiExportService/PulumiExportService.js +42 -35
- package/services/PulumiExportService/PulumiExportService.js.map +1 -1
- package/services/PulumiExportService/index.js +0 -2
- package/services/PulumiGetConfigPassphraseService/PulumiGetConfigPassphraseService.js +9 -8
- package/services/PulumiGetConfigPassphraseService/PulumiGetConfigPassphraseService.js.map +1 -1
- package/services/PulumiGetConfigPassphraseService/index.js +0 -2
- package/services/PulumiGetSecretsProviderService/PulumiGetSecretsProviderService.js +9 -8
- package/services/PulumiGetSecretsProviderService/PulumiGetSecretsProviderService.js.map +1 -1
- package/services/PulumiGetSecretsProviderService/index.js +0 -2
- package/services/PulumiGetStackOutputService/PulumiGetStackOutputService.js +108 -100
- package/services/PulumiGetStackOutputService/PulumiGetStackOutputService.js.map +1 -1
- package/services/PulumiGetStackOutputService/index.js +0 -2
- package/services/PulumiGetStackOutputService/mapStackOutput.js +17 -29
- package/services/PulumiGetStackOutputService/mapStackOutput.js.map +1 -1
- package/services/PulumiImportService/PulumiImportService.js +48 -45
- package/services/PulumiImportService/PulumiImportService.js.map +1 -1
- package/services/PulumiImportService/index.js +0 -2
- package/services/PulumiLoginService/PulumiLoginService.js +43 -40
- package/services/PulumiLoginService/PulumiLoginService.js.map +1 -1
- package/services/PulumiLoginService/index.js +0 -2
- package/services/PulumiSelectStackService/PulumiSelectStackService.js +91 -86
- package/services/PulumiSelectStackService/PulumiSelectStackService.js.map +1 -1
- package/services/PulumiSelectStackService/index.js +0 -2
- package/services/SetProjectIdService/SetProjectIdService.js +43 -57
- package/services/SetProjectIdService/SetProjectIdService.js.map +1 -1
- package/services/SetProjectIdService/index.js +0 -2
- package/services/StdioService/StdioService.js +15 -14
- package/services/StdioService/StdioService.js.map +1 -1
- package/services/StdioService/index.js +0 -2
- package/services/UiService/UiService.js +55 -58
- package/services/UiService/UiService.js.map +1 -1
- package/services/UiService/index.js +0 -2
- package/services/ValidateProjectConfigService/ValidateProjectConfigService.js +18 -19
- package/services/ValidateProjectConfigService/ValidateProjectConfigService.js.map +1 -1
- package/services/ValidateProjectConfigService/index.js +0 -2
- package/services/WatchedLambdaFunctionsService/WatchedLambdaFunctionsService.js +47 -54
- package/services/WatchedLambdaFunctionsService/WatchedLambdaFunctionsService.js.map +1 -1
- package/services/WatchedLambdaFunctionsService/index.js +0 -2
- package/services/WcpService/CreateUserPat.js +20 -23
- package/services/WcpService/CreateUserPat.js.map +1 -1
- package/services/WcpService/GenerateUserPat.js +15 -18
- package/services/WcpService/GenerateUserPat.js.map +1 -1
- package/services/WcpService/GetPatFromLocalStorage.js +9 -10
- package/services/WcpService/GetPatFromLocalStorage.js.map +1 -1
- package/services/WcpService/GetProjectEnvironment.js +34 -47
- package/services/WcpService/GetProjectEnvironment.js.map +1 -1
- package/services/WcpService/GetProjectLicense.js +28 -38
- package/services/WcpService/GetProjectLicense.js.map +1 -1
- package/services/WcpService/GetUser.js +43 -46
- package/services/WcpService/GetUser.js.map +1 -1
- package/services/WcpService/GetUserPat.js +20 -23
- package/services/WcpService/GetUserPat.js.map +1 -1
- package/services/WcpService/LogoutUser.js +9 -8
- package/services/WcpService/LogoutUser.js.map +1 -1
- package/services/WcpService/StorePatToLocalStorage.js +9 -10
- package/services/WcpService/StorePatToLocalStorage.js.map +1 -1
- package/services/WcpService/UnsetPatFromLocalStorage.js +9 -10
- package/services/WcpService/UnsetPatFromLocalStorage.js.map +1 -1
- package/services/WcpService/WcpGqlClient.js +6 -5
- package/services/WcpService/WcpGqlClient.js.map +1 -1
- package/services/WcpService/WcpService.js +74 -75
- package/services/WcpService/WcpService.js.map +1 -1
- package/services/WcpService/index.js +0 -2
- package/services/index.js +0 -2
- package/utils/ExtensionSrcResolver.js +51 -106
- package/utils/ExtensionSrcResolver.js.map +1 -1
- package/utils/constants.js +8 -7
- package/utils/constants.js.map +1 -1
- package/utils/createPathResolver.js +2 -5
- package/utils/createPathResolver.js.map +1 -1
- package/utils/env/configuration.js +16 -25
- package/utils/env/configuration.js.map +1 -1
- package/utils/env/index.js +0 -2
- package/utils/env/types.js +0 -3
- package/utils/env/withEnv.js +4 -7
- package/utils/env/withEnv.js.map +1 -1
- package/utils/env/withEnvVariant.js +8 -11
- package/utils/env/withEnvVariant.js.map +1 -1
- package/utils/env/withProjectName.js +4 -9
- package/utils/env/withProjectName.js.map +1 -1
- package/utils/env/withPulumiConfigPassphrase.js +4 -8
- package/utils/env/withPulumiConfigPassphrase.js.map +1 -1
- package/utils/env/withRegion.js +10 -17
- package/utils/env/withRegion.js.map +1 -1
- package/utils/getRandomColorForString.js +86 -8
- package/utils/getRandomColorForString.js.map +1 -1
- package/utils/getStackName.js +11 -18
- package/utils/getStackName.js.map +1 -1
- package/utils/getTemplatesFolderPath.js +6 -8
- package/utils/getTemplatesFolderPath.js.map +1 -1
- package/utils/index.js +0 -2
- package/utils/isValidRegionName.js +8 -13
- package/utils/isValidRegionName.js.map +1 -1
- package/utils/isValidVariantName.js +11 -10
- package/utils/isValidVariantName.js.map +1 -1
- package/utils/measureDuration.js +7 -8
- package/utils/measureDuration.js.map +1 -1
- package/utils/projectSdkContext.js +23 -39
- package/utils/projectSdkContext.js.map +1 -1
- package/utils/regions.js +75 -63
- package/utils/regions.js.map +1 -1
- package/utils/registerExtension.js +6 -15
- package/utils/registerExtension.js.map +1 -1
- package/utils/requireConfig.js +7 -12
- package/utils/requireConfig.js.map +1 -1
- package/utils/toImportSpecifier.js +3 -9
- package/utils/toImportSpecifier.js.map +1 -1
- package/abstractions/features/hooks/index.js.map +0 -1
- package/abstractions/features/index.js.map +0 -1
- package/abstractions/index.js.map +0 -1
- package/abstractions/models/IAppModel.js.map +0 -1
- package/abstractions/models/IAppPackageModel.js.map +0 -1
- package/abstractions/models/IPathModel.js.map +0 -1
- package/abstractions/models/IProjectConfigDto.js.map +0 -1
- package/abstractions/models/IProjectConfigModel.js.map +0 -1
- package/abstractions/models/IProjectModel.js.map +0 -1
- package/abstractions/models/IUrlModel.js.map +0 -1
- package/abstractions/models/IWcpEnvironmentDto.js.map +0 -1
- package/abstractions/models/IWcpEnvironmentModel.js.map +0 -1
- package/abstractions/models/IWcpUserDto.js.map +0 -1
- package/abstractions/models/IWcpUserModel.js.map +0 -1
- package/abstractions/models/IWcpUserPatDto.js.map +0 -1
- package/abstractions/models/IWcpUserPatModel.js.map +0 -1
- package/abstractions/models/PackagesBuilder/IPackagesBuilder.js.map +0 -1
- package/abstractions/models/PackagesBuilder/IRunnableBuildProcess.js.map +0 -1
- package/abstractions/models/PackagesBuilder/IRunnableBuildProcesses.js.map +0 -1
- package/abstractions/models/PackagesBuilder/index.js.map +0 -1
- package/abstractions/models/index.js.map +0 -1
- package/abstractions/services/ProjectInfoService/index.js.map +0 -1
- package/abstractions/services/index.js.map +0 -1
- package/abstractions/types.js.map +0 -1
- package/decorators/index.js.map +0 -1
- package/defineExtension/index.js.map +0 -1
- package/defineExtension/models/index.js.map +0 -1
- package/defineExtension/types.js.map +0 -1
- package/exports/infra/admin.js.map +0 -1
- package/exports/infra/api.js.map +0 -1
- package/exports/infra/core.js.map +0 -1
- package/exports/infra.js.map +0 -1
- package/extensions/hooks/index.js.map +0 -1
- package/extensions/infra/index.js.map +0 -1
- package/extensions/pulumi/index.js.map +0 -1
- package/features/BuildApp/index.js.map +0 -1
- package/features/DeployApp/index.js.map +0 -1
- package/features/DestroyApp/index.js.map +0 -1
- package/features/ExportStack/index.js.map +0 -1
- package/features/GetApp/index.js.map +0 -1
- package/features/GetAppOutput/index.js.map +0 -1
- package/features/GetAppStackOutput/index.js.map +0 -1
- package/features/GetFeatureFlags/index.js.map +0 -1
- package/features/GetLogger/index.js.map +0 -1
- package/features/GetProductionEnvironments/index.js.map +0 -1
- package/features/GetProject/index.js.map +0 -1
- package/features/GetProjectConfig/index.js.map +0 -1
- package/features/GetProjectInfo/index.js.map +0 -1
- package/features/GetPulumiResourceNamePrefix/index.js.map +0 -1
- package/features/InstallExtension/index.js.map +0 -1
- package/features/IsCi/index.js.map +0 -1
- package/features/IsTelemetryEnabled/index.js.map +0 -1
- package/features/IsWcpEnabled/index.js.map +0 -1
- package/features/IsWebinyJsRepo/index.js.map +0 -1
- package/features/RefreshApp/index.js.map +0 -1
- package/features/RunPulumiCommand/index.js.map +0 -1
- package/features/ValidateProjectConfig/index.js.map +0 -1
- package/features/Watch/index.js.map +0 -1
- package/features/hooks/AdminAfterBuild/index.js.map +0 -1
- package/features/hooks/AdminAfterDeploy/index.js.map +0 -1
- package/features/hooks/AdminBeforeBuild/index.js.map +0 -1
- package/features/hooks/AdminBeforeDeploy/index.js.map +0 -1
- package/features/hooks/AdminBeforeWatch/index.js.map +0 -1
- package/features/hooks/AfterBuild/index.js.map +0 -1
- package/features/hooks/AfterDeploy/index.js.map +0 -1
- package/features/hooks/ApiAfterBuild/index.js.map +0 -1
- package/features/hooks/ApiAfterDeploy/index.js.map +0 -1
- package/features/hooks/ApiBeforeBuild/index.js.map +0 -1
- package/features/hooks/ApiBeforeDeploy/index.js.map +0 -1
- package/features/hooks/ApiBeforeWatch/index.js.map +0 -1
- package/features/hooks/BeforeBuild/index.js.map +0 -1
- package/features/hooks/BeforeDeploy/index.js.map +0 -1
- package/features/hooks/BeforeWatch/index.js.map +0 -1
- package/features/hooks/CoreAfterBuild/index.js.map +0 -1
- package/features/hooks/CoreAfterDeploy/index.js.map +0 -1
- package/features/hooks/CoreBeforeBuild/index.js.map +0 -1
- package/features/hooks/CoreBeforeDeploy/index.js.map +0 -1
- package/features/hooks/CoreBeforeWatch/index.js.map +0 -1
- package/features/hooks/index.js.map +0 -1
- package/features/index.js.map +0 -1
- package/models/index.js.map +0 -1
- package/services/BuildAppWorkspaceService/index.js.map +0 -1
- package/services/BuildProjectWorkspaceService/index.js.map +0 -1
- package/services/GetAppPackagesService/index.js.map +0 -1
- package/services/GetAppService/index.js.map +0 -1
- package/services/GetCwdService/index.js.map +0 -1
- package/services/GetProjectConfigService/index.js.map +0 -1
- package/services/GetProjectIdService/index.js.map +0 -1
- package/services/GetProjectService/index.js.map +0 -1
- package/services/GetProjectVersionService/index.js.map +0 -1
- package/services/GetPulumiService/index.js.map +0 -1
- package/services/InitProjectSdkService/index.js.map +0 -1
- package/services/InstallExtensionService/index.js.map +0 -1
- package/services/InstallExtensionService/types.js.map +0 -1
- package/services/IsRemotePulumiBackendService/index.js.map +0 -1
- package/services/ListAppLambdaFunctionsService/index.js.map +0 -1
- package/services/ListDeployedEnvironmentsService/index.js.map +0 -1
- package/services/ListPackagesInAppWorkspaceService/index.js.map +0 -1
- package/services/ListPackagesService/index.js.map +0 -1
- package/services/LoadEnvVarsService/index.js.map +0 -1
- package/services/LocalStorageService/index.js.map +0 -1
- package/services/LoggerService/index.js.map +0 -1
- package/services/ProjectInfoService/index.js.map +0 -1
- package/services/ProjectSdkParamsService/index.js.map +0 -1
- package/services/PulumiExportService/index.js.map +0 -1
- package/services/PulumiGetConfigPassphraseService/index.js.map +0 -1
- package/services/PulumiGetSecretsProviderService/index.js.map +0 -1
- package/services/PulumiGetStackOutputService/index.js.map +0 -1
- package/services/PulumiImportService/index.js.map +0 -1
- package/services/PulumiLoginService/index.js.map +0 -1
- package/services/PulumiSelectStackService/index.js.map +0 -1
- package/services/SetProjectIdService/index.js.map +0 -1
- package/services/StdioService/index.js.map +0 -1
- package/services/UiService/index.js.map +0 -1
- package/services/ValidateProjectConfigService/index.js.map +0 -1
- package/services/WatchedLambdaFunctionsService/index.js.map +0 -1
- package/services/WcpService/index.js.map +0 -1
- package/services/index.js.map +0 -1
- package/utils/env/index.js.map +0 -1
- package/utils/env/types.js.map +0 -1
- package/utils/index.js.map +0 -1
|
@@ -1,128 +1,115 @@
|
|
|
1
1
|
import { createImplementation } from "@webiny/di";
|
|
2
2
|
import { GetProjectConfigService, GetProjectService, LoggerService, ProjectSdkParamsService } from "../../abstractions/index.js";
|
|
3
|
-
import { ExtensionDefinitions
|
|
3
|
+
import { ExtensionDefinitions } from "../../extensions/ExtensionDefinitions.js";
|
|
4
4
|
import { ExtensionInstanceModel } from "../../defineExtension/index.js";
|
|
5
5
|
import { ProjectConfigModel } from "../../models/ProjectConfigModel.js";
|
|
6
6
|
import { toImportSpecifier } from "../../utils/index.js";
|
|
7
7
|
import { renderConfig } from "./renderConfig.js";
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
async execute(params = {}) {
|
|
16
|
-
const project = this.getProjectService.execute();
|
|
17
|
-
const currentTime = Date.now();
|
|
18
|
-
const cacheKey = JSON.stringify(params.renderArgs);
|
|
19
|
-
if (!this.cachedRenderedConfigs[cacheKey]) {
|
|
20
|
-
this.loggerService.info({
|
|
21
|
-
renderArgs: params.renderArgs
|
|
22
|
-
}, `Rendering project config...`);
|
|
23
|
-
try {
|
|
24
|
-
const projectSdkParams = this.projectSdkParamsService.get();
|
|
25
|
-
this.cachedRenderedConfigs[cacheKey] = await renderConfig({
|
|
26
|
-
project,
|
|
27
|
-
args: params.renderArgs,
|
|
28
|
-
sdkParams: projectSdkParams
|
|
29
|
-
});
|
|
30
|
-
} catch (err) {
|
|
31
|
-
this.loggerService.error({
|
|
32
|
-
err
|
|
33
|
-
}, `There was an error while rendering the project config. `);
|
|
34
|
-
throw new Error(`An error occurred while rendering "webiny.config.tsx" config file:\n${err.message}`);
|
|
35
|
-
}
|
|
36
|
-
} else {
|
|
37
|
-
this.loggerService.info({
|
|
38
|
-
renderArgs: params.renderArgs
|
|
39
|
-
}, `Skipping rendering project config (cache hit)...`);
|
|
40
|
-
}
|
|
41
|
-
const renderedConfig = this.cachedRenderedConfigs[cacheKey];
|
|
42
|
-
this.loggerService.debug({
|
|
43
|
-
config: renderedConfig
|
|
44
|
-
}, `Project config rendering complete.`);
|
|
45
|
-
const hydratedConfig = await this.hydrateConfig(renderedConfig, params);
|
|
46
|
-
this.loggerService.debug({
|
|
47
|
-
config: hydratedConfig
|
|
48
|
-
}, `Project config hydration complete.`);
|
|
49
|
-
const model = ProjectConfigModel.create(hydratedConfig);
|
|
50
|
-
const duration = Date.now() - currentTime;
|
|
51
|
-
this.loggerService.info(`Project config rendered and hydrated in ${duration}ms.`);
|
|
52
|
-
return model;
|
|
53
|
-
}
|
|
54
|
-
async hydrateConfig(configDto, params) {
|
|
55
|
-
const projectSdkParams = this.projectSdkParamsService.get();
|
|
56
|
-
const project = this.getProjectService.execute();
|
|
57
|
-
const importFromPath = filePath => {
|
|
58
|
-
let importPath;
|
|
59
|
-
if (filePath.startsWith("/extensions/")) {
|
|
60
|
-
// Resolve from project root.
|
|
61
|
-
importPath = project.paths.rootFolder.join(filePath).toString();
|
|
62
|
-
} else {
|
|
63
|
-
// Treat as absolute path.
|
|
64
|
-
importPath = filePath;
|
|
65
|
-
}
|
|
66
|
-
return import(toImportSpecifier(importPath));
|
|
67
|
-
};
|
|
68
|
-
const tagsFilters = params?.tags || {};
|
|
69
|
-
|
|
70
|
-
// Exclude extra extension definitions because we are handling these separately.
|
|
71
|
-
const extensionDefinitionsType = ExtensionDefinitionsExtension.def.type;
|
|
72
|
-
const extensionsTypes = Object.keys(configDto).filter(key => key !== extensionDefinitionsType);
|
|
73
|
-
const allExtensionDefinitions = projectSdkParams.extensions;
|
|
74
|
-
|
|
75
|
-
// Extra definitions registered via config (e.g. `packages/project-aws/src/Webiny.tsx`).
|
|
76
|
-
const extensionDefinitionsExtensions = configDto[extensionDefinitionsType] || [];
|
|
77
|
-
for (const ext of extensionDefinitionsExtensions) {
|
|
78
|
-
// Load the extension from give `src`.
|
|
79
|
-
const {
|
|
80
|
-
default: importedExtensionDefinitions
|
|
81
|
-
} = await importFromPath(ext.src);
|
|
82
|
-
allExtensionDefinitions?.push(...importedExtensionDefinitions);
|
|
8
|
+
class DefaultGetProjectConfigService {
|
|
9
|
+
constructor(getProjectService, projectSdkParamsService, loggerService){
|
|
10
|
+
this.getProjectService = getProjectService;
|
|
11
|
+
this.projectSdkParamsService = projectSdkParamsService;
|
|
12
|
+
this.loggerService = loggerService;
|
|
13
|
+
this.cachedRenderedConfigs = {};
|
|
83
14
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
15
|
+
async execute(params = {}) {
|
|
16
|
+
const project = this.getProjectService.execute();
|
|
17
|
+
const currentTime = Date.now();
|
|
18
|
+
const cacheKey = JSON.stringify(params.renderArgs);
|
|
19
|
+
if (this.cachedRenderedConfigs[cacheKey]) this.loggerService.info({
|
|
20
|
+
renderArgs: params.renderArgs
|
|
21
|
+
}, "Skipping rendering project config (cache hit)...");
|
|
22
|
+
else {
|
|
23
|
+
this.loggerService.info({
|
|
24
|
+
renderArgs: params.renderArgs
|
|
25
|
+
}, "Rendering project config...");
|
|
26
|
+
try {
|
|
27
|
+
const projectSdkParams = this.projectSdkParamsService.get();
|
|
28
|
+
this.cachedRenderedConfigs[cacheKey] = await renderConfig({
|
|
29
|
+
project,
|
|
30
|
+
args: params.renderArgs,
|
|
31
|
+
sdkParams: projectSdkParams
|
|
32
|
+
});
|
|
33
|
+
} catch (err) {
|
|
34
|
+
this.loggerService.error({
|
|
35
|
+
err
|
|
36
|
+
}, "There was an error while rendering the project config. ");
|
|
37
|
+
throw new Error(`An error occurred while rendering "webiny.config.tsx" config file:\n${err.message}`);
|
|
38
|
+
}
|
|
97
39
|
}
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
40
|
+
const renderedConfig = this.cachedRenderedConfigs[cacheKey];
|
|
41
|
+
this.loggerService.debug({
|
|
42
|
+
config: renderedConfig
|
|
43
|
+
}, "Project config rendering complete.");
|
|
44
|
+
const hydratedConfig = await this.hydrateConfig(renderedConfig, params);
|
|
45
|
+
this.loggerService.debug({
|
|
46
|
+
config: hydratedConfig
|
|
47
|
+
}, "Project config hydration complete.");
|
|
48
|
+
const model = ProjectConfigModel.create(hydratedConfig);
|
|
49
|
+
const duration = Date.now() - currentTime;
|
|
50
|
+
this.loggerService.info(`Project config rendered and hydrated in ${duration}ms.`);
|
|
51
|
+
return model;
|
|
52
|
+
}
|
|
53
|
+
async hydrateConfig(configDto, params) {
|
|
54
|
+
const projectSdkParams = this.projectSdkParamsService.get();
|
|
55
|
+
const project = this.getProjectService.execute();
|
|
56
|
+
const importFromPath = (filePath)=>{
|
|
57
|
+
let importPath;
|
|
58
|
+
importPath = filePath.startsWith("/extensions/") ? project.paths.rootFolder.join(filePath).toString() : filePath;
|
|
59
|
+
return import(toImportSpecifier(importPath));
|
|
60
|
+
};
|
|
61
|
+
const tagsFilters = params?.tags || {};
|
|
62
|
+
const extensionDefinitionsType = ExtensionDefinitions.def.type;
|
|
63
|
+
const extensionsTypes = Object.keys(configDto).filter((key)=>key !== extensionDefinitionsType);
|
|
64
|
+
const allExtensionDefinitions = projectSdkParams.extensions;
|
|
65
|
+
const extensionDefinitionsExtensions = configDto[extensionDefinitionsType] || [];
|
|
66
|
+
for (const ext of extensionDefinitionsExtensions){
|
|
67
|
+
const { default: importedExtensionDefinitions } = await importFromPath(ext.src);
|
|
68
|
+
allExtensionDefinitions?.push(...importedExtensionDefinitions);
|
|
110
69
|
}
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
});
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
70
|
+
this.loggerService.info({
|
|
71
|
+
scopesFilter: tagsFilters
|
|
72
|
+
}, "Hydrating project config...");
|
|
73
|
+
return extensionsTypes.reduce((acc, extensionType)=>{
|
|
74
|
+
const oneOrMoreExtensions = configDto[extensionType];
|
|
75
|
+
const extensionsArray = Array.isArray(oneOrMoreExtensions) ? [
|
|
76
|
+
...oneOrMoreExtensions
|
|
77
|
+
] : [
|
|
78
|
+
oneOrMoreExtensions
|
|
79
|
+
];
|
|
80
|
+
const matchedExtensions = extensionsArray.map((extensionParams)=>{
|
|
81
|
+
const extDef = projectSdkParams.extensions?.find((e)=>e.type === extensionType);
|
|
82
|
+
if (!extDef) {
|
|
83
|
+
this.loggerService.warn(`Could not find extension definition for type: ${extensionType}. Skipping...`);
|
|
84
|
+
return null;
|
|
85
|
+
}
|
|
86
|
+
if (Object.keys(tagsFilters).length > 0) {
|
|
87
|
+
const extDefTags = extDef.tags;
|
|
88
|
+
const hasMatchingTags = Object.keys(tagsFilters).every((tag)=>{
|
|
89
|
+
const filterValue = tagsFilters[tag];
|
|
90
|
+
const extDefValue = extDefTags[tag];
|
|
91
|
+
return extDefValue === filterValue;
|
|
92
|
+
});
|
|
93
|
+
if (!hasMatchingTags) return null;
|
|
94
|
+
}
|
|
95
|
+
return new ExtensionInstanceModel(extDef, extensionParams, {
|
|
96
|
+
project
|
|
97
|
+
});
|
|
98
|
+
}).filter(Boolean);
|
|
99
|
+
if (matchedExtensions.length > 0) acc[extensionType] = matchedExtensions;
|
|
100
|
+
return acc;
|
|
101
|
+
}, {});
|
|
102
|
+
}
|
|
121
103
|
}
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
104
|
+
const getProjectConfigService = createImplementation({
|
|
105
|
+
abstraction: GetProjectConfigService,
|
|
106
|
+
implementation: DefaultGetProjectConfigService,
|
|
107
|
+
dependencies: [
|
|
108
|
+
GetProjectService,
|
|
109
|
+
ProjectSdkParamsService,
|
|
110
|
+
LoggerService
|
|
111
|
+
]
|
|
126
112
|
});
|
|
113
|
+
export { DefaultGetProjectConfigService, getProjectConfigService };
|
|
127
114
|
|
|
128
115
|
//# sourceMappingURL=GetProjectConfigService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createImplementation","GetProjectConfigService","GetProjectService","LoggerService","ProjectSdkParamsService","ExtensionDefinitions","ExtensionDefinitionsExtension","ExtensionInstanceModel","ProjectConfigModel","toImportSpecifier","renderConfig","DefaultGetProjectConfigService","cachedRenderedConfigs","constructor","getProjectService","projectSdkParamsService","loggerService","execute","params","project","currentTime","Date","now","cacheKey","JSON","stringify","renderArgs","info","projectSdkParams","get","args","sdkParams","err","error","Error","message","renderedConfig","debug","config","hydratedConfig","hydrateConfig","model","create","duration","configDto","importFromPath","filePath","importPath","startsWith","paths","rootFolder","join","toString","tagsFilters","tags","extensionDefinitionsType","def","type","extensionsTypes","Object","keys","filter","key","allExtensionDefinitions","extensions","extensionDefinitionsExtensions","ext","default","importedExtensionDefinitions","src","push","scopesFilter","reduce","acc","extensionType","oneOrMoreExtensions","extensionsArray","Array","isArray","matchedExtensions","map","extensionParams","extDef","find","e","warn","length","extDefTags","hasMatchingTags","every","tag","filterValue","extDefValue","Boolean","getProjectConfigService","abstraction","implementation","dependencies"],"sources":["GetProjectConfigService.ts"],"sourcesContent":["import { createImplementation } from \"@webiny/di\";\nimport {\n GetProjectConfigService,\n GetProjectService,\n LoggerService,\n ProjectSdkParamsService\n} from \"~/abstractions/index.js\";\nimport {\n type ExtensionDto,\n type ExtensionType,\n type IHydratedProjectConfig,\n type IProjectConfigDto\n} from \"~/abstractions/models/index.js\";\nimport { ExtensionDefinitions as ExtensionDefinitionsExtension } from \"~/extensions/ExtensionDefinitions.js\";\nimport { ExtensionInstanceModel } from \"~/defineExtension/index.js\";\nimport { ProjectConfigModel } from \"~/models/ProjectConfigModel.js\";\nimport { toImportSpecifier } from \"~/utils/index.js\";\nimport { renderConfig } from \"./renderConfig.js\";\n\nexport class DefaultGetProjectConfigService implements GetProjectConfigService.Interface {\n cachedRenderedConfigs: Record<string, IProjectConfigDto> = {};\n\n constructor(\n private readonly getProjectService: GetProjectService.Interface,\n private readonly projectSdkParamsService: ProjectSdkParamsService.Interface,\n private readonly loggerService: LoggerService.Interface\n ) {}\n\n async execute(\n params: GetProjectConfigService.Params = {}\n ): Promise<GetProjectConfigService.Result> {\n const project = this.getProjectService.execute();\n\n const currentTime = Date.now();\n const cacheKey = JSON.stringify(params.renderArgs);\n if (!this.cachedRenderedConfigs[cacheKey]) {\n this.loggerService.info(\n { renderArgs: params.renderArgs },\n `Rendering project config...`\n );\n\n try {\n const projectSdkParams = this.projectSdkParamsService.get();\n this.cachedRenderedConfigs[cacheKey] = await renderConfig({\n project,\n args: params.renderArgs,\n sdkParams: projectSdkParams\n });\n } catch (err) {\n this.loggerService.error(\n { err },\n `There was an error while rendering the project config. `\n );\n\n throw new Error(\n `An error occurred while rendering \"webiny.config.tsx\" config file:\\n${err.message}`\n );\n }\n } else {\n this.loggerService.info(\n { renderArgs: params.renderArgs },\n `Skipping rendering project config (cache hit)...`\n );\n }\n\n const renderedConfig = this.cachedRenderedConfigs[cacheKey];\n this.loggerService.debug({ config: renderedConfig }, `Project config rendering complete.`);\n\n const hydratedConfig = await this.hydrateConfig(renderedConfig, params);\n this.loggerService.debug({ config: hydratedConfig }, `Project config hydration complete.`);\n\n const model = ProjectConfigModel.create(hydratedConfig);\n\n const duration = Date.now() - currentTime;\n this.loggerService.info(`Project config rendered and hydrated in ${duration}ms.`);\n\n return model;\n }\n\n private async hydrateConfig(\n configDto: IProjectConfigDto,\n params: GetProjectConfigService.Params\n ): Promise<IHydratedProjectConfig> {\n const projectSdkParams = this.projectSdkParamsService.get();\n const project = this.getProjectService.execute();\n\n const importFromPath = (filePath: string) => {\n let importPath: string;\n if (filePath.startsWith(\"/extensions/\")) {\n // Resolve from project root.\n importPath = project.paths.rootFolder.join(filePath).toString();\n } else {\n // Treat as absolute path.\n importPath = filePath;\n }\n\n return import(toImportSpecifier(importPath));\n };\n\n const tagsFilters = params?.tags || {};\n\n // Exclude extra extension definitions because we are handling these separately.\n const extensionDefinitionsType = ExtensionDefinitionsExtension.def.type;\n\n const extensionsTypes = Object.keys(configDto).filter(\n key => key !== extensionDefinitionsType\n ) as ExtensionType[];\n\n const allExtensionDefinitions = projectSdkParams.extensions;\n\n // Extra definitions registered via config (e.g. `packages/project-aws/src/Webiny.tsx`).\n const extensionDefinitionsExtensions = (configDto[extensionDefinitionsType] ||\n []) as ExtensionDto[];\n\n for (const ext of extensionDefinitionsExtensions) {\n // Load the extension from give `src`.\n const { default: importedExtensionDefinitions } = await importFromPath(ext.src);\n\n allExtensionDefinitions?.push(...importedExtensionDefinitions);\n }\n\n this.loggerService.info({ scopesFilter: tagsFilters }, `Hydrating project config...`);\n\n return extensionsTypes.reduce<IHydratedProjectConfig>(\n (acc, extensionType: ExtensionType) => {\n const oneOrMoreExtensions = configDto[extensionType];\n const extensionsArray = Array.isArray(oneOrMoreExtensions)\n ? [...oneOrMoreExtensions]\n : [oneOrMoreExtensions];\n\n const matchedExtensions = extensionsArray\n .map(extensionParams => {\n const extDef = projectSdkParams.extensions?.find(e => {\n return e.type === extensionType;\n });\n\n if (!extDef) {\n this.loggerService.warn(\n `Could not find extension definition for type: ${extensionType}. Skipping...`\n );\n return null;\n }\n\n if (Object.keys(tagsFilters).length > 0) {\n const extDefTags = extDef.tags;\n\n const hasMatchingTags = Object.keys(tagsFilters).every(tag => {\n const filterValue = tagsFilters[tag];\n const extDefValue = extDefTags[tag];\n\n // Otherwise, check for strict equality.\n return extDefValue === filterValue;\n });\n\n if (!hasMatchingTags) {\n return null;\n }\n }\n\n return new ExtensionInstanceModel(extDef, extensionParams, { project });\n })\n .filter(Boolean) as ExtensionInstanceModel<any>[];\n\n if (matchedExtensions.length > 0) {\n acc[extensionType] = matchedExtensions;\n }\n\n return acc;\n },\n {} as IHydratedProjectConfig\n );\n }\n}\n\nexport const getProjectConfigService = createImplementation({\n abstraction: GetProjectConfigService,\n implementation: DefaultGetProjectConfigService,\n dependencies: [GetProjectService, ProjectSdkParamsService, LoggerService]\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"services/GetProjectConfigService/GetProjectConfigService.js","sources":["../../../src/services/GetProjectConfigService/GetProjectConfigService.ts"],"sourcesContent":["import { createImplementation } from \"@webiny/di\";\nimport {\n GetProjectConfigService,\n GetProjectService,\n LoggerService,\n ProjectSdkParamsService\n} from \"~/abstractions/index.js\";\nimport {\n type ExtensionDto,\n type ExtensionType,\n type IHydratedProjectConfig,\n type IProjectConfigDto\n} from \"~/abstractions/models/index.js\";\nimport { ExtensionDefinitions as ExtensionDefinitionsExtension } from \"~/extensions/ExtensionDefinitions.js\";\nimport { ExtensionInstanceModel } from \"~/defineExtension/index.js\";\nimport { ProjectConfigModel } from \"~/models/ProjectConfigModel.js\";\nimport { toImportSpecifier } from \"~/utils/index.js\";\nimport { renderConfig } from \"./renderConfig.js\";\n\nexport class DefaultGetProjectConfigService implements GetProjectConfigService.Interface {\n cachedRenderedConfigs: Record<string, IProjectConfigDto> = {};\n\n constructor(\n private readonly getProjectService: GetProjectService.Interface,\n private readonly projectSdkParamsService: ProjectSdkParamsService.Interface,\n private readonly loggerService: LoggerService.Interface\n ) {}\n\n async execute(\n params: GetProjectConfigService.Params = {}\n ): Promise<GetProjectConfigService.Result> {\n const project = this.getProjectService.execute();\n\n const currentTime = Date.now();\n const cacheKey = JSON.stringify(params.renderArgs);\n if (!this.cachedRenderedConfigs[cacheKey]) {\n this.loggerService.info(\n { renderArgs: params.renderArgs },\n `Rendering project config...`\n );\n\n try {\n const projectSdkParams = this.projectSdkParamsService.get();\n this.cachedRenderedConfigs[cacheKey] = await renderConfig({\n project,\n args: params.renderArgs,\n sdkParams: projectSdkParams\n });\n } catch (err) {\n this.loggerService.error(\n { err },\n `There was an error while rendering the project config. `\n );\n\n throw new Error(\n `An error occurred while rendering \"webiny.config.tsx\" config file:\\n${err.message}`\n );\n }\n } else {\n this.loggerService.info(\n { renderArgs: params.renderArgs },\n `Skipping rendering project config (cache hit)...`\n );\n }\n\n const renderedConfig = this.cachedRenderedConfigs[cacheKey];\n this.loggerService.debug({ config: renderedConfig }, `Project config rendering complete.`);\n\n const hydratedConfig = await this.hydrateConfig(renderedConfig, params);\n this.loggerService.debug({ config: hydratedConfig }, `Project config hydration complete.`);\n\n const model = ProjectConfigModel.create(hydratedConfig);\n\n const duration = Date.now() - currentTime;\n this.loggerService.info(`Project config rendered and hydrated in ${duration}ms.`);\n\n return model;\n }\n\n private async hydrateConfig(\n configDto: IProjectConfigDto,\n params: GetProjectConfigService.Params\n ): Promise<IHydratedProjectConfig> {\n const projectSdkParams = this.projectSdkParamsService.get();\n const project = this.getProjectService.execute();\n\n const importFromPath = (filePath: string) => {\n let importPath: string;\n if (filePath.startsWith(\"/extensions/\")) {\n // Resolve from project root.\n importPath = project.paths.rootFolder.join(filePath).toString();\n } else {\n // Treat as absolute path.\n importPath = filePath;\n }\n\n return import(toImportSpecifier(importPath));\n };\n\n const tagsFilters = params?.tags || {};\n\n // Exclude extra extension definitions because we are handling these separately.\n const extensionDefinitionsType = ExtensionDefinitionsExtension.def.type;\n\n const extensionsTypes = Object.keys(configDto).filter(\n key => key !== extensionDefinitionsType\n ) as ExtensionType[];\n\n const allExtensionDefinitions = projectSdkParams.extensions;\n\n // Extra definitions registered via config (e.g. `packages/project-aws/src/Webiny.tsx`).\n const extensionDefinitionsExtensions = (configDto[extensionDefinitionsType] ||\n []) as ExtensionDto[];\n\n for (const ext of extensionDefinitionsExtensions) {\n // Load the extension from give `src`.\n const { default: importedExtensionDefinitions } = await importFromPath(ext.src);\n\n allExtensionDefinitions?.push(...importedExtensionDefinitions);\n }\n\n this.loggerService.info({ scopesFilter: tagsFilters }, `Hydrating project config...`);\n\n return extensionsTypes.reduce<IHydratedProjectConfig>(\n (acc, extensionType: ExtensionType) => {\n const oneOrMoreExtensions = configDto[extensionType];\n const extensionsArray = Array.isArray(oneOrMoreExtensions)\n ? [...oneOrMoreExtensions]\n : [oneOrMoreExtensions];\n\n const matchedExtensions = extensionsArray\n .map(extensionParams => {\n const extDef = projectSdkParams.extensions?.find(e => {\n return e.type === extensionType;\n });\n\n if (!extDef) {\n this.loggerService.warn(\n `Could not find extension definition for type: ${extensionType}. Skipping...`\n );\n return null;\n }\n\n if (Object.keys(tagsFilters).length > 0) {\n const extDefTags = extDef.tags;\n\n const hasMatchingTags = Object.keys(tagsFilters).every(tag => {\n const filterValue = tagsFilters[tag];\n const extDefValue = extDefTags[tag];\n\n // Otherwise, check for strict equality.\n return extDefValue === filterValue;\n });\n\n if (!hasMatchingTags) {\n return null;\n }\n }\n\n return new ExtensionInstanceModel(extDef, extensionParams, { project });\n })\n .filter(Boolean) as ExtensionInstanceModel<any>[];\n\n if (matchedExtensions.length > 0) {\n acc[extensionType] = matchedExtensions;\n }\n\n return acc;\n },\n {} as IHydratedProjectConfig\n );\n }\n}\n\nexport const getProjectConfigService = createImplementation({\n abstraction: GetProjectConfigService,\n implementation: DefaultGetProjectConfigService,\n dependencies: [GetProjectService, ProjectSdkParamsService, LoggerService]\n});\n"],"names":["DefaultGetProjectConfigService","getProjectService","projectSdkParamsService","loggerService","params","project","currentTime","Date","cacheKey","JSON","projectSdkParams","renderConfig","err","Error","renderedConfig","hydratedConfig","model","ProjectConfigModel","duration","configDto","importFromPath","filePath","importPath","toImportSpecifier","tagsFilters","extensionDefinitionsType","ExtensionDefinitionsExtension","extensionsTypes","Object","key","allExtensionDefinitions","extensionDefinitionsExtensions","ext","importedExtensionDefinitions","acc","extensionType","oneOrMoreExtensions","extensionsArray","Array","matchedExtensions","extensionParams","extDef","e","extDefTags","hasMatchingTags","tag","filterValue","extDefValue","ExtensionInstanceModel","Boolean","getProjectConfigService","createImplementation","GetProjectConfigService","GetProjectService","ProjectSdkParamsService","LoggerService"],"mappings":"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"}
|
|
@@ -1,21 +1,16 @@
|
|
|
1
|
-
import
|
|
2
|
-
const ProductionEnvironmentsContext = /*#__PURE__*/createContext(null);
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
}
|
|
12
|
-
}, children);
|
|
13
|
-
};
|
|
14
|
-
export const useProductionEnvironments = () => {
|
|
15
|
-
return useContext(ProductionEnvironmentsContext)?.prodEnvs ?? [];
|
|
16
|
-
};
|
|
17
|
-
export const useRegisterProductionEnvironments = () => {
|
|
18
|
-
return useContext(ProductionEnvironmentsContext)?.setProdEnvs ?? null;
|
|
1
|
+
import react, { createContext, useContext, useState } from "react";
|
|
2
|
+
const ProductionEnvironmentsContext = /*#__PURE__*/ createContext(null);
|
|
3
|
+
const ProductionEnvironmentsCollector = ({ children })=>{
|
|
4
|
+
const [prodEnvs, setProdEnvs] = useState([]);
|
|
5
|
+
return /*#__PURE__*/ react.createElement(ProductionEnvironmentsContext.Provider, {
|
|
6
|
+
value: {
|
|
7
|
+
prodEnvs,
|
|
8
|
+
setProdEnvs
|
|
9
|
+
}
|
|
10
|
+
}, children);
|
|
19
11
|
};
|
|
12
|
+
const useProductionEnvironments = ()=>useContext(ProductionEnvironmentsContext)?.prodEnvs ?? [];
|
|
13
|
+
const useRegisterProductionEnvironments = ()=>useContext(ProductionEnvironmentsContext)?.setProdEnvs ?? null;
|
|
14
|
+
export { ProductionEnvironmentsCollector, useProductionEnvironments, useRegisterProductionEnvironments };
|
|
20
15
|
|
|
21
16
|
//# sourceMappingURL=ProductionEnvironmentsContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"services/GetProjectConfigService/ProductionEnvironmentsContext.js","sources":["../../../src/services/GetProjectConfigService/ProductionEnvironmentsContext.tsx"],"sourcesContent":["import React, { createContext, useContext, useState } from \"react\";\n\ninterface ProductionEnvironmentsContextValue {\n prodEnvs: string[];\n setProdEnvs: React.Dispatch<React.SetStateAction<string[]>>;\n}\n\nconst ProductionEnvironmentsContext = createContext<ProductionEnvironmentsContextValue | null>(\n null\n);\n\nexport const ProductionEnvironmentsCollector: React.FC<{ children: React.ReactNode }> = ({\n children\n}) => {\n const [prodEnvs, setProdEnvs] = useState<string[]>([]);\n return (\n <ProductionEnvironmentsContext.Provider value={{ prodEnvs, setProdEnvs }}>\n {children}\n </ProductionEnvironmentsContext.Provider>\n );\n};\n\nexport const useProductionEnvironments = (): string[] => {\n return useContext(ProductionEnvironmentsContext)?.prodEnvs ?? [];\n};\n\nexport const useRegisterProductionEnvironments = () => {\n return useContext(ProductionEnvironmentsContext)?.setProdEnvs ?? null;\n};\n"],"names":["ProductionEnvironmentsContext","createContext","ProductionEnvironmentsCollector","children","prodEnvs","setProdEnvs","useState","useProductionEnvironments","useContext","useRegisterProductionEnvironments"],"mappings":";AAOA,MAAMA,gCAAgC,WAAHA,GAAGC,cAClC;AAGG,MAAMC,kCAA2E,CAAC,EACrFC,QAAQ,EACX;IACG,MAAM,CAACC,UAAUC,YAAY,GAAGC,SAAmB,EAAE;IACrD,OAAO,WAAP,GACI,oBAACN,8BAA8B,QAAQ;QAAC,OAAO;YAAEI;YAAUC;QAAY;OAClEF;AAGb;AAEO,MAAMI,4BAA4B,IAC9BC,WAAWR,gCAAgC,YAAY,EAAE;AAG7D,MAAMS,oCAAoC,IACtCD,WAAWR,gCAAgC,eAAe"}
|
|
@@ -1,42 +1,37 @@
|
|
|
1
|
-
import
|
|
1
|
+
import react, { createContext, useContext, useMemo } from "react";
|
|
2
2
|
import { License } from "@webiny/wcp";
|
|
3
|
-
const WcpProjectLicenseContext = /*#__PURE__*/createContext(null);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
};
|
|
30
|
-
return /*#__PURE__*/React.createElement(WcpProjectLicenseContext.Provider, {
|
|
31
|
-
value: value
|
|
32
|
-
}, children);
|
|
3
|
+
const WcpProjectLicenseContext = /*#__PURE__*/ createContext(null);
|
|
4
|
+
const WcpProjectLicenseProvider = ({ children })=>{
|
|
5
|
+
const license = useMemo(()=>{
|
|
6
|
+
const licenseEnv = process.env.WCP_PROJECT_LICENSE;
|
|
7
|
+
if (!licenseEnv) return null;
|
|
8
|
+
try {
|
|
9
|
+
const licenseDto = JSON.parse(licenseEnv);
|
|
10
|
+
return License.fromLicenseDto(licenseDto);
|
|
11
|
+
} catch (e) {
|
|
12
|
+
console.warn("Failed to parse WCP_PROJECT_LICENSE environment variable. Expected valid JSON with DecryptedWcpProjectLicense format:", e);
|
|
13
|
+
return null;
|
|
14
|
+
}
|
|
15
|
+
}, []);
|
|
16
|
+
const hasLicense = !!license;
|
|
17
|
+
const value = {
|
|
18
|
+
hasLicense,
|
|
19
|
+
canUseMultiTenancy: ()=>hasLicense,
|
|
20
|
+
canUseTeams: ()=>license?.canUseTeams() ?? false,
|
|
21
|
+
canUsePrivateFiles: ()=>license?.canUsePrivateFiles() ?? false,
|
|
22
|
+
canUseFileManagerThreatDetection: ()=>license?.canUseFileManagerThreatDetection() ?? false,
|
|
23
|
+
canUseWorkflows: ()=>license?.canUseWorkflows() ?? false,
|
|
24
|
+
canUseHcmsFieldPermissions: ()=>license?.canUseHcmsFieldPermissions() ?? false
|
|
25
|
+
};
|
|
26
|
+
return /*#__PURE__*/ react.createElement(WcpProjectLicenseContext.Provider, {
|
|
27
|
+
value: value
|
|
28
|
+
}, children);
|
|
33
29
|
};
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}
|
|
39
|
-
return context;
|
|
30
|
+
const useWcpProjectLicense = ()=>{
|
|
31
|
+
const context = useContext(WcpProjectLicenseContext);
|
|
32
|
+
if (!context) throw new Error("useWcpProjectLicense must be used within a WcpProjectLicenseProvider");
|
|
33
|
+
return context;
|
|
40
34
|
};
|
|
35
|
+
export { WcpProjectLicenseProvider, useWcpProjectLicense };
|
|
41
36
|
|
|
42
37
|
//# sourceMappingURL=WcpProjectLicenseContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"services/GetProjectConfigService/WcpProjectLicenseContext.js","sources":["../../../src/services/GetProjectConfigService/WcpProjectLicenseContext.tsx"],"sourcesContent":["import React, { createContext, useContext, useMemo } from \"react\";\nimport { License } from \"@webiny/wcp\";\nimport type { DecryptedWcpProjectLicense } from \"@webiny/wcp/types.js\";\n\nexport interface WcpProjectLicenseContextValue {\n hasLicense: boolean;\n canUseMultiTenancy: () => boolean;\n canUseTeams: () => boolean;\n canUsePrivateFiles: () => boolean;\n canUseFileManagerThreatDetection: () => boolean;\n canUseWorkflows: () => boolean;\n canUseHcmsFieldPermissions: () => boolean;\n}\n\nconst WcpProjectLicenseContext = createContext<WcpProjectLicenseContextValue | null>(null);\n\nexport const WcpProjectLicenseProvider: React.FC<{ children: React.ReactNode }> = ({\n children\n}) => {\n const license = useMemo(() => {\n const licenseEnv = process.env.WCP_PROJECT_LICENSE;\n if (!licenseEnv) {\n return null;\n }\n\n try {\n const licenseDto = JSON.parse(licenseEnv) as DecryptedWcpProjectLicense;\n return License.fromLicenseDto(licenseDto);\n } catch (e) {\n console.warn(\n \"Failed to parse WCP_PROJECT_LICENSE environment variable. Expected valid JSON with DecryptedWcpProjectLicense format:\",\n e\n );\n return null;\n }\n }, []);\n\n const hasLicense = !!license;\n\n const value: WcpProjectLicenseContextValue = {\n hasLicense,\n canUseMultiTenancy: () => hasLicense,\n canUseTeams: () => license?.canUseTeams() ?? false,\n canUsePrivateFiles: () => license?.canUsePrivateFiles() ?? false,\n canUseFileManagerThreatDetection: () =>\n license?.canUseFileManagerThreatDetection() ?? false,\n canUseWorkflows: () => license?.canUseWorkflows() ?? false,\n canUseHcmsFieldPermissions: () => license?.canUseHcmsFieldPermissions() ?? false\n };\n\n return (\n <WcpProjectLicenseContext.Provider value={value}>\n {children}\n </WcpProjectLicenseContext.Provider>\n );\n};\n\nexport const useWcpProjectLicense = () => {\n const context = useContext(WcpProjectLicenseContext);\n if (!context) {\n throw new Error(\"useWcpProjectLicense must be used within a WcpProjectLicenseProvider\");\n }\n return context;\n};\n"],"names":["WcpProjectLicenseContext","createContext","WcpProjectLicenseProvider","children","license","useMemo","licenseEnv","process","licenseDto","JSON","License","e","console","hasLicense","value","useWcpProjectLicense","context","useContext","Error"],"mappings":";;AAcA,MAAMA,2BAA2B,WAAHA,GAAGC,cAAoD;AAE9E,MAAMC,4BAAqE,CAAC,EAC/EC,QAAQ,EACX;IACG,MAAMC,UAAUC,QAAQ;QACpB,MAAMC,aAAaC,QAAQ,GAAG,CAAC,mBAAmB;QAClD,IAAI,CAACD,YACD,OAAO;QAGX,IAAI;YACA,MAAME,aAAaC,KAAK,KAAK,CAACH;YAC9B,OAAOI,QAAQ,cAAc,CAACF;QAClC,EAAE,OAAOG,GAAG;YACRC,QAAQ,IAAI,CACR,yHACAD;YAEJ,OAAO;QACX;IACJ,GAAG,EAAE;IAEL,MAAME,aAAa,CAAC,CAACT;IAErB,MAAMU,QAAuC;QACzCD;QACA,oBAAoB,IAAMA;QAC1B,aAAa,IAAMT,SAAS,iBAAiB;QAC7C,oBAAoB,IAAMA,SAAS,wBAAwB;QAC3D,kCAAkC,IAC9BA,SAAS,sCAAsC;QACnD,iBAAiB,IAAMA,SAAS,qBAAqB;QACrD,4BAA4B,IAAMA,SAAS,gCAAgC;IAC/E;IAEA,OAAO,WAAP,GACI,oBAACJ,yBAAyB,QAAQ;QAAC,OAAOc;OACrCX;AAGb;AAEO,MAAMY,uBAAuB;IAChC,MAAMC,UAAUC,WAAWjB;IAC3B,IAAI,CAACgB,SACD,MAAM,IAAIE,MAAM;IAEpB,OAAOF;AACX"}
|
|
@@ -1,45 +1,39 @@
|
|
|
1
1
|
import { fork } from "child_process";
|
|
2
2
|
import path from "path";
|
|
3
3
|
import { deserializeError } from "serialize-error";
|
|
4
|
-
import {
|
|
5
|
-
const getWorkerPath = ()
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
4
|
+
import { WBY_PROJECT_SDK_CONTEXT, serializeProjectSdkContext } from "../../utils/index.js";
|
|
5
|
+
const getWorkerPath = ()=>path.join(import.meta.dirname || __dirname, "renderConfigWorker.js");
|
|
6
|
+
async function renderConfig(params) {
|
|
7
|
+
return new Promise((resolve, reject)=>{
|
|
8
|
+
const workerPath = getWorkerPath();
|
|
9
|
+
const args = [
|
|
10
|
+
JSON.stringify({
|
|
11
|
+
project: params.project.toDto(),
|
|
12
|
+
args: params.args || {}
|
|
13
|
+
})
|
|
14
|
+
];
|
|
15
|
+
const env = {
|
|
16
|
+
...process.env,
|
|
17
|
+
[WBY_PROJECT_SDK_CONTEXT]: serializeProjectSdkContext(params.sdkParams)
|
|
18
|
+
};
|
|
19
|
+
const childProcess = fork(workerPath, args, {
|
|
20
|
+
stdio: [
|
|
21
|
+
"pipe",
|
|
22
|
+
"pipe",
|
|
23
|
+
"pipe",
|
|
24
|
+
"ipc"
|
|
25
|
+
],
|
|
26
|
+
env
|
|
27
|
+
});
|
|
28
|
+
childProcess.on("message", (message)=>{
|
|
29
|
+
if ("error" === message.type) {
|
|
30
|
+
const error = deserializeError(message.error);
|
|
31
|
+
return reject(error);
|
|
32
|
+
}
|
|
33
|
+
return resolve(message.data);
|
|
34
|
+
});
|
|
32
35
|
});
|
|
33
|
-
|
|
34
|
-
// The only message we expect to receive is the parsed project config.
|
|
35
|
-
childProcess.on("message", message => {
|
|
36
|
-
if (message.type === "error") {
|
|
37
|
-
const error = deserializeError(message.error);
|
|
38
|
-
return reject(error);
|
|
39
|
-
}
|
|
40
|
-
return resolve(message.data);
|
|
41
|
-
});
|
|
42
|
-
});
|
|
43
36
|
}
|
|
37
|
+
export { renderConfig };
|
|
44
38
|
|
|
45
39
|
//# sourceMappingURL=renderConfig.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"services/GetProjectConfigService/renderConfig.js","sources":["../../../src/services/GetProjectConfigService/renderConfig.tsx"],"sourcesContent":["import { fork } from \"child_process\";\nimport path from \"path\";\nimport { deserializeError } from \"serialize-error\";\nimport {\n type IProjectConfigDto,\n type IProjectModel,\n type IProjectModelDto\n} from \"~/abstractions/models/index.js\";\nimport { type ProjectSdkParamsService } from \"~/abstractions/index.js\";\nimport { serializeProjectSdkContext, WBY_PROJECT_SDK_CONTEXT } from \"~/utils/index.js\";\n\nexport interface RenderConfigParams {\n project: IProjectModel;\n args?: Record<string, any>;\n sdkParams: ProjectSdkParamsService.Params;\n}\n\nexport interface RenderConfigParamsDto {\n project: IProjectModelDto;\n args?: Record<string, any>;\n}\n\nexport interface RenderConfigWorkerMessageDto {\n type: \"error\" | \"success\";\n error: Record<string, any> | null;\n data: IProjectConfigDto | null;\n}\n\nconst getWorkerPath = () => {\n // TODO: I have no idea why import.meta.dirname is sometimes undefined.\n // TODO: Would be nice to further investigate this, but don't have time right now.\n return path.join(import.meta.dirname || __dirname, \"renderConfigWorker.js\");\n};\n\nexport async function renderConfig(params: RenderConfigParams) {\n // Initially, I did the reading of config in this file directly. But then I started\n // bumping into an issue, where for some reason, the `Properties` context would not work.\n // Basically, `useProperties` would throw an error message, saying that the `Properties`\n // context is not available. So, I decided to move the reading of config into a separate\n // worker file, which is then executed in a child process.\n // This works. Why the context is not available in the main process, I have no idea.\n // I tried multiple things, but nothing worked. Lost more than a day on this.\n // Decided to move on, as this works and I don't have time to investigate this further.\n return new Promise<IProjectConfigDto>((resolve, reject) => {\n const workerPath = getWorkerPath();\n\n const args = [\n JSON.stringify({\n project: params.project.toDto(),\n args: params.args || {}\n })\n ];\n\n const env = {\n ...process.env,\n [WBY_PROJECT_SDK_CONTEXT]: serializeProjectSdkContext(params.sdkParams)\n };\n\n const childProcess = fork(workerPath, args, {\n stdio: [\"pipe\", \"pipe\", \"pipe\", \"ipc\"],\n env\n });\n\n // The only message we expect to receive is the parsed project config.\n childProcess.on(\"message\", (message: RenderConfigWorkerMessageDto) => {\n if (message.type === \"error\") {\n const error = deserializeError(message.error);\n return reject(error);\n }\n\n return resolve(message.data!);\n });\n });\n}\n"],"names":["getWorkerPath","path","__dirname","renderConfig","params","Promise","resolve","reject","workerPath","args","JSON","env","process","WBY_PROJECT_SDK_CONTEXT","serializeProjectSdkContext","childProcess","fork","message","error","deserializeError"],"mappings":";;;;AA4BA,MAAMA,gBAAgB,IAGXC,KAAK,IAAI,CAAC,YAAY,OAAO,IAAIC,WAAW;AAGhD,eAAeC,aAAaC,MAA0B;IASzD,OAAO,IAAIC,QAA2B,CAACC,SAASC;QAC5C,MAAMC,aAAaR;QAEnB,MAAMS,OAAO;YACTC,KAAK,SAAS,CAAC;gBACX,SAASN,OAAO,OAAO,CAAC,KAAK;gBAC7B,MAAMA,OAAO,IAAI,IAAI,CAAC;YAC1B;SACH;QAED,MAAMO,MAAM;YACR,GAAGC,QAAQ,GAAG;YACd,CAACC,wBAAwB,EAAEC,2BAA2BV,OAAO,SAAS;QAC1E;QAEA,MAAMW,eAAeC,KAAKR,YAAYC,MAAM;YACxC,OAAO;gBAAC;gBAAQ;gBAAQ;gBAAQ;aAAM;YACtCE;QACJ;QAGAI,aAAa,EAAE,CAAC,WAAW,CAACE;YACxB,IAAIA,AAAiB,YAAjBA,QAAQ,IAAI,EAAc;gBAC1B,MAAMC,QAAQC,iBAAiBF,QAAQ,KAAK;gBAC5C,OAAOV,OAAOW;YAClB;YAEA,OAAOZ,QAAQW,QAAQ,IAAI;QAC/B;IACJ;AACJ"}
|