aws-cdk
Version:
CDK Toolkit, the command line tool for CDK apps
1 lines • 13.8 MB
JavaScript
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf;var __hasOwnProp=Object.prototype.hasOwnProperty;var __typeError=msg=>{throw TypeError(msg)};var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:true,configurable:true,writable:true,value}):obj[key]=value;var __esm=(fn,res)=>function __init(){return fn&&(res=(0,fn[__getOwnPropNames(fn)[0]])(fn=0)),res};var __commonJS=(cb,mod)=>function __require(){return mod||(0,cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports};var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:true})};var __copyProps=(to,from,except,desc)=>{if(from&&typeof from==="object"||typeof from==="function"){for(let key of __getOwnPropNames(from))if(!__hasOwnProp.call(to,key)&&key!==except)__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable})}return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:true}):target,mod));var __toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:true}),mod);var __decorateClass=(decorators,target,key,kind)=>{var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target;for(var i3=decorators.length-1,decorator;i3>=0;i3--)if(decorator=decorators[i3])result=(kind?decorator(target,key,result):decorator(result))||result;if(kind&&result)__defProp(target,key,result);return result};var __publicField=(obj,key,value)=>__defNormalProp(obj,typeof key!=="symbol"?key+"":key,value);var __accessCheck=(obj,member,msg)=>member.has(obj)||__typeError("Cannot "+msg);var __privateGet=(obj,member,getter)=>(__accessCheck(obj,member,"read from private field"),getter?getter.call(obj):member.get(obj));var __privateAdd=(obj,member,value)=>member.has(obj)?__typeError("Cannot add the same private member more than once"):member instanceof WeakSet?member.add(obj):member.set(obj,value);var __privateSet=(obj,member,value,setter)=>(__accessCheck(obj,member,"write to private field"),setter?setter.call(obj,value):member.set(obj,value),value);var __privateMethod=(obj,member,method)=>(__accessCheck(obj,member,"access private method"),method);var require_schema=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/schema.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:true});exports2.ArtifactType=void 0;var ArtifactType4;(function(ArtifactType5){ArtifactType5["NONE"]="none";ArtifactType5["AWS_CLOUDFORMATION_STACK"]="aws:cloudformation:stack";ArtifactType5["CDK_TREE"]="cdk:tree";ArtifactType5["ASSET_MANIFEST"]="cdk:asset-manifest";ArtifactType5["NESTED_CLOUD_ASSEMBLY"]="cdk:cloud-assembly"})(ArtifactType4||(exports2.ArtifactType=ArtifactType4={}))}});var require_metadata_schema=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:true});exports2.ArtifactMetadataEntryType=void 0;var ArtifactMetadataEntryType5;(function(ArtifactMetadataEntryType6){ArtifactMetadataEntryType6["ASSET"]="aws:cdk:asset";ArtifactMetadataEntryType6["INFO"]="aws:cdk:info";ArtifactMetadataEntryType6["WARN"]="aws:cdk:warning";ArtifactMetadataEntryType6["ERROR"]="aws:cdk:error";ArtifactMetadataEntryType6["LOGICAL_ID"]="aws:cdk:logicalId";ArtifactMetadataEntryType6["STACK_TAGS"]="aws:cdk:stack-tags"})(ArtifactMetadataEntryType5||(exports2.ArtifactMetadataEntryType=ArtifactMetadataEntryType5={}))}});var require_artifact_schema=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/artifact-schema.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:true})}});var require_context_queries=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/context-queries.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:true});exports2.LoadBalancerListenerProtocol=exports2.LoadBalancerType=exports2.ContextProvider=void 0;var ContextProvider2;(function(ContextProvider3){ContextProvider3["AMI_PROVIDER"]="ami";ContextProvider3["AVAILABILITY_ZONE_PROVIDER"]="availability-zones";ContextProvider3["HOSTED_ZONE_PROVIDER"]="hosted-zone";ContextProvider3["SSM_PARAMETER_PROVIDER"]="ssm";ContextProvider3["VPC_PROVIDER"]="vpc-provider";ContextProvider3["ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER"]="endpoint-service-availability-zones";ContextProvider3["LOAD_BALANCER_PROVIDER"]="load-balancer";ContextProvider3["LOAD_BALANCER_LISTENER_PROVIDER"]="load-balancer-listener";ContextProvider3["SECURITY_GROUP_PROVIDER"]="security-group";ContextProvider3["KEY_PROVIDER"]="key-provider";ContextProvider3["PLUGIN"]="plugin"})(ContextProvider2||(exports2.ContextProvider=ContextProvider2={}));var LoadBalancerType;(function(LoadBalancerType2){LoadBalancerType2["NETWORK"]="network";LoadBalancerType2["APPLICATION"]="application"})(LoadBalancerType||(exports2.LoadBalancerType=LoadBalancerType={}));var LoadBalancerListenerProtocol;(function(LoadBalancerListenerProtocol2){LoadBalancerListenerProtocol2["HTTP"]="HTTP";LoadBalancerListenerProtocol2["HTTPS"]="HTTPS";LoadBalancerListenerProtocol2["TCP"]="TCP";LoadBalancerListenerProtocol2["TLS"]="TLS";LoadBalancerListenerProtocol2["UDP"]="UDP";LoadBalancerListenerProtocol2["TCP_UDP"]="TCP_UDP"})(LoadBalancerListenerProtocol||(exports2.LoadBalancerListenerProtocol=LoadBalancerListenerProtocol={}))}});var require_interfaces=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/interfaces.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:true})}});var require_cloud_assembly=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/index.js"(exports2){"use strict";var __createBinding3=exports2&&exports2.__createBinding||(Object.create?function(o3,m3,k3,k22){if(k22===void 0)k22=k3;var desc=Object.getOwnPropertyDescriptor(m3,k3);if(!desc||("get"in desc?!m3.__esModule:desc.writable||desc.configurable)){desc={enumerable:true,get:function(){return m3[k3]}}}Object.defineProperty(o3,k22,desc)}:function(o3,m3,k3,k22){if(k22===void 0)k22=k3;o3[k22]=m3[k3]});var __exportStar3=exports2&&exports2.__exportStar||function(m3,exports3){for(var p3 in m3)if(p3!=="default"&&!Object.prototype.hasOwnProperty.call(exports3,p3))__createBinding3(exports3,m3,p3)};Object.defineProperty(exports2,"__esModule",{value:true});__exportStar3(require_schema(),exports2);__exportStar3(require_metadata_schema(),exports2);__exportStar3(require_artifact_schema(),exports2);__exportStar3(require_context_queries(),exports2);__exportStar3(require_interfaces(),exports2)}});var require_schema2=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/schema.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:true})}});var require_docker_image_asset=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/docker-image-asset.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:true})}});var require_file_asset=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/file-asset.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:true});exports2.FileAssetPackaging=void 0;var FileAssetPackaging2;(function(FileAssetPackaging3){FileAssetPackaging3["FILE"]="file";FileAssetPackaging3["ZIP_DIRECTORY"]="zip"})(FileAssetPackaging2||(exports2.FileAssetPackaging=FileAssetPackaging2={}))}});var require_aws_destination=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/aws-destination.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:true})}});var require_assets=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/index.js"(exports2){"use strict";var __createBinding3=exports2&&exports2.__createBinding||(Object.create?function(o3,m3,k3,k22){if(k22===void 0)k22=k3;var desc=Object.getOwnPropertyDescriptor(m3,k3);if(!desc||("get"in desc?!m3.__esModule:desc.writable||desc.configurable)){desc={enumerable:true,get:function(){return m3[k3]}}}Object.defineProperty(o3,k22,desc)}:function(o3,m3,k3,k22){if(k22===void 0)k22=k3;o3[k22]=m3[k3]});var __exportStar3=exports2&&exports2.__exportStar||function(m3,exports3){for(var p3 in m3)if(p3!=="default"&&!Object.prototype.hasOwnProperty.call(exports3,p3))__createBinding3(exports3,m3,p3)};Object.defineProperty(exports2,"__esModule",{value:true});__exportStar3(require_schema2(),exports2);__exportStar3(require_docker_image_asset(),exports2);__exportStar3(require_file_asset(),exports2);__exportStar3(require_aws_destination(),exports2)}});var require_helpers=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/helpers.js"(exports2,module2){"use strict";var uri=require("url");var ValidationError=exports2.ValidationError=function ValidationError2(message,instance,schema,path24,name,argument){if(Array.isArray(path24)){this.path=path24;this.property=path24.reduce(function(sum3,item){return sum3+makeSuffix(item)},"instance")}else if(path24!==void 0){this.property=path24}if(message){this.message=message}if(schema){var id=schema.$id||schema.id;this.schema=id||schema}if(instance!==void 0){this.instance=instance}this.name=name;this.argument=argument;this.stack=this.toString()};ValidationError.prototype.toString=function toString(){return this.property+" "+this.message};var ValidatorResult=exports2.ValidatorResult=function ValidatorResult2(instance,schema,options,ctx){this.instance=instance;this.schema=schema;this.options=options;this.path=ctx.path;this.propertyPath=ctx.propertyPath;this.errors=[];this.throwError=options&&options.throwError;this.throwFirst=options&&options.throwFirst;this.throwAll=options&&options.throwAll;this.disableFormat=options&&options.disableFormat===true};ValidatorResult.prototype.addError=function addError(detail){var err;if(typeof detail=="string"){err=new ValidationError(detail,this.instance,this.schema,this.path)}else{if(!detail)throw new Error("Missing error detail");if(!detail.message)throw new Error("Missing error message");if(!detail.name)throw new Error("Missing validator type");err=new ValidationError(detail.message,this.instance,this.schema,this.path,detail.name,detail.argument)}this.errors.push(err);if(this.throwFirst){throw new ValidatorResultError(this)}else if(this.throwError){throw err}return err};ValidatorResult.prototype.importErrors=function importErrors(res){if(typeof res=="string"||res&&res.validatorType){this.addError(res)}else if(res&&res.errors){this.errors=this.errors.concat(res.errors)}};function stringizer(v6,i3){return i3+": "+v6.toString()+"\n"}ValidatorResult.prototype.toString=function toString(res){return this.errors.map(stringizer).join("")};Object.defineProperty(ValidatorResult.prototype,"valid",{get:function(){return!this.errors.length}});module2.exports.ValidatorResultError=ValidatorResultError;function ValidatorResultError(result){if(Error.captureStackTrace){Error.captureStackTrace(this,ValidatorResultError)}this.instance=result.instance;this.schema=result.schema;this.options=result.options;this.errors=result.errors}ValidatorResultError.prototype=new Error;ValidatorResultError.prototype.constructor=ValidatorResultError;ValidatorResultError.prototype.name="Validation Error";var SchemaError=exports2.SchemaError=function SchemaError2(msg,schema){this.message=msg;this.schema=schema;Error.call(this,msg);Error.captureStackTrace(this,SchemaError2)};SchemaError.prototype=Object.create(Error.prototype,{constructor:{value:SchemaError,enumerable:false},name:{value:"SchemaError",enumerable:false}});var SchemaContext=exports2.SchemaContext=function SchemaContext2(schema,options,path24,base,schemas){this.schema=schema;this.options=options;if(Array.isArray(path24)){this.path=path24;this.propertyPath=path24.reduce(function(sum3,item){return sum3+makeSuffix(item)},"instance")}else{this.propertyPath=path24}this.base=base;this.schemas=schemas};SchemaContext.prototype.resolve=function resolve7(target){return uri.resolve(this.base,target)};SchemaContext.prototype.makeChild=function makeChild(schema,propertyName){var path24=propertyName===void 0?this.path:this.path.concat([propertyName]);var id=schema.$id||schema.id;var base=uri.resolve(this.base,id||"");var ctx=new SchemaContext(schema,this.options,path24,base,Object.create(this.schemas));if(id&&!ctx.schemas[base]){ctx.schemas[base]=schema}return ctx};var FORMAT_REGEXPS=exports2.FORMAT_REGEXPS={"date-time":/^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])[tT ](2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])(\.\d+)?([zZ]|[+-]([0-5][0-9]):(60|[0-5][0-9]))$/,"date":/^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])$/,"time":/^(2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])$/,"duration":/P(T\d+(H(\d+M(\d+S)?)?|M(\d+S)?|S)|\d+(D|M(\d+D)?|Y(\d+M(\d+D)?)?)(T\d+(H(\d+M(\d+S)?)?|M(\d+S)?|S))?|\d+W)/i,"email":/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!\.)){0,61}[a-zA-Z0-9]?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!$)){0,61}[a-zA-Z0-9]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/,"idn-email":/^("(?:[!#-\[\]-\u{10FFFF}]|\\[\t -\u{10FFFF}])*"|[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}](?:\.?[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}])*)@([!#-'*+\-/-9=?A-Z\^-\u{10FFFF}](?:\.?[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}])*|\[[!-Z\^-\u{10FFFF}]*\])$/u,"ip-address":/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/,"ipv6":/^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$/,"uri":/^[a-zA-Z][a-zA-Z0-9+.-]*:[^\s]*$/,"uri-reference":/^(((([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|([A-Za-z][+\-.0-9A-Za-z]*:?)?)|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?))#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(([A-Za-z][+\-.0-9A-Za-z]*)?%[0-9A-Fa-f]{2}|[!$&-.0-9;=@_~]|[A-Za-z][+\-.0-9A-Za-z]*[!$&-*,;=@_~])(%[0-9A-Fa-f]{2}|[!$&-.0-9;=@-Z_a-z~])*((([/?](%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?#|[/?])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?|([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)?|[A-Za-z][+\-.0-9A-Za-z]*:?)?$/,"iri":/^[a-zA-Z][a-zA-Z0-9+.-]*:[^\s]*$/,"iri-reference":/^(((([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~-\u{10FFFF}]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|([A-Za-z][+\-.0-9A-Za-z]*:?)?)|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|(\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?))#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|(([A-Za-z][+\-.0-9A-Za-z]*)?%[0-9A-Fa-f]{2}|[!$&-.0-9;=@_~-\u{10FFFF}]|[A-Za-z][+\-.0-9A-Za-z]*[!$&-*,;=@_~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-.0-9;=@-Z_a-z~-\u{10FFFF}])*((([/?](%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*)?#|[/?])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*)?|([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~-\u{10FFFF}]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)?|[A-Za-z][+\-.0-9A-Za-z]*:?)?$/u,"uuid":/^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i,"uri-template":/(%[0-9a-f]{2}|[!#$&(-;=?@\[\]_a-z~]|\{[!#&+,./;=?@|]?(%[0-9a-f]{2}|[0-9_a-z])(\.?(%[0-9a-f]{2}|[0-9_a-z]))*(:[1-9]\d{0,3}|\*)?(,(%[0-9a-f]{2}|[0-9_a-z])(\.?(%[0-9a-f]{2}|[0-9_a-z]))*(:[1-9]\d{0,3}|\*)?)*\})*/iu,"json-pointer":/^(\/([\x00-\x2e0-@\[-}\x7f]|~[01])*)*$/iu,"relative-json-pointer":/^\d+(#|(\/([\x00-\x2e0-@\[-}\x7f]|~[01])*)*)$/iu,"hostname":/^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/,"host-name":/^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/,"utc-millisec":function(input){return typeof input==="string"&&parseFloat(input)===parseInt(input,10)&&!isNaN(input)},"regex":function(input){var result=true;try{new RegExp(input)}catch(e3){result=false}return result},"style":/[\r\n\t ]*[^\r\n\t ][^:]*:[\r\n\t ]*[^\r\n\t ;]*[\r\n\t ]*;?/,"color":/^(#?([0-9A-Fa-f]{3}){1,2}\b|aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow|(rgb\(\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*\))|(rgb\(\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*\)))$/,"phone":/^\+(?:[0-9] ?){6,14}[0-9]$/,"alpha":/^[a-zA-Z]+$/,"alphanumeric":/^[a-zA-Z0-9]+$/};FORMAT_REGEXPS.regexp=FORMAT_REGEXPS.regex;FORMAT_REGEXPS.pattern=FORMAT_REGEXPS.regex;FORMAT_REGEXPS.ipv4=FORMAT_REGEXPS["ip-address"];exports2.isFormat=function isFormat(input,format9,validator){if(typeof input==="string"&&FORMAT_REGEXPS[format9]!==void 0){if(FORMAT_REGEXPS[format9]instanceof RegExp){return FORMAT_REGEXPS[format9].test(input)}if(typeof FORMAT_REGEXPS[format9]==="function"){return FORMAT_REGEXPS[format9](input)}}else if(validator&&validator.customFormats&&typeof validator.customFormats[format9]==="function"){return validator.customFormats[format9](input)}return true};var makeSuffix=exports2.makeSuffix=function makeSuffix2(key){key=key.toString();if(!key.match(/[.\s\[\]]/)&&!key.match(/^[\d]/)){return"."+key}if(key.match(/^\d+$/)){return"["+key+"]"}return"["+JSON.stringify(key)+"]"};exports2.deepCompareStrict=function deepCompareStrict(a3,b3){if(typeof a3!==typeof b3){return false}if(Array.isArray(a3)){if(!Array.isArray(b3)){return false}if(a3.length!==b3.length){return false}return a3.every(function(v6,i3){return deepCompareStrict(a3[i3],b3[i3])})}if(typeof a3==="object"){if(!a3||!b3){return a3===b3}var aKeys=Object.keys(a3);var bKeys=Object.keys(b3);if(aKeys.length!==bKeys.length){return false}return aKeys.every(function(v6){return deepCompareStrict(a3[v6],b3[v6])})}return a3===b3};function deepMerger(target,dst,e3,i3){if(typeof e3==="object"){dst[i3]=deepMerge2(target[i3],e3)}else{if(target.indexOf(e3)===-1){dst.push(e3)}}}function copyist(src,dst,key){dst[key]=src[key]}function copyistWithDeepMerge(target,src,dst,key){if(typeof src[key]!=="object"||!src[key]){dst[key]=src[key]}else{if(!target[key]){dst[key]=src[key]}else{dst[key]=deepMerge2(target[key],src[key])}}}function deepMerge2(target,src){var array=Array.isArray(src);var dst=array&&[]||{};if(array){target=target||[];dst=dst.concat(target);src.forEach(deepMerger.bind(null,target,dst))}else{if(target&&typeof target==="object"){Object.keys(target).forEach(copyist.bind(null,target,dst))}Object.keys(src).forEach(copyistWithDeepMerge.bind(null,target,src,dst))}return dst}module2.exports.deepMerge=deepMerge2;exports2.objectGetPath=function objectGetPath(o3,s3){var parts=s3.split("/").slice(1);var k3;while(typeof(k3=parts.shift())=="string"){var n3=decodeURIComponent(k3.replace(/~0/,"~").replace(/~1/g,"/"));if(!(n3 in o3))return;o3=o3[n3]}return o3};function pathEncoder(v6){return"/"+encodeURIComponent(v6).replace(/~/g,"%7E")}exports2.encodePath=function encodePointer(a3){return a3.map(pathEncoder).join("")};exports2.getDecimalPlaces=function getDecimalPlaces(number){var decimalPlaces=0;if(isNaN(number))return decimalPlaces;if(typeof number!=="number"){number=Number(number)}var parts=number.toString().split("e");if(parts.length===2){if(parts[1][0]!=="-"){return decimalPlaces}else{decimalPlaces=Number(parts[1].slice(1))}}var decimalParts=parts[0].split(".");if(decimalParts.length===2){decimalPlaces+=decimalParts[1].length}return decimalPlaces};exports2.isSchema=function isSchema(val2){return typeof val2==="object"&&val2||typeof val2==="boolean"}}});var require_attribute=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/attribute.js"(exports2,module2){"use strict";var helpers=require_helpers();var ValidatorResult=helpers.ValidatorResult;var SchemaError=helpers.SchemaError;var attribute={};attribute.ignoreProperties={"id":true,"default":true,"description":true,"title":true,"additionalItems":true,"then":true,"else":true,"$schema":true,"$ref":true,"extends":true};var validators=attribute.validators={};validators.type=function validateType(instance,schema,options,ctx){if(instance===void 0){return null}var result=new ValidatorResult(instance,schema,options,ctx);var types3=Array.isArray(schema.type)?schema.type:[schema.type];if(!types3.some(this.testType.bind(this,instance,schema,options,ctx))){var list=types3.map(function(v6){if(!v6)return;var id=v6.$id||v6.id;return id?"<"+id+">":v6+""});result.addError({name:"type",argument:list,message:"is not of a type(s) "+list})}return result};function testSchemaNoThrow(instance,options,ctx,callback,schema){var throwError=options.throwError;var throwAll=options.throwAll;options.throwError=false;options.throwAll=false;var res=this.validateSchema(instance,schema,options,ctx);options.throwError=throwError;options.throwAll=throwAll;if(!res.valid&&callback instanceof Function){callback(res)}return res.valid}validators.anyOf=function validateAnyOf(instance,schema,options,ctx){if(instance===void 0){return null}var result=new ValidatorResult(instance,schema,options,ctx);var inner=new ValidatorResult(instance,schema,options,ctx);if(!Array.isArray(schema.anyOf)){throw new SchemaError("anyOf must be an array")}if(!schema.anyOf.some(testSchemaNoThrow.bind(this,instance,options,ctx,function(res){inner.importErrors(res)}))){var list=schema.anyOf.map(function(v6,i3){var id=v6.$id||v6.id;if(id)return"<"+id+">";return v6.title&&JSON.stringify(v6.title)||v6["$ref"]&&"<"+v6["$ref"]+">"||"[subschema "+i3+"]"});if(options.nestedErrors){result.importErrors(inner)}result.addError({name:"anyOf",argument:list,message:"is not any of "+list.join(",")})}return result};validators.allOf=function validateAllOf(instance,schema,options,ctx){if(instance===void 0){return null}if(!Array.isArray(schema.allOf)){throw new SchemaError("allOf must be an array")}var result=new ValidatorResult(instance,schema,options,ctx);var self2=this;schema.allOf.forEach(function(v6,i3){var valid3=self2.validateSchema(instance,v6,options,ctx);if(!valid3.valid){var id=v6.$id||v6.id;var msg=id||v6.title&&JSON.stringify(v6.title)||v6["$ref"]&&"<"+v6["$ref"]+">"||"[subschema "+i3+"]";result.addError({name:"allOf",argument:{id:msg,length:valid3.errors.length,valid:valid3},message:"does not match allOf schema "+msg+" with "+valid3.errors.length+" error[s]:"});result.importErrors(valid3)}});return result};validators.oneOf=function validateOneOf(instance,schema,options,ctx){if(instance===void 0){return null}if(!Array.isArray(schema.oneOf)){throw new SchemaError("oneOf must be an array")}var result=new ValidatorResult(instance,schema,options,ctx);var inner=new ValidatorResult(instance,schema,options,ctx);var count=schema.oneOf.filter(testSchemaNoThrow.bind(this,instance,options,ctx,function(res){inner.importErrors(res)})).length;var list=schema.oneOf.map(function(v6,i3){var id=v6.$id||v6.id;return id||v6.title&&JSON.stringify(v6.title)||v6["$ref"]&&"<"+v6["$ref"]+">"||"[subschema "+i3+"]"});if(count!==1){if(options.nestedErrors){result.importErrors(inner)}result.addError({name:"oneOf",argument:list,message:"is not exactly one from "+list.join(",")})}return result};validators.if=function validateIf(instance,schema,options,ctx){if(instance===void 0)return null;if(!helpers.isSchema(schema.if))throw new Error('Expected "if" keyword to be a schema');var ifValid=testSchemaNoThrow.call(this,instance,options,ctx,null,schema.if);var result=new ValidatorResult(instance,schema,options,ctx);var res;if(ifValid){if(schema.then===void 0)return;if(!helpers.isSchema(schema.then))throw new Error('Expected "then" keyword to be a schema');res=this.validateSchema(instance,schema.then,options,ctx.makeChild(schema.then));result.importErrors(res)}else{if(schema.else===void 0)return;if(!helpers.isSchema(schema.else))throw new Error('Expected "else" keyword to be a schema');res=this.validateSchema(instance,schema.else,options,ctx.makeChild(schema.else));result.importErrors(res)}return result};function getEnumerableProperty(object,key){if(Object.hasOwnProperty.call(object,key))return object[key];if(!(key in object))return;while(object=Object.getPrototypeOf(object)){if(Object.propertyIsEnumerable.call(object,key))return object[key]}}validators.propertyNames=function validatePropertyNames(instance,schema,options,ctx){if(!this.types.object(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);var subschema=schema.propertyNames!==void 0?schema.propertyNames:{};if(!helpers.isSchema(subschema))throw new SchemaError('Expected "propertyNames" to be a schema (object or boolean)');for(var property in instance){if(getEnumerableProperty(instance,property)!==void 0){var res=this.validateSchema(property,subschema,options,ctx.makeChild(subschema));result.importErrors(res)}}return result};validators.properties=function validateProperties(instance,schema,options,ctx){if(!this.types.object(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);var properties=schema.properties||{};for(var property in properties){var subschema=properties[property];if(subschema===void 0){continue}else if(subschema===null){throw new SchemaError('Unexpected null, expected schema in "properties"')}if(typeof options.preValidateProperty=="function"){options.preValidateProperty(instance,property,subschema,options,ctx)}var prop=getEnumerableProperty(instance,property);var res=this.validateSchema(prop,subschema,options,ctx.makeChild(subschema,property));if(res.instance!==result.instance[property])result.instance[property]=res.instance;result.importErrors(res)}return result};function testAdditionalProperty(instance,schema,options,ctx,property,result){if(!this.types.object(instance))return;if(schema.properties&&schema.properties[property]!==void 0){return}if(schema.additionalProperties===false){result.addError({name:"additionalProperties",argument:property,message:"is not allowed to have the additional property "+JSON.stringify(property)})}else{var additionalProperties=schema.additionalProperties||{};if(typeof options.preValidateProperty=="function"){options.preValidateProperty(instance,property,additionalProperties,options,ctx)}var res=this.validateSchema(instance[property],additionalProperties,options,ctx.makeChild(additionalProperties,property));if(res.instance!==result.instance[property])result.instance[property]=res.instance;result.importErrors(res)}}validators.patternProperties=function validatePatternProperties(instance,schema,options,ctx){if(!this.types.object(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);var patternProperties=schema.patternProperties||{};for(var property in instance){var test=true;for(var pattern in patternProperties){var subschema=patternProperties[pattern];if(subschema===void 0){continue}else if(subschema===null){throw new SchemaError('Unexpected null, expected schema in "patternProperties"')}try{var regexp=new RegExp(pattern,"u")}catch(_e){regexp=new RegExp(pattern)}if(!regexp.test(property)){continue}test=false;if(typeof options.preValidateProperty=="function"){options.preValidateProperty(instance,property,subschema,options,ctx)}var res=this.validateSchema(instance[property],subschema,options,ctx.makeChild(subschema,property));if(res.instance!==result.instance[property])result.instance[property]=res.instance;result.importErrors(res)}if(test){testAdditionalProperty.call(this,instance,schema,options,ctx,property,result)}}return result};validators.additionalProperties=function validateAdditionalProperties(instance,schema,options,ctx){if(!this.types.object(instance))return;if(schema.patternProperties){return null}var result=new ValidatorResult(instance,schema,options,ctx);for(var property in instance){testAdditionalProperty.call(this,instance,schema,options,ctx,property,result)}return result};validators.minProperties=function validateMinProperties(instance,schema,options,ctx){if(!this.types.object(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);var keys=Object.keys(instance);if(!(keys.length>=schema.minProperties)){result.addError({name:"minProperties",argument:schema.minProperties,message:"does not meet minimum property length of "+schema.minProperties})}return result};validators.maxProperties=function validateMaxProperties(instance,schema,options,ctx){if(!this.types.object(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);var keys=Object.keys(instance);if(!(keys.length<=schema.maxProperties)){result.addError({name:"maxProperties",argument:schema.maxProperties,message:"does not meet maximum property length of "+schema.maxProperties})}return result};validators.items=function validateItems(instance,schema,options,ctx){var self2=this;if(!this.types.array(instance))return;if(schema.items===void 0)return;var result=new ValidatorResult(instance,schema,options,ctx);instance.every(function(value,i3){if(Array.isArray(schema.items)){var items=schema.items[i3]===void 0?schema.additionalItems:schema.items[i3]}else{var items=schema.items}if(items===void 0){return true}if(items===false){result.addError({name:"items",message:"additionalItems not permitted"});return false}var res=self2.validateSchema(value,items,options,ctx.makeChild(items,i3));if(res.instance!==result.instance[i3])result.instance[i3]=res.instance;result.importErrors(res);return true});return result};validators.contains=function validateContains(instance,schema,options,ctx){var self2=this;if(!this.types.array(instance))return;if(schema.contains===void 0)return;if(!helpers.isSchema(schema.contains))throw new Error('Expected "contains" keyword to be a schema');var result=new ValidatorResult(instance,schema,options,ctx);var count=instance.some(function(value,i3){var res=self2.validateSchema(value,schema.contains,options,ctx.makeChild(schema.contains,i3));return res.errors.length===0});if(count===false){result.addError({name:"contains",argument:schema.contains,message:"must contain an item matching given schema"})}return result};validators.minimum=function validateMinimum(instance,schema,options,ctx){if(!this.types.number(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);if(schema.exclusiveMinimum&&schema.exclusiveMinimum===true){if(!(instance>schema.minimum)){result.addError({name:"minimum",argument:schema.minimum,message:"must be greater than "+schema.minimum})}}else{if(!(instance>=schema.minimum)){result.addError({name:"minimum",argument:schema.minimum,message:"must be greater than or equal to "+schema.minimum})}}return result};validators.maximum=function validateMaximum(instance,schema,options,ctx){if(!this.types.number(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);if(schema.exclusiveMaximum&&schema.exclusiveMaximum===true){if(!(instance<schema.maximum)){result.addError({name:"maximum",argument:schema.maximum,message:"must be less than "+schema.maximum})}}else{if(!(instance<=schema.maximum)){result.addError({name:"maximum",argument:schema.maximum,message:"must be less than or equal to "+schema.maximum})}}return result};validators.exclusiveMinimum=function validateExclusiveMinimum(instance,schema,options,ctx){if(typeof schema.exclusiveMinimum==="boolean")return;if(!this.types.number(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);var valid3=instance>schema.exclusiveMinimum;if(!valid3){result.addError({name:"exclusiveMinimum",argument:schema.exclusiveMinimum,message:"must be strictly greater than "+schema.exclusiveMinimum})}return result};validators.exclusiveMaximum=function validateExclusiveMaximum(instance,schema,options,ctx){if(typeof schema.exclusiveMaximum==="boolean")return;if(!this.types.number(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);var valid3=instance<schema.exclusiveMaximum;if(!valid3){result.addError({name:"exclusiveMaximum",argument:schema.exclusiveMaximum,message:"must be strictly less than "+schema.exclusiveMaximum})}return result};var validateMultipleOfOrDivisbleBy=function validateMultipleOfOrDivisbleBy2(instance,schema,options,ctx,validationType,errorMessage){if(!this.types.number(instance))return;var validationArgument=schema[validationType];if(validationArgument==0){throw new SchemaError(validationType+" cannot be zero")}var result=new ValidatorResult(instance,schema,options,ctx);var instanceDecimals=helpers.getDecimalPlaces(instance);var divisorDecimals=helpers.getDecimalPlaces(validationArgument);var maxDecimals=Math.max(instanceDecimals,divisorDecimals);var multiplier=Math.pow(10,maxDecimals);if(Math.round(instance*multiplier)%Math.round(validationArgument*multiplier)!==0){result.addError({name:validationType,argument:validationArgument,message:errorMessage+JSON.stringify(validationArgument)})}return result};validators.multipleOf=function validateMultipleOf(instance,schema,options,ctx){return validateMultipleOfOrDivisbleBy.call(this,instance,schema,options,ctx,"multipleOf","is not a multiple of (divisible by) ")};validators.divisibleBy=function validateDivisibleBy(instance,schema,options,ctx){return validateMultipleOfOrDivisbleBy.call(this,instance,schema,options,ctx,"divisibleBy","is not divisible by (multiple of) ")};validators.required=function validateRequired(instance,schema,options,ctx){var result=new ValidatorResult(instance,schema,options,ctx);if(instance===void 0&&schema.required===true){result.addError({name:"required",message:"is required"})}else if(this.types.object(instance)&&Array.isArray(schema.required)){schema.required.forEach(function(n3){if(getEnumerableProperty(instance,n3)===void 0){result.addError({name:"required",argument:n3,message:"requires property "+JSON.stringify(n3)})}})}return result};validators.pattern=function validatePattern(instance,schema,options,ctx){if(!this.types.string(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);var pattern=schema.pattern;try{var regexp=new RegExp(pattern,"u")}catch(_e){regexp=new RegExp(pattern)}if(!instance.match(regexp)){result.addError({name:"pattern",argument:schema.pattern,message:"does not match pattern "+JSON.stringify(schema.pattern.toString())})}return result};validators.format=function validateFormat(instance,schema,options,ctx){if(instance===void 0)return;var result=new ValidatorResult(instance,schema,options,ctx);if(!result.disableFormat&&!helpers.isFormat(instance,schema.format,this)){result.addError({name:"format",argument:schema.format,message:"does not conform to the "+JSON.stringify(schema.format)+" format"})}return result};validators.minLength=function validateMinLength(instance,schema,options,ctx){if(!this.types.string(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);var hsp=instance.match(/[\uDC00-\uDFFF]/g);var length=instance.length-(hsp?hsp.length:0);if(!(length>=schema.minLength)){result.addError({name:"minLength",argument:schema.minLength,message:"does not meet minimum length of "+schema.minLength})}return result};validators.maxLength=function validateMaxLength(instance,schema,options,ctx){if(!this.types.string(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);var hsp=instance.match(/[\uDC00-\uDFFF]/g);var length=instance.length-(hsp?hsp.length:0);if(!(length<=schema.maxLength)){result.addError({name:"maxLength",argument:schema.maxLength,message:"does not meet maximum length of "+schema.maxLength})}return result};validators.minItems=function validateMinItems(instance,schema,options,ctx){if(!this.types.array(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);if(!(instance.length>=schema.minItems)){result.addError({name:"minItems",argument:schema.minItems,message:"does not meet minimum length of "+schema.minItems})}return result};validators.maxItems=function validateMaxItems(instance,schema,options,ctx){if(!this.types.array(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);if(!(instance.length<=schema.maxItems)){result.addError({name:"maxItems",argument:schema.maxItems,message:"does not meet maximum length of "+schema.maxItems})}return result};function testArrays(v6,i3,a3){var j3,len=a3.length;for(j3=i3+1,len;j3<len;j3++){if(helpers.deepCompareStrict(v6,a3[j3])){return false}}return true}validators.uniqueItems=function validateUniqueItems(instance,schema,options,ctx){if(schema.uniqueItems!==true)return;if(!this.types.array(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);if(!instance.every(testArrays)){result.addError({name:"uniqueItems",message:"contains duplicate item"})}return result};validators.dependencies=function validateDependencies(instance,schema,options,ctx){if(!this.types.object(instance))return;var result=new ValidatorResult(instance,schema,options,ctx);for(var property in schema.dependencies){if(instance[property]===void 0){continue}var dep=schema.dependencies[property];var childContext=ctx.makeChild(dep,property);if(typeof dep=="string"){dep=[dep]}if(Array.isArray(dep)){dep.forEach(function(prop){if(instance[prop]===void 0){result.addError({name:"dependencies",argument:childContext.propertyPath,message:"property "+prop+" not found, required by "+childContext.propertyPath})}})}else{var res=this.validateSchema(instance,dep,options,childContext);if(result.instance!==res.instance)result.instance=res.instance;if(res&&res.errors.length){result.addError({name:"dependencies",argument:childContext.propertyPath,message:"does not meet dependency required by "+childContext.propertyPath});result.importErrors(res)}}}return result};validators["enum"]=function validateEnum(instance,schema,options,ctx){if(instance===void 0){return null}if(!Array.isArray(schema["enum"])){throw new SchemaError("enum expects an array",schema)}var result=new ValidatorResult(instance,schema,options,ctx);if(!schema["enum"].some(helpers.deepCompareStrict.bind(null,instance))){result.addError({name:"enum",argument:schema["enum"],message:"is not one of enum values: "+schema["enum"].map(String).join(",")})}return result};validators["const"]=function validateEnum(instance,schema,options,ctx){if(instance===void 0){return null}var result=new ValidatorResult(instance,schema,options,ctx);if(!helpers.deepCompareStrict(schema["const"],instance)){result.addError({name:"const",argument:schema["const"],message:"does not exactly match expected constant: "+schema["const"]})}return result};validators.not=validators.disallow=function validateNot(instance,schema,options,ctx){var self2=this;if(instance===void 0)return null;var result=new ValidatorResult(instance,schema,options,ctx);var notTypes=schema.not||schema.disallow;if(!notTypes)return null;if(!Array.isArray(notTypes))notTypes=[notTypes];notTypes.forEach(function(type){if(self2.testType(instance,schema,options,ctx,type)){var id=type&&(type.$id||type.id);var schemaId=id||type;result.addError({name:"not",argument:schemaId,message:"is of prohibited type "+schemaId})}});return result};module2.exports=attribute}});var require_scan=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/scan.js"(exports2,module2){"use strict";var urilib=require("url");var helpers=require_helpers();module2.exports.SchemaScanResult=SchemaScanResult;function SchemaScanResult(found,ref){this.id=found;this.ref=ref}module2.exports.scan=function scan(base,schema){function scanSchema(baseuri,schema2){if(!schema2||typeof schema2!="object")return;if(schema2.$ref){var resolvedUri=urilib.resolve(baseuri,schema2.$ref);ref[resolvedUri]=ref[resolvedUri]?ref[resolvedUri]+1:0;return}var id=schema2.$id||schema2.id;var ourBase=id?urilib.resolve(baseuri,id):baseuri;if(ourBase){if(ourBase.indexOf("#")<0)ourBase+="#";if(found[ourBase]){if(!helpers.deepCompareStrict(found[ourBase],schema2)){throw new Error("Schema <"+ourBase+"> already exists with different definition")}return found[ourBase]}found[ourBase]=schema2;if(ourBase[ourBase.length-1]=="#"){found[ourBase.substring(0,ourBase.length-1)]=schema2}}scanArray(ourBase+"/items",Array.isArray(schema2.items)?schema2.items:[schema2.items]);scanArray(ourBase+"/extends",Array.isArray(schema2.extends)?schema2.extends:[schema2.extends]);scanSchema(ourBase+"/additionalItems",schema2.additionalItems);scanObject(ourBase+"/properties",schema2.properties);scanSchema(ourBase+"/additionalProperties",schema2.additionalProperties);scanObject(ourBase+"/definitions",schema2.definitions);scanObject(ourBase+"/patternProperties",schema2.patternProperties);scanObject(ourBase+"/dependencies",schema2.dependencies);scanArray(ourBase+"/disallow",schema2.disallow);scanArray(ourBase+"/allOf",schema2.allOf);scanArray(ourBase+"/anyOf",schema2.anyOf);scanArray(ourBase+"/oneOf",schema2.oneOf);scanSchema(ourBase+"/not",schema2.not)}function scanArray(baseuri,schemas){if(!Array.isArray(schemas))return;for(var i3=0;i3<schemas.length;i3++){scanSchema(baseuri+"/"+i3,schemas[i3])}}function scanObject(baseuri,schemas){if(!schemas||typeof schemas!="object")return;for(var p3 in schemas){scanSchema(baseuri+"/"+p3,schemas[p3])}}var found={};var ref={};scanSchema(base,schema);return new SchemaScanResult(found,ref)}}});var require_validator=__commonJS({"../../node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/validator.js"(exports2,module2){"use strict";var urilib=require("url");var attribute=require_attribute();var helpers=require_helpers();var scanSchema=require_scan().scan;var ValidatorResult=helpers.ValidatorResult;var ValidatorResultError=helpers.ValidatorResultError;var SchemaError=helpers.SchemaError;var SchemaContext=helpers.SchemaContext;var anonymousBase="/";var Validator=function Validator2(){this.customFormats=Object.create(Validator2.prototype.customFormats);this.schemas={};this.unresolvedRefs=[];this.types=Object.create(types3);this.attributes=Object.create(attribute.validators)};Validator.prototype.customFormats={};Validator.prototype.schemas=null;Validator.prototype.types=null;Validator.prototype.attributes=null;Validator.prototype.unresolvedRefs=null;Validator.prototype.addSchema=function addSchema(schema,base){var self2=this;if(!schema){return null}var scan=scanSchema(base||anonymousBase,schema);var ourUri=base||schema.$id||schema.id;for(var uri in scan.id){this.schemas[uri]=scan.id[uri]}for(var uri in scan.ref){this.unresolvedRefs.push(uri)}this.unresolvedRefs=this.unresolvedRefs.filter(function(uri2){return typeof self2.schemas[uri2]==="undefined"});return this.schemas[ourUri]};Validator.prototype.addSubSchemaArray=function addSubSchemaArray(baseuri,schemas){if(!Array.isArray(schemas))return;for(var i3=0;i3<schemas.length;i3++){this.addSubSchema(baseuri,schemas[i3])}};Validator.prototype.addSubSchemaObject=function addSubSchemaArray(baseuri,schemas){if(!schemas||typeof schemas!="object")return;for(var p3 in schemas){this.addSubSchema(baseuri,schemas[p3])}};Validator.prototype.setSchemas=function setSchemas(schemas){this.schemas=schemas};Validator.prototype.getSchema=function getSchema(urn){return this.schemas[urn]};Validator.prototype.validate=function validate10(instance,schema,options,ctx){if(typeof schema!=="boolean"&&typeof schema!=="object"||schema===null){throw new SchemaError("Expected `schema` to be an object or boolean")}if(!options){options={}}var id=schema.$id||schema.id;var base=urilib.resolve(options.base||anonymousBase,id||"");if(!ctx){ctx=new SchemaContext(schema,options,[],base,Object.create(this.schemas));if(!ctx.schemas[base]){ctx.schemas[base]=schema}var found=scanSchema(base,schema);for(var n3 in found.id){var sch=found.id[n3];ctx.schemas[n3]=sch}}if(options.required&&instance===void 0){var result=new ValidatorResult(instance,schema,options,ctx);result.addError("is required, but is undefined");return result}var result=this.validateSchema(instance,schema,options,ctx);if(!result){throw new Error("Result undefined")}else if(options.throwAll&&result.errors.length){throw new ValidatorResultError(result)}return result};function shouldResolve(schema){var ref=typeof schema==="string"?schema:schema.$ref;if(typeof ref=="string")return ref;return false}Validator.prototype.validateSchema=function validateSchema(instance,schema,options,ctx){var result=new ValidatorResult(instance,schema,options,ctx);if(typeof schema==="boolean"){if(schema===true){schema={}}else if(schema===false){schema={type:[]}}}else if(!schema){throw new Error("schema is undefined")}if(schema["extends"]){if(Array.isArray(schema["extends"])){var schemaobj={schema,ctx};schema["extends"].forEach(this.schemaTraverser.bind(this,schemaobj));schema=schemaobj.schema;schemaobj.schema=null;schemaobj.ctx=null;schemaobj=null}else{schema=helpers.deepMerge(schema,this.superResolve(schema["extends"],ctx))}}var switchSchema=shouldResolve(schema);if(switchSchema){var resolved=this.resolve(schema,switchSchema,ctx);var subctx=new SchemaContext(resolved.subschema,options,ctx.path,resolved.switchSchema,ctx.schemas);return this.validateSchema(instance,resolved.subschema,options,subctx)}var skipAttributes=options&&options.skipAttributes||[];for(var key in schema){if(!attribute.ignoreProperties[key]&&skipAttributes.indexOf(key)<0){var validatorErr=null;var validator=this.attributes[key];if(validator){validatorErr=validator.call(this,instance,schema,options,ctx)}else if(options.allowUnknownAttributes===false){throw new SchemaError("Unsupported attribute: "+key,schema)}if(validatorErr){result.importErrors(validatorErr)}}}if(typeof options.rewrite=="function"){var value=options.rewrite.call(this,instance,schema,options,ctx);result.instance=value}return result};Validator.prototype.schemaTraverser=function schemaTraverser(schemaobj,s3){schemaobj.schema=helpers.deepMerge(schemaobj.schema,this.superResolve(s3,schemaobj.ctx))};Validator.prototype.superResolve=function superResolve(schema,ctx){var ref=shouldResolve(schema);if(ref){return this.resolve(schema,ref,ctx).subschema}return schema};Validator.prototype.resolve=function resolve7(schema,switchSchema,ctx){switchSchema=ctx.resolve(switchSchema);if(ctx.schemas[switchSchema]){return{subschema:ctx.schemas[switchSchema],switchSchema}}var parsed=urilib.parse(switchSchema);var fragment=parsed&&parsed.hash;var document2=fragment&&fragment.length&&switchSchema.substr(0,switchSchema.length-fragment.length);if(!document2||!ctx.schemas[document2]){throw new SchemaError("no such schema <"+switchSchema+">",schema)}var subschema=helpers.objectGetPath(ctx.schemas[document2],fragment.substr(1));if(subschema===void 0){throw new SchemaError("no such schema "+fragment+" located in <"+document2+">",schema)}return{subschema,switchSchema}};Validator.prototype.testType=function validateType(instance,schema,options,ctx,type){if(type===void 0){return}else if(type===null){throw new SchemaError('Unexpected null in "type" keyword')}if(typeof this.types[type]=="function"){return this.types[type].call(this,instance)}if(type&&typeof type=="object"){var res=this.validateSchema(instance,type,options,ctx);return res===void 0||!(res&&res.errors.length)}return true};var types3=Validator.prototype.types={};types3.string=function testString(instance){return typeof instance=="string"};types3.numb