aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
8 lines (7 loc) • 10.3 kB
JavaScript
"use strict";var __esDecorate=exports&&exports.__esDecorate||function(ctor,descriptorIn,decorators,contextIn,initializers,extraInitializers){function accept(f){if(f!==void 0&&typeof f!="function")throw new TypeError("Function expected");return f}for(var kind=contextIn.kind,key=kind==="getter"?"get":kind==="setter"?"set":"value",target=!descriptorIn&&ctor?contextIn.static?ctor:ctor.prototype:null,descriptor=descriptorIn||(target?Object.getOwnPropertyDescriptor(target,contextIn.name):{}),_,done=!1,i=decorators.length-1;i>=0;i--){var context={};for(var p in contextIn)context[p]=p==="access"?{}:contextIn[p];for(var p in contextIn.access)context.access[p]=contextIn.access[p];context.addInitializer=function(f){if(done)throw new TypeError("Cannot add initializers after decoration has completed");extraInitializers.push(accept(f||null))};var result=(0,decorators[i])(kind==="accessor"?{get:descriptor.get,set:descriptor.set}:descriptor[key],context);if(kind==="accessor"){if(result===void 0)continue;if(result===null||typeof result!="object")throw new TypeError("Object expected");(_=accept(result.get))&&(descriptor.get=_),(_=accept(result.set))&&(descriptor.set=_),(_=accept(result.init))&&initializers.unshift(_)}else(_=accept(result))&&(kind==="field"?initializers.unshift(_):descriptor[key]=_)}target&&Object.defineProperty(target,contextIn.name,descriptor),done=!0},__runInitializers=exports&&exports.__runInitializers||function(thisArg,initializers,value){for(var useValue=arguments.length>2,i=0;i<initializers.length;i++)value=useValue?initializers[i].call(thisArg,value):initializers[i].call(thisArg);return useValue?value:void 0};Object.defineProperty(exports,"__esModule",{value:!0}),exports.RuntimeEndpoint=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var runtime_endpoint_base_1=()=>{var tmp=require("./runtime-endpoint-base");return runtime_endpoint_base_1=()=>tmp,tmp},bedrockagentcore=()=>{var tmp=require("../../../aws-bedrockagentcore");return bedrockagentcore=()=>tmp,tmp},core_1=()=>{var tmp=require("../../../core");return core_1=()=>tmp,tmp},errors_1=()=>{var tmp=require("../../../core/lib/errors");return errors_1=()=>tmp,tmp},helpers_internal_1=()=>{var tmp=require("../../../core/lib/helpers-internal");return helpers_internal_1=()=>tmp,tmp},metadata_resource_1=()=>{var tmp=require("../../../core/lib/metadata-resource");return metadata_resource_1=()=>tmp,tmp},prop_injectable_1=()=>{var tmp=require("../../../core/lib/prop-injectable");return prop_injectable_1=()=>tmp,tmp},validation_helpers_1=()=>{var tmp=require("../common/validation-helpers");return validation_helpers_1=()=>tmp,tmp};let RuntimeEndpoint=(()=>{let _classDecorators=[prop_injectable_1().propertyInjectable],_classDescriptor,_classExtraInitializers=[],_classThis,_classSuper=runtime_endpoint_base_1().RuntimeEndpointBase;var RuntimeEndpoint2=class extends _classSuper{static{_classThis=this}static{const _metadata=typeof Symbol=="function"&&Symbol.metadata?Object.create(_classSuper[Symbol.metadata]??null):void 0;__esDecorate(null,_classDescriptor={value:_classThis},_classDecorators,{kind:"class",name:_classThis.name,metadata:_metadata},null,_classExtraInitializers),RuntimeEndpoint2=_classThis=_classDescriptor.value,_metadata&&Object.defineProperty(_classThis,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:_metadata})}static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_bedrockagentcore.RuntimeEndpoint",version:"2.257.0"};static PROPERTY_INJECTION_ID="aws-cdk-lib.aws-bedrockagentcore.RuntimeEndpoint";static fromRuntimeEndpointAttributes(scope,id,attrs){try{jsiiDeprecationWarnings().aws_cdk_lib_aws_bedrockagentcore_RuntimeEndpointAttributes(attrs)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.fromRuntimeEndpointAttributes),error}class ImportedBedrockAgentRuntimeEndpoint extends runtime_endpoint_base_1().RuntimeEndpointBase{agentRuntimeEndpointArn=attrs.agentRuntimeEndpointArn;endpointName=attrs.endpointName;agentRuntimeArn=attrs.agentRuntimeArn;description=attrs.description;status=attrs.status;liveVersion=attrs.liveVersion;targetVersion=attrs.targetVersion;createdAt=attrs.createdAt;endpointId=attrs.endpointId;lastUpdatedAt=attrs.lastUpdatedAt}return new ImportedBedrockAgentRuntimeEndpoint(scope,id)}agentRuntimeEndpointArn;endpointName;agentRuntimeArn;status;liveVersion;targetVersion;createdAt;description;endpointId;agentRuntimeId;agentRuntimeVersion;lastUpdatedAt;endpointResource;constructor(scope,id,props){super(scope,id,{physicalName:props.endpointName??core_1().Lazy.string({produce:()=>core_1().Names.uniqueResourceName(this,{maxLength:48})})});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_bedrockagentcore_RuntimeEndpointProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,RuntimeEndpoint2),error}(0,metadata_resource_1().addConstructMetadata)(this,props),this.endpointName=this.physicalName,this.validateEndpointName(),this.agentRuntimeId=props.agentRuntimeId,this.validateAgentRuntimeId(),this.agentRuntimeVersion=props.agentRuntimeVersion??"1",this.validateAgentRuntimeVersion(),this.description=props.description,this.description&&this.validateDescription(),props.tags&&this.validateTags(props.tags);const cfnProps={name:this.endpointName,agentRuntimeId:core_1().Lazy.string({produce:()=>this.renderAgentRuntimeId()}),agentRuntimeVersion:core_1().Lazy.string({produce:()=>this.renderAgentRuntimeVersion()}),description:core_1().Lazy.string({produce:()=>this.renderDescription()}),tags:props.tags??{}};this.endpointResource=new(bedrockagentcore()).CfnRuntimeEndpoint(this,"Resource",cfnProps),this.endpointId=this.endpointResource.attrId,this.agentRuntimeEndpointArn=this.endpointResource.attrAgentRuntimeEndpointArn,this.agentRuntimeArn=this.endpointResource.attrAgentRuntimeArn,this.status=this.endpointResource.attrStatus,this.liveVersion=this.endpointResource.attrLiveVersion,this.targetVersion=this.endpointResource.attrTargetVersion,this.createdAt=this.endpointResource.attrCreatedAt,this.lastUpdatedAt=this.endpointResource.attrLastUpdatedAt}renderAgentRuntimeId(){return this.agentRuntimeId}renderAgentRuntimeVersion(){return this.agentRuntimeVersion}renderDescription(){return this.description}validateEndpointName(){if(core_1().Token.isUnresolved(this.endpointName))return;const lengthErrors=(0,validation_helpers_1().validateStringFieldLength)({value:this.endpointName,fieldName:"Endpoint name",minLength:1,maxLength:48}),patternErrors=(0,validation_helpers_1().validateFieldPattern)(this.endpointName,"Endpoint name",/^[a-zA-Z][a-zA-Z0-9_]{0,47}$/,"Endpoint name must start with a letter and contain only letters, numbers, and underscores"),allErrors=[...lengthErrors,...patternErrors];if(allErrors.length>0)throw new(errors_1()).UnscopedValidationError((0,helpers_internal_1().lit)`InvalidEndpointName`,allErrors.join(`
`))}validateDescription(){if(!core_1().Token.isUnresolved(this.description)&&this.description){const errors=(0,validation_helpers_1().validateStringFieldLength)({value:this.description,fieldName:"Description",minLength:1,maxLength:256});if(errors.length>0)throw new(errors_1()).UnscopedValidationError((0,helpers_internal_1().lit)`InvalidEndpointDescription`,errors.join(`
`))}}validateAgentRuntimeId(){if(core_1().Token.isUnresolved(this.agentRuntimeId))return;const patternErrors=(0,validation_helpers_1().validateFieldPattern)(this.agentRuntimeId,"Agent runtime ID",/^[a-zA-Z][a-zA-Z0-9_]{0,99}-[a-zA-Z0-9]{10}$/,"Agent runtime ID must start with a letter, followed by up to 99 alphanumeric or underscore characters, then a hyphen, and exactly 10 alphanumeric characters");if(patternErrors.length>0)throw new(errors_1()).UnscopedValidationError((0,helpers_internal_1().lit)`InvalidAgentRuntimeId`,patternErrors.join(`
`))}validateAgentRuntimeVersion(){if(core_1().Token.isUnresolved(this.agentRuntimeVersion))return;const patternErrors=(0,validation_helpers_1().validateFieldPattern)(this.agentRuntimeVersion,"Agent runtime version",/^[1-9]\d{0,4}$/,"Agent runtime version must be a number between 1 and 99999");if(patternErrors.length>0)throw new(errors_1()).UnscopedValidationError((0,helpers_internal_1().lit)`InvalidAgentRuntimeVersion`,patternErrors.join(`
`))}validateTags(tags){for(const[key,value]of Object.entries(tags)){if(core_1().Token.isUnresolved(key)||core_1().Token.isUnresolved(value))continue;const keyLengthErrors=(0,validation_helpers_1().validateStringFieldLength)({value:key,fieldName:`Tag key "${key}"`,minLength:1,maxLength:256});if(key.toLowerCase().startsWith("aws:"))throw new(errors_1()).UnscopedValidationError((0,helpers_internal_1().lit)`InvalidEndpointTagKey`,`Tag key "${key}" cannot start with "aws:" as this prefix is reserved by AWS`);const keyPatternErrors=(0,validation_helpers_1().validateFieldPattern)(key,`Tag key "${key}"`,/^[a-zA-Z0-9\s._:/=+@-]*$/,`Tag key "${key}" can only contain letters (a-z, A-Z), numbers (0-9), spaces, and special characters (._:/=+@-)`),keyErrors=[...keyLengthErrors,...keyPatternErrors];if(keyErrors.length>0)throw new(errors_1()).UnscopedValidationError((0,helpers_internal_1().lit)`InvalidEndpointTagKey`,keyErrors.join(`
`));if(value==null)throw new(errors_1()).UnscopedValidationError((0,helpers_internal_1().lit)`NullEndpointTagValue`,`Tag value for key "${key}" cannot be null or undefined`);const valueLengthErrors=(0,validation_helpers_1().validateStringFieldLength)({value,fieldName:`Tag value for key "${key}"`,minLength:0,maxLength:256}),valuePatternErrors=(0,validation_helpers_1().validateFieldPattern)(value,`Tag value for key "${key}"`,/^[a-zA-Z0-9\s._:/=+@-]*$/,`Tag value for key "${key}" can only contain letters (a-z, A-Z), numbers (0-9), spaces, and special characters (._:/=+@-)`),valueErrors=[...valueLengthErrors,...valuePatternErrors];if(valueErrors.length>0)throw new(errors_1()).UnscopedValidationError((0,helpers_internal_1().lit)`InvalidEndpointTagValue`,valueErrors.join(`
`))}}static{__runInitializers(_classThis,_classExtraInitializers)}};return RuntimeEndpoint2=_classThis})();exports.RuntimeEndpoint=RuntimeEndpoint;