UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

2 lines (1 loc) 36 kB
"use strict";var _a,_b;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnGroup=exports.CfnCanary=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var cdk=()=>{var tmp=require("../../core");return cdk=()=>tmp,tmp},cfn_parse=()=>{var tmp=require("../../core/lib/helpers-internal");return cfn_parse=()=>tmp,tmp},cdk_errors=()=>{var tmp=require("../../core/lib/errors");return cdk_errors=()=>tmp,tmp};class CfnCanary extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnCanaryPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnCanary(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}constructor(scope,id,props){super(scope,id,{type:CfnCanary.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_synthetics_CfnCanaryProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCanary),error}cdk().requireProperty(props,"artifactS3Location",this),cdk().requireProperty(props,"code",this),cdk().requireProperty(props,"executionRoleArn",this),cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"runtimeVersion",this),cdk().requireProperty(props,"schedule",this),this.attrCodeSourceLocationArn=cdk().Token.asString(this.getAtt("Code.SourceLocationArn",cdk().ResolutionTypeHint.STRING)),this.attrId=cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING)),this.attrState=cdk().Token.asString(this.getAtt("State",cdk().ResolutionTypeHint.STRING)),this.artifactConfig=props.artifactConfig,this.artifactS3Location=props.artifactS3Location,this.code=props.code,this.deleteLambdaResourcesOnCanaryDeletion=props.deleteLambdaResourcesOnCanaryDeletion,this.dryRunAndUpdate=props.dryRunAndUpdate,this.executionRoleArn=props.executionRoleArn,this.failureRetentionPeriod=props.failureRetentionPeriod,this.name=props.name,this.provisionedResourceCleanup=props.provisionedResourceCleanup,this.resourcesToReplicateTags=props.resourcesToReplicateTags,this.runConfig=props.runConfig,this.runtimeVersion=props.runtimeVersion,this.schedule=props.schedule,this.startCanaryAfterCreation=props.startCanaryAfterCreation,this.successRetentionPeriod=props.successRetentionPeriod,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Synthetics::Canary",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags,this.visualReference=props.visualReference,this.vpcConfig=props.vpcConfig}get cfnProperties(){return{artifactConfig:this.artifactConfig,artifactS3Location:this.artifactS3Location,code:this.code,deleteLambdaResourcesOnCanaryDeletion:this.deleteLambdaResourcesOnCanaryDeletion,dryRunAndUpdate:this.dryRunAndUpdate,executionRoleArn:this.executionRoleArn,failureRetentionPeriod:this.failureRetentionPeriod,name:this.name,provisionedResourceCleanup:this.provisionedResourceCleanup,resourcesToReplicateTags:this.resourcesToReplicateTags,runConfig:this.runConfig,runtimeVersion:this.runtimeVersion,schedule:this.schedule,startCanaryAfterCreation:this.startCanaryAfterCreation,successRetentionPeriod:this.successRetentionPeriod,tags:this.tags.renderTags(),visualReference:this.visualReference,vpcConfig:this.vpcConfig}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnCanary.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnCanaryPropsToCloudFormation(props)}}exports.CfnCanary=CfnCanary,_a=JSII_RTTI_SYMBOL_1,CfnCanary[_a]={fqn:"aws-cdk-lib.aws_synthetics.CfnCanary",version:"2.202.0"},CfnCanary.CFN_RESOURCE_TYPE_NAME="AWS::Synthetics::Canary";function CfnCanaryBaseScreenshotPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("ignoreCoordinates",cdk().listValidator(cdk().validateString))(properties.ignoreCoordinates)),errors.collect(cdk().propertyValidator("screenshotName",cdk().requiredValidator)(properties.screenshotName)),errors.collect(cdk().propertyValidator("screenshotName",cdk().validateString)(properties.screenshotName)),errors.wrap('supplied properties not correct for "BaseScreenshotProperty"')}function convertCfnCanaryBaseScreenshotPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCanaryBaseScreenshotPropertyValidator(properties).assertSuccess(),{IgnoreCoordinates:cdk().listMapper(cdk().stringToCloudFormation)(properties.ignoreCoordinates),ScreenshotName:cdk().stringToCloudFormation(properties.screenshotName)}):properties}function CfnCanaryBaseScreenshotPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("ignoreCoordinates","IgnoreCoordinates",properties.IgnoreCoordinates!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.IgnoreCoordinates):void 0),ret.addPropertyResult("screenshotName","ScreenshotName",properties.ScreenshotName!=null?cfn_parse().FromCloudFormation.getString(properties.ScreenshotName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCanaryVisualReferencePropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("baseCanaryRunId",cdk().requiredValidator)(properties.baseCanaryRunId)),errors.collect(cdk().propertyValidator("baseCanaryRunId",cdk().validateString)(properties.baseCanaryRunId)),errors.collect(cdk().propertyValidator("baseScreenshots",cdk().listValidator(CfnCanaryBaseScreenshotPropertyValidator))(properties.baseScreenshots)),errors.wrap('supplied properties not correct for "VisualReferenceProperty"')}function convertCfnCanaryVisualReferencePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCanaryVisualReferencePropertyValidator(properties).assertSuccess(),{BaseCanaryRunId:cdk().stringToCloudFormation(properties.baseCanaryRunId),BaseScreenshots:cdk().listMapper(convertCfnCanaryBaseScreenshotPropertyToCloudFormation)(properties.baseScreenshots)}):properties}function CfnCanaryVisualReferencePropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("baseCanaryRunId","BaseCanaryRunId",properties.BaseCanaryRunId!=null?cfn_parse().FromCloudFormation.getString(properties.BaseCanaryRunId):void 0),ret.addPropertyResult("baseScreenshots","BaseScreenshots",properties.BaseScreenshots!=null?cfn_parse().FromCloudFormation.getArray(CfnCanaryBaseScreenshotPropertyFromCloudFormation)(properties.BaseScreenshots):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCanaryS3EncryptionPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("encryptionMode",cdk().validateString)(properties.encryptionMode)),errors.collect(cdk().propertyValidator("kmsKeyArn",cdk().validateString)(properties.kmsKeyArn)),errors.wrap('supplied properties not correct for "S3EncryptionProperty"')}function convertCfnCanaryS3EncryptionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCanaryS3EncryptionPropertyValidator(properties).assertSuccess(),{EncryptionMode:cdk().stringToCloudFormation(properties.encryptionMode),KmsKeyArn:cdk().stringToCloudFormation(properties.kmsKeyArn)}):properties}function CfnCanaryS3EncryptionPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("encryptionMode","EncryptionMode",properties.EncryptionMode!=null?cfn_parse().FromCloudFormation.getString(properties.EncryptionMode):void 0),ret.addPropertyResult("kmsKeyArn","KmsKeyArn",properties.KmsKeyArn!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCanaryArtifactConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("s3Encryption",CfnCanaryS3EncryptionPropertyValidator)(properties.s3Encryption)),errors.wrap('supplied properties not correct for "ArtifactConfigProperty"')}function convertCfnCanaryArtifactConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCanaryArtifactConfigPropertyValidator(properties).assertSuccess(),{S3Encryption:convertCfnCanaryS3EncryptionPropertyToCloudFormation(properties.s3Encryption)}):properties}function CfnCanaryArtifactConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("s3Encryption","S3Encryption",properties.S3Encryption!=null?CfnCanaryS3EncryptionPropertyFromCloudFormation(properties.S3Encryption):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCanaryVPCConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("ipv6AllowedForDualStack",cdk().validateBoolean)(properties.ipv6AllowedForDualStack)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().requiredValidator)(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("subnetIds",cdk().requiredValidator)(properties.subnetIds)),errors.collect(cdk().propertyValidator("subnetIds",cdk().listValidator(cdk().validateString))(properties.subnetIds)),errors.collect(cdk().propertyValidator("vpcId",cdk().validateString)(properties.vpcId)),errors.wrap('supplied properties not correct for "VPCConfigProperty"')}function convertCfnCanaryVPCConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCanaryVPCConfigPropertyValidator(properties).assertSuccess(),{Ipv6AllowedForDualStack:cdk().booleanToCloudFormation(properties.ipv6AllowedForDualStack),SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),SubnetIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnetIds),VpcId:cdk().stringToCloudFormation(properties.vpcId)}):properties}function CfnCanaryVPCConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("ipv6AllowedForDualStack","Ipv6AllowedForDualStack",properties.Ipv6AllowedForDualStack!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Ipv6AllowedForDualStack):void 0),ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnetIds","SubnetIds",properties.SubnetIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SubnetIds):void 0),ret.addPropertyResult("vpcId","VpcId",properties.VpcId!=null?cfn_parse().FromCloudFormation.getString(properties.VpcId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCanaryRunConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("activeTracing",cdk().validateBoolean)(properties.activeTracing)),errors.collect(cdk().propertyValidator("environmentVariables",cdk().hashValidator(cdk().validateString))(properties.environmentVariables)),errors.collect(cdk().propertyValidator("memoryInMb",cdk().validateNumber)(properties.memoryInMb)),errors.collect(cdk().propertyValidator("timeoutInSeconds",cdk().validateNumber)(properties.timeoutInSeconds)),errors.wrap('supplied properties not correct for "RunConfigProperty"')}function convertCfnCanaryRunConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCanaryRunConfigPropertyValidator(properties).assertSuccess(),{ActiveTracing:cdk().booleanToCloudFormation(properties.activeTracing),EnvironmentVariables:cdk().hashMapper(cdk().stringToCloudFormation)(properties.environmentVariables),MemoryInMB:cdk().numberToCloudFormation(properties.memoryInMb),TimeoutInSeconds:cdk().numberToCloudFormation(properties.timeoutInSeconds)}):properties}function CfnCanaryRunConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("activeTracing","ActiveTracing",properties.ActiveTracing!=null?cfn_parse().FromCloudFormation.getBoolean(properties.ActiveTracing):void 0),ret.addPropertyResult("environmentVariables","EnvironmentVariables",properties.EnvironmentVariables!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.EnvironmentVariables):void 0),ret.addPropertyResult("memoryInMb","MemoryInMB",properties.MemoryInMB!=null?cfn_parse().FromCloudFormation.getNumber(properties.MemoryInMB):void 0),ret.addPropertyResult("timeoutInSeconds","TimeoutInSeconds",properties.TimeoutInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.TimeoutInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCanaryCodePropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("handler",cdk().requiredValidator)(properties.handler)),errors.collect(cdk().propertyValidator("handler",cdk().validateString)(properties.handler)),errors.collect(cdk().propertyValidator("s3Bucket",cdk().validateString)(properties.s3Bucket)),errors.collect(cdk().propertyValidator("s3Key",cdk().validateString)(properties.s3Key)),errors.collect(cdk().propertyValidator("s3ObjectVersion",cdk().validateString)(properties.s3ObjectVersion)),errors.collect(cdk().propertyValidator("script",cdk().validateString)(properties.script)),errors.collect(cdk().propertyValidator("sourceLocationArn",cdk().validateString)(properties.sourceLocationArn)),errors.wrap('supplied properties not correct for "CodeProperty"')}function convertCfnCanaryCodePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCanaryCodePropertyValidator(properties).assertSuccess(),{Handler:cdk().stringToCloudFormation(properties.handler),S3Bucket:cdk().stringToCloudFormation(properties.s3Bucket),S3Key:cdk().stringToCloudFormation(properties.s3Key),S3ObjectVersion:cdk().stringToCloudFormation(properties.s3ObjectVersion),Script:cdk().stringToCloudFormation(properties.script),SourceLocationArn:cdk().stringToCloudFormation(properties.sourceLocationArn)}):properties}function CfnCanaryCodePropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("handler","Handler",properties.Handler!=null?cfn_parse().FromCloudFormation.getString(properties.Handler):void 0),ret.addPropertyResult("s3Bucket","S3Bucket",properties.S3Bucket!=null?cfn_parse().FromCloudFormation.getString(properties.S3Bucket):void 0),ret.addPropertyResult("s3Key","S3Key",properties.S3Key!=null?cfn_parse().FromCloudFormation.getString(properties.S3Key):void 0),ret.addPropertyResult("s3ObjectVersion","S3ObjectVersion",properties.S3ObjectVersion!=null?cfn_parse().FromCloudFormation.getString(properties.S3ObjectVersion):void 0),ret.addPropertyResult("script","Script",properties.Script!=null?cfn_parse().FromCloudFormation.getString(properties.Script):void 0),ret.addPropertyResult("sourceLocationArn","SourceLocationArn",properties.SourceLocationArn!=null?cfn_parse().FromCloudFormation.getString(properties.SourceLocationArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCanaryRetryConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("maxRetries",cdk().requiredValidator)(properties.maxRetries)),errors.collect(cdk().propertyValidator("maxRetries",cdk().validateNumber)(properties.maxRetries)),errors.wrap('supplied properties not correct for "RetryConfigProperty"')}function convertCfnCanaryRetryConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCanaryRetryConfigPropertyValidator(properties).assertSuccess(),{MaxRetries:cdk().numberToCloudFormation(properties.maxRetries)}):properties}function CfnCanaryRetryConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("maxRetries","MaxRetries",properties.MaxRetries!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxRetries):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCanarySchedulePropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("durationInSeconds",cdk().validateString)(properties.durationInSeconds)),errors.collect(cdk().propertyValidator("expression",cdk().requiredValidator)(properties.expression)),errors.collect(cdk().propertyValidator("expression",cdk().validateString)(properties.expression)),errors.collect(cdk().propertyValidator("retryConfig",CfnCanaryRetryConfigPropertyValidator)(properties.retryConfig)),errors.wrap('supplied properties not correct for "ScheduleProperty"')}function convertCfnCanarySchedulePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCanarySchedulePropertyValidator(properties).assertSuccess(),{DurationInSeconds:cdk().stringToCloudFormation(properties.durationInSeconds),Expression:cdk().stringToCloudFormation(properties.expression),RetryConfig:convertCfnCanaryRetryConfigPropertyToCloudFormation(properties.retryConfig)}):properties}function CfnCanarySchedulePropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("durationInSeconds","DurationInSeconds",properties.DurationInSeconds!=null?cfn_parse().FromCloudFormation.getString(properties.DurationInSeconds):void 0),ret.addPropertyResult("expression","Expression",properties.Expression!=null?cfn_parse().FromCloudFormation.getString(properties.Expression):void 0),ret.addPropertyResult("retryConfig","RetryConfig",properties.RetryConfig!=null?CfnCanaryRetryConfigPropertyFromCloudFormation(properties.RetryConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCanaryPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("artifactConfig",CfnCanaryArtifactConfigPropertyValidator)(properties.artifactConfig)),errors.collect(cdk().propertyValidator("artifactS3Location",cdk().requiredValidator)(properties.artifactS3Location)),errors.collect(cdk().propertyValidator("artifactS3Location",cdk().validateString)(properties.artifactS3Location)),errors.collect(cdk().propertyValidator("code",cdk().requiredValidator)(properties.code)),errors.collect(cdk().propertyValidator("code",CfnCanaryCodePropertyValidator)(properties.code)),errors.collect(cdk().propertyValidator("deleteLambdaResourcesOnCanaryDeletion",cdk().validateBoolean)(properties.deleteLambdaResourcesOnCanaryDeletion)),errors.collect(cdk().propertyValidator("dryRunAndUpdate",cdk().validateBoolean)(properties.dryRunAndUpdate)),errors.collect(cdk().propertyValidator("executionRoleArn",cdk().requiredValidator)(properties.executionRoleArn)),errors.collect(cdk().propertyValidator("executionRoleArn",cdk().validateString)(properties.executionRoleArn)),errors.collect(cdk().propertyValidator("failureRetentionPeriod",cdk().validateNumber)(properties.failureRetentionPeriod)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("provisionedResourceCleanup",cdk().validateString)(properties.provisionedResourceCleanup)),errors.collect(cdk().propertyValidator("resourcesToReplicateTags",cdk().listValidator(cdk().validateString))(properties.resourcesToReplicateTags)),errors.collect(cdk().propertyValidator("runConfig",CfnCanaryRunConfigPropertyValidator)(properties.runConfig)),errors.collect(cdk().propertyValidator("runtimeVersion",cdk().requiredValidator)(properties.runtimeVersion)),errors.collect(cdk().propertyValidator("runtimeVersion",cdk().validateString)(properties.runtimeVersion)),errors.collect(cdk().propertyValidator("schedule",cdk().requiredValidator)(properties.schedule)),errors.collect(cdk().propertyValidator("schedule",CfnCanarySchedulePropertyValidator)(properties.schedule)),errors.collect(cdk().propertyValidator("startCanaryAfterCreation",cdk().validateBoolean)(properties.startCanaryAfterCreation)),errors.collect(cdk().propertyValidator("successRetentionPeriod",cdk().validateNumber)(properties.successRetentionPeriod)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("vpcConfig",CfnCanaryVPCConfigPropertyValidator)(properties.vpcConfig)),errors.collect(cdk().propertyValidator("visualReference",CfnCanaryVisualReferencePropertyValidator)(properties.visualReference)),errors.wrap('supplied properties not correct for "CfnCanaryProps"')}function convertCfnCanaryPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCanaryPropsValidator(properties).assertSuccess(),{ArtifactConfig:convertCfnCanaryArtifactConfigPropertyToCloudFormation(properties.artifactConfig),ArtifactS3Location:cdk().stringToCloudFormation(properties.artifactS3Location),Code:convertCfnCanaryCodePropertyToCloudFormation(properties.code),DeleteLambdaResourcesOnCanaryDeletion:cdk().booleanToCloudFormation(properties.deleteLambdaResourcesOnCanaryDeletion),DryRunAndUpdate:cdk().booleanToCloudFormation(properties.dryRunAndUpdate),ExecutionRoleArn:cdk().stringToCloudFormation(properties.executionRoleArn),FailureRetentionPeriod:cdk().numberToCloudFormation(properties.failureRetentionPeriod),Name:cdk().stringToCloudFormation(properties.name),ProvisionedResourceCleanup:cdk().stringToCloudFormation(properties.provisionedResourceCleanup),ResourcesToReplicateTags:cdk().listMapper(cdk().stringToCloudFormation)(properties.resourcesToReplicateTags),RunConfig:convertCfnCanaryRunConfigPropertyToCloudFormation(properties.runConfig),RuntimeVersion:cdk().stringToCloudFormation(properties.runtimeVersion),Schedule:convertCfnCanarySchedulePropertyToCloudFormation(properties.schedule),StartCanaryAfterCreation:cdk().booleanToCloudFormation(properties.startCanaryAfterCreation),SuccessRetentionPeriod:cdk().numberToCloudFormation(properties.successRetentionPeriod),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),VPCConfig:convertCfnCanaryVPCConfigPropertyToCloudFormation(properties.vpcConfig),VisualReference:convertCfnCanaryVisualReferencePropertyToCloudFormation(properties.visualReference)}):properties}function CfnCanaryPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("artifactConfig","ArtifactConfig",properties.ArtifactConfig!=null?CfnCanaryArtifactConfigPropertyFromCloudFormation(properties.ArtifactConfig):void 0),ret.addPropertyResult("artifactS3Location","ArtifactS3Location",properties.ArtifactS3Location!=null?cfn_parse().FromCloudFormation.getString(properties.ArtifactS3Location):void 0),ret.addPropertyResult("code","Code",properties.Code!=null?CfnCanaryCodePropertyFromCloudFormation(properties.Code):void 0),ret.addPropertyResult("deleteLambdaResourcesOnCanaryDeletion","DeleteLambdaResourcesOnCanaryDeletion",properties.DeleteLambdaResourcesOnCanaryDeletion!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DeleteLambdaResourcesOnCanaryDeletion):void 0),ret.addPropertyResult("dryRunAndUpdate","DryRunAndUpdate",properties.DryRunAndUpdate!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DryRunAndUpdate):void 0),ret.addPropertyResult("executionRoleArn","ExecutionRoleArn",properties.ExecutionRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutionRoleArn):void 0),ret.addPropertyResult("failureRetentionPeriod","FailureRetentionPeriod",properties.FailureRetentionPeriod!=null?cfn_parse().FromCloudFormation.getNumber(properties.FailureRetentionPeriod):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("provisionedResourceCleanup","ProvisionedResourceCleanup",properties.ProvisionedResourceCleanup!=null?cfn_parse().FromCloudFormation.getString(properties.ProvisionedResourceCleanup):void 0),ret.addPropertyResult("resourcesToReplicateTags","ResourcesToReplicateTags",properties.ResourcesToReplicateTags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ResourcesToReplicateTags):void 0),ret.addPropertyResult("runConfig","RunConfig",properties.RunConfig!=null?CfnCanaryRunConfigPropertyFromCloudFormation(properties.RunConfig):void 0),ret.addPropertyResult("runtimeVersion","RuntimeVersion",properties.RuntimeVersion!=null?cfn_parse().FromCloudFormation.getString(properties.RuntimeVersion):void 0),ret.addPropertyResult("schedule","Schedule",properties.Schedule!=null?CfnCanarySchedulePropertyFromCloudFormation(properties.Schedule):void 0),ret.addPropertyResult("startCanaryAfterCreation","StartCanaryAfterCreation",properties.StartCanaryAfterCreation!=null?cfn_parse().FromCloudFormation.getBoolean(properties.StartCanaryAfterCreation):void 0),ret.addPropertyResult("successRetentionPeriod","SuccessRetentionPeriod",properties.SuccessRetentionPeriod!=null?cfn_parse().FromCloudFormation.getNumber(properties.SuccessRetentionPeriod):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("visualReference","VisualReference",properties.VisualReference!=null?CfnCanaryVisualReferencePropertyFromCloudFormation(properties.VisualReference):void 0),ret.addPropertyResult("vpcConfig","VPCConfig",properties.VPCConfig!=null?CfnCanaryVPCConfigPropertyFromCloudFormation(properties.VPCConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnGroup extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnGroupPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnGroup(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}constructor(scope,id,props){super(scope,id,{type:CfnGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_synthetics_CfnGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnGroup),error}cdk().requireProperty(props,"name",this),this.attrId=cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING)),this.name=props.name,this.resourceArns=props.resourceArns,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Synthetics::Group",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags}get cfnProperties(){return{name:this.name,resourceArns:this.resourceArns,tags:this.tags.renderTags()}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnGroupPropsToCloudFormation(props)}}exports.CfnGroup=CfnGroup,_b=JSII_RTTI_SYMBOL_1,CfnGroup[_b]={fqn:"aws-cdk-lib.aws_synthetics.CfnGroup",version:"2.202.0"},CfnGroup.CFN_RESOURCE_TYPE_NAME="AWS::Synthetics::Group";function CfnGroupPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("resourceArns",cdk().listValidator(cdk().validateString))(properties.resourceArns)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnGroupProps"')}function convertCfnGroupPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnGroupPropsValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name),ResourceArns:cdk().listMapper(cdk().stringToCloudFormation)(properties.resourceArns),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnGroupPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("resourceArns","ResourceArns",properties.ResourceArns!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ResourceArns):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}