@fjall/components-infrastructure 0.89.4 → 0.89.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +50 -21
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -18
- package/dist/lib/app.d.ts +12 -12
- package/dist/lib/app.js +61 -56
- package/dist/lib/aspects/index.d.ts +1 -1
- package/dist/lib/aspects/index.js +1 -6
- package/dist/lib/aspects/resourceInventory.js +6 -13
- package/dist/lib/config/audit.js +1 -5
- package/dist/lib/config/aws/accessAnalyser.d.ts +11 -0
- package/dist/lib/config/aws/accessAnalyser.js +17 -0
- package/dist/lib/config/aws/accountAuditRole.js +11 -15
- package/dist/lib/config/aws/accountMonitoringRole.js +25 -29
- package/dist/lib/config/aws/alarmTopic.d.ts +8 -0
- package/dist/lib/config/aws/alarmTopic.js +19 -0
- package/dist/lib/config/aws/cloudTrail.js +4 -9
- package/dist/lib/config/aws/configRecorder.d.ts +16 -0
- package/dist/lib/config/aws/configRecorder.js +51 -0
- package/dist/lib/config/aws/configRulePreset.d.ts +13 -0
- package/dist/lib/config/aws/configRulePreset.js +62 -0
- package/dist/lib/config/aws/disasterRecovery.d.ts +1 -1
- package/dist/lib/config/aws/disasterRecovery.js +56 -73
- package/dist/lib/config/aws/ebsDefaultEncryption.d.ts +8 -0
- package/dist/lib/config/aws/ebsDefaultEncryption.js +41 -0
- package/dist/lib/config/aws/ecrDefaultImage.js +25 -30
- package/dist/lib/config/aws/eventBus.js +8 -11
- package/dist/lib/config/aws/guardDutyDetector.d.ts +16 -0
- package/dist/lib/config/aws/guardDutyDetector.js +26 -0
- package/dist/lib/config/aws/identityCenter.d.ts +1 -1
- package/dist/lib/config/aws/identityCenter.js +23 -25
- package/dist/lib/config/aws/identityCenterGroupMembership.js +18 -22
- package/dist/lib/config/aws/index.d.ts +19 -8
- package/dist/lib/config/aws/index.js +19 -25
- package/dist/lib/config/aws/inspectorEnablement.d.ts +9 -0
- package/dist/lib/config/aws/inspectorEnablement.js +51 -0
- package/dist/lib/config/aws/ipam.js +9 -13
- package/dist/lib/config/aws/oidcConnector.js +8 -12
- package/dist/lib/config/aws/platform.js +1 -5
- package/dist/lib/config/aws/s3BlockPublicAccess.d.ts +9 -0
- package/dist/lib/config/aws/s3BlockPublicAccess.js +55 -0
- package/dist/lib/config/aws/scpPreset.d.ts +21 -0
- package/dist/lib/config/aws/scpPreset.js +311 -0
- package/dist/lib/config/aws/securityBaseline.d.ts +15 -0
- package/dist/lib/config/aws/securityBaseline.js +27 -0
- package/dist/lib/config/aws/securityHubHub.d.ts +15 -0
- package/dist/lib/config/aws/securityHubHub.js +28 -0
- package/dist/lib/config/aws/securityServicesAdmin.d.ts +20 -0
- package/dist/lib/config/aws/securityServicesAdmin.js +115 -0
- package/dist/lib/config/index.d.ts +2 -2
- package/dist/lib/config/index.js +2 -21
- package/dist/lib/index.d.ts +4 -4
- package/dist/lib/index.js +5 -26
- package/dist/lib/patterns/aws/account.d.ts +17 -1
- package/dist/lib/patterns/aws/account.js +61 -33
- package/dist/lib/patterns/aws/apexDomainPattern.d.ts +26 -0
- package/dist/lib/patterns/aws/apexDomainPattern.js +91 -0
- package/dist/lib/patterns/aws/auditRole.js +13 -16
- package/dist/lib/patterns/aws/buildkite.d.ts +1 -1
- package/dist/lib/patterns/aws/buildkite.js +70 -75
- package/dist/lib/patterns/aws/cdn.d.ts +5 -5
- package/dist/lib/patterns/aws/cdn.js +22 -28
- package/dist/lib/patterns/aws/compute.d.ts +1 -1
- package/dist/lib/patterns/aws/compute.js +31 -44
- package/dist/lib/patterns/aws/computeEc2.d.ts +1 -1
- package/dist/lib/patterns/aws/computeEc2.js +11 -14
- package/dist/lib/patterns/aws/computeEcs.d.ts +18 -2
- package/dist/lib/patterns/aws/computeEcs.js +41 -31
- package/dist/lib/patterns/aws/computeLambda.d.ts +2 -2
- package/dist/lib/patterns/aws/computeLambda.js +24 -31
- package/dist/lib/patterns/aws/database.d.ts +16 -7
- package/dist/lib/patterns/aws/database.js +81 -73
- package/dist/lib/patterns/aws/delegatedDomainPattern.d.ts +17 -0
- package/dist/lib/patterns/aws/delegatedDomainPattern.js +54 -0
- package/dist/lib/patterns/aws/dnsRecordComposer.d.ts +25 -0
- package/dist/lib/patterns/aws/dnsRecordComposer.js +225 -0
- package/dist/lib/patterns/aws/domain.d.ts +32 -0
- package/dist/lib/patterns/aws/domain.js +115 -0
- package/dist/lib/patterns/aws/domainDelegation.d.ts +3 -3
- package/dist/lib/patterns/aws/domainDelegation.js +28 -37
- package/dist/lib/patterns/aws/domainFactory.d.ts +20 -5
- package/dist/lib/patterns/aws/domainFactory.js +48 -10
- package/dist/lib/patterns/aws/domainValidation.d.ts +11 -0
- package/dist/lib/patterns/aws/domainValidation.js +145 -0
- package/dist/lib/patterns/aws/externalRecordsPattern.d.ts +18 -0
- package/dist/lib/patterns/aws/externalRecordsPattern.js +141 -0
- package/dist/lib/patterns/aws/fivetranProxy.d.ts +1 -1
- package/dist/lib/patterns/aws/fivetranProxy.js +6 -11
- package/dist/lib/patterns/aws/index.d.ts +21 -19
- package/dist/lib/patterns/aws/index.js +25 -36
- package/dist/lib/patterns/aws/interfaces/cdn.js +1 -5
- package/dist/lib/patterns/aws/interfaces/compute.js +4 -11
- package/dist/lib/patterns/aws/interfaces/connector.js +1 -15
- package/dist/lib/patterns/aws/interfaces/database.d.ts +1 -1
- package/dist/lib/patterns/aws/interfaces/database.js +6 -15
- package/dist/lib/patterns/aws/interfaces/domain.d.ts +80 -2
- package/dist/lib/patterns/aws/interfaces/domain.js +1 -6
- package/dist/lib/patterns/aws/interfaces/index.js +8 -41
- package/dist/lib/patterns/aws/interfaces/messaging.js +4 -11
- package/dist/lib/patterns/aws/interfaces/organisation.d.ts +1 -1
- package/dist/lib/patterns/aws/interfaces/organisation.js +4 -11
- package/dist/lib/patterns/aws/interfaces/pattern.js +2 -7
- package/dist/lib/patterns/aws/interfaces/storage.js +1 -5
- package/dist/lib/patterns/aws/managedIdentityCenter.js +7 -12
- package/dist/lib/patterns/aws/messaging.d.ts +7 -7
- package/dist/lib/patterns/aws/messaging.js +22 -33
- package/dist/lib/patterns/aws/network.d.ts +2 -2
- package/dist/lib/patterns/aws/network.js +9 -14
- package/dist/lib/patterns/aws/organisation.d.ts +6 -2
- package/dist/lib/patterns/aws/organisation.js +34 -35
- package/dist/lib/patterns/aws/organisationFactory.d.ts +3 -3
- package/dist/lib/patterns/aws/organisationFactory.js +7 -12
- package/dist/lib/patterns/aws/pattern.js +6 -12
- package/dist/lib/patterns/aws/payload.js +73 -63
- package/dist/lib/patterns/aws/platform.d.ts +6 -3
- package/dist/lib/patterns/aws/platform.js +15 -15
- package/dist/lib/patterns/aws/storage.d.ts +6 -4
- package/dist/lib/patterns/aws/storage.js +35 -40
- package/dist/lib/patterns/aws/subdomainHostedZone.js +11 -16
- package/dist/lib/patterns/aws/targets/fjallTargets.d.ts +37 -0
- package/dist/lib/patterns/aws/targets/fjallTargets.js +66 -0
- package/dist/lib/patterns/aws/targets/index.d.ts +2 -0
- package/dist/lib/patterns/aws/targets/index.js +2 -0
- package/dist/lib/patterns/aws/targets/targetResolution.d.ts +76 -0
- package/dist/lib/patterns/aws/targets/targetResolution.js +119 -0
- package/dist/lib/patterns/index.d.ts +1 -0
- package/dist/lib/patterns/index.js +1 -0
- package/dist/lib/resources/aws/analytics/clickhouse.d.ts +15 -0
- package/dist/lib/resources/aws/analytics/clickhouse.js +292 -0
- package/dist/lib/resources/aws/analytics/clickhouseConstants.d.ts +73 -0
- package/dist/lib/resources/aws/analytics/clickhouseConstants.js +87 -0
- package/dist/lib/resources/aws/analytics/clickhouseSecurityGroup.d.ts +13 -0
- package/dist/lib/resources/aws/analytics/clickhouseSecurityGroup.js +28 -0
- package/dist/lib/resources/aws/analytics/clickhouseTypes.d.ts +47 -0
- package/dist/lib/resources/aws/analytics/clickhouseTypes.js +1 -0
- package/dist/lib/resources/aws/analytics/clickhouseUserData.d.ts +5 -0
- package/dist/lib/resources/aws/analytics/clickhouseUserData.js +248 -0
- package/dist/lib/resources/aws/analytics/index.d.ts +2 -0
- package/dist/lib/resources/aws/analytics/index.js +1 -0
- package/dist/lib/resources/aws/audit/auditRole.js +10 -15
- package/dist/lib/resources/aws/audit/index.d.ts +1 -1
- package/dist/lib/resources/aws/audit/index.js +1 -6
- package/dist/lib/resources/aws/backup/backupPlan.d.ts +1 -1
- package/dist/lib/resources/aws/backup/backupPlan.js +14 -16
- package/dist/lib/resources/aws/backup/backupVault.d.ts +1 -1
- package/dist/lib/resources/aws/backup/backupVault.js +13 -15
- package/dist/lib/resources/aws/backup/index.d.ts +2 -2
- package/dist/lib/resources/aws/backup/index.js +2 -19
- package/dist/lib/resources/aws/base/awsStack.js +17 -19
- package/dist/lib/resources/aws/base/index.d.ts +1 -1
- package/dist/lib/resources/aws/base/index.js +1 -18
- package/dist/lib/resources/aws/cdn/cloudFront.js +40 -42
- package/dist/lib/resources/aws/cdn/index.d.ts +1 -1
- package/dist/lib/resources/aws/cdn/index.js +1 -18
- package/dist/lib/resources/aws/compute/ec2.js +39 -39
- package/dist/lib/resources/aws/compute/ecs.d.ts +18 -396
- package/dist/lib/resources/aws/compute/ecs.js +105 -976
- package/dist/lib/resources/aws/compute/ecsCapacityProviderAspect.d.ts +22 -0
- package/dist/lib/resources/aws/compute/ecsCapacityProviderAspect.js +35 -0
- package/dist/lib/resources/aws/compute/ecsConstants.d.ts +20 -0
- package/dist/lib/resources/aws/compute/ecsConstants.js +49 -0
- package/dist/lib/resources/aws/compute/ecsContext.d.ts +12 -0
- package/dist/lib/resources/aws/compute/ecsContext.js +1 -0
- package/dist/lib/resources/aws/compute/ecsImages.d.ts +4 -0
- package/dist/lib/resources/aws/compute/ecsImages.js +35 -0
- package/dist/lib/resources/aws/compute/ecsNetworking.d.ts +28 -0
- package/dist/lib/resources/aws/compute/ecsNetworking.js +290 -0
- package/dist/lib/resources/aws/compute/ecsRoles.d.ts +15 -0
- package/dist/lib/resources/aws/compute/ecsRoles.js +110 -0
- package/dist/lib/resources/aws/compute/ecsServiceFactory.d.ts +33 -0
- package/dist/lib/resources/aws/compute/ecsServiceFactory.js +183 -0
- package/dist/lib/resources/aws/compute/ecsTaskDefinition.d.ts +30 -0
- package/dist/lib/resources/aws/compute/ecsTaskDefinition.js +168 -0
- package/dist/lib/resources/aws/compute/ecsTypes.d.ts +337 -0
- package/dist/lib/resources/aws/compute/ecsTypes.js +10 -0
- package/dist/lib/resources/aws/compute/ecsValidation.d.ts +18 -0
- package/dist/lib/resources/aws/compute/ecsValidation.js +72 -0
- package/dist/lib/resources/aws/compute/index.d.ts +3 -3
- package/dist/lib/resources/aws/compute/index.js +3 -20
- package/dist/lib/resources/aws/compute/lambda.d.ts +10 -2
- package/dist/lib/resources/aws/compute/lambda.js +82 -70
- package/dist/lib/resources/aws/database/dynamodb.js +27 -28
- package/dist/lib/resources/aws/database/index.d.ts +7 -7
- package/dist/lib/resources/aws/database/index.js +14 -33
- package/dist/lib/resources/aws/database/rdsAurora.d.ts +10 -2
- package/dist/lib/resources/aws/database/rdsAurora.js +76 -61
- package/dist/lib/resources/aws/database/rdsAuroraGlobal.d.ts +2 -2
- package/dist/lib/resources/aws/database/rdsAuroraGlobal.js +24 -21
- package/dist/lib/resources/aws/database/rdsDefaults.js +3 -7
- package/dist/lib/resources/aws/database/rdsHelpers.d.ts +2 -2
- package/dist/lib/resources/aws/database/rdsHelpers.js +21 -29
- package/dist/lib/resources/aws/database/rdsInstance.d.ts +11 -3
- package/dist/lib/resources/aws/database/rdsInstance.js +101 -83
- package/dist/lib/resources/aws/database/rdsProxyOutput.js +5 -9
- package/dist/lib/resources/aws/iam/delegationRole.d.ts +18 -0
- package/dist/lib/resources/aws/iam/delegationRole.js +60 -0
- package/dist/lib/resources/aws/iam/identityCenter/assignment.js +4 -9
- package/dist/lib/resources/aws/iam/identityCenter/group.js +5 -9
- package/dist/lib/resources/aws/iam/identityCenter/index.d.ts +3 -3
- package/dist/lib/resources/aws/iam/identityCenter/index.js +3 -20
- package/dist/lib/resources/aws/iam/identityCenter/permissionSet.d.ts +1 -1
- package/dist/lib/resources/aws/iam/identityCenter/permissionSet.js +5 -9
- package/dist/lib/resources/aws/iam/index.d.ts +5 -4
- package/dist/lib/resources/aws/iam/index.js +5 -21
- package/dist/lib/resources/aws/iam/instanceProfile.js +2 -7
- package/dist/lib/resources/aws/iam/managedPolicy.js +2 -7
- package/dist/lib/resources/aws/iam/policy.js +2 -7
- package/dist/lib/resources/aws/iam/role.js +2 -7
- package/dist/lib/resources/aws/index.d.ts +7 -7
- package/dist/lib/resources/aws/index.js +7 -24
- package/dist/lib/resources/aws/logging/cloudTrail.d.ts +1 -1
- package/dist/lib/resources/aws/logging/cloudTrail.js +18 -22
- package/dist/lib/resources/aws/logging/index.d.ts +2 -2
- package/dist/lib/resources/aws/logging/index.js +2 -19
- package/dist/lib/resources/aws/logging/logGroup.js +4 -10
- package/dist/lib/resources/aws/messaging/eventbridge.js +11 -14
- package/dist/lib/resources/aws/messaging/index.d.ts +4 -4
- package/dist/lib/resources/aws/messaging/index.js +4 -21
- package/dist/lib/resources/aws/messaging/sns.js +11 -14
- package/dist/lib/resources/aws/messaging/sqs.js +32 -34
- package/dist/lib/resources/aws/messaging/utils.d.ts +1 -1
- package/dist/lib/resources/aws/messaging/utils.js +1 -6
- package/dist/lib/resources/aws/monitoring/alarmDefaults.d.ts +36 -0
- package/dist/lib/resources/aws/monitoring/alarmDefaults.js +34 -0
- package/dist/lib/resources/aws/monitoring/ecsAlarms.d.ts +21 -0
- package/dist/lib/resources/aws/monitoring/ecsAlarms.js +88 -0
- package/dist/lib/resources/aws/monitoring/index.d.ts +4 -0
- package/dist/lib/resources/aws/monitoring/index.js +4 -5
- package/dist/lib/resources/aws/monitoring/lambdaAlarms.d.ts +18 -0
- package/dist/lib/resources/aws/monitoring/lambdaAlarms.js +44 -0
- package/dist/lib/resources/aws/monitoring/rdsAlarms.d.ts +20 -0
- package/dist/lib/resources/aws/monitoring/rdsAlarms.js +52 -0
- package/dist/lib/resources/aws/networking/crossAccountDelegationRecord.d.ts +17 -0
- package/dist/lib/resources/aws/networking/crossAccountDelegationRecord.js +26 -0
- package/dist/lib/resources/aws/networking/dnsRecord/aRecord.d.ts +12 -0
- package/dist/lib/resources/aws/networking/dnsRecord/aRecord.js +21 -0
- package/dist/lib/resources/aws/networking/dnsRecord/aaaaRecord.d.ts +12 -0
- package/dist/lib/resources/aws/networking/dnsRecord/aaaaRecord.js +22 -0
- package/dist/lib/resources/aws/networking/dnsRecord/aliasRecord.d.ts +12 -0
- package/dist/lib/resources/aws/networking/dnsRecord/aliasRecord.js +23 -0
- package/dist/lib/resources/aws/networking/dnsRecord/caaRecord.d.ts +17 -0
- package/dist/lib/resources/aws/networking/dnsRecord/caaRecord.js +21 -0
- package/dist/lib/resources/aws/networking/dnsRecord/cnameRecord.d.ts +12 -0
- package/dist/lib/resources/aws/networking/dnsRecord/cnameRecord.js +22 -0
- package/dist/lib/resources/aws/networking/dnsRecord/dnsRecordBase.d.ts +17 -0
- package/dist/lib/resources/aws/networking/dnsRecord/dnsRecordBase.js +17 -0
- package/dist/lib/resources/aws/networking/dnsRecord/index.d.ts +10 -0
- package/dist/lib/resources/aws/networking/dnsRecord/index.js +10 -0
- package/dist/lib/resources/aws/networking/dnsRecord/mxRecord.d.ts +16 -0
- package/dist/lib/resources/aws/networking/dnsRecord/mxRecord.js +21 -0
- package/dist/lib/resources/aws/networking/dnsRecord/nsRecord.d.ts +12 -0
- package/dist/lib/resources/aws/networking/dnsRecord/nsRecord.js +21 -0
- package/dist/lib/resources/aws/networking/dnsRecord/srvRecord.d.ts +18 -0
- package/dist/lib/resources/aws/networking/dnsRecord/srvRecord.js +21 -0
- package/dist/lib/resources/aws/networking/dnsRecord/txtRecord.d.ts +12 -0
- package/dist/lib/resources/aws/networking/dnsRecord/txtRecord.js +21 -0
- package/dist/lib/resources/aws/networking/domain.d.ts +1 -1
- package/dist/lib/resources/aws/networking/domain.js +32 -34
- package/dist/lib/resources/aws/networking/domainCertificate.d.ts +8 -3
- package/dist/lib/resources/aws/networking/domainCertificate.js +22 -16
- package/dist/lib/resources/aws/networking/hostedZone.d.ts +23 -19
- package/dist/lib/resources/aws/networking/hostedZone.js +70 -134
- package/dist/lib/resources/aws/networking/index.d.ts +8 -7
- package/dist/lib/resources/aws/networking/index.js +8 -24
- package/dist/lib/resources/aws/networking/ipam.js +2 -7
- package/dist/lib/resources/aws/networking/ipamPool.d.ts +1 -1
- package/dist/lib/resources/aws/networking/ipamPool.js +45 -55
- package/dist/lib/resources/aws/networking/securityGroup.js +2 -7
- package/dist/lib/resources/aws/networking/vpc.d.ts +1 -1
- package/dist/lib/resources/aws/networking/vpc.js +17 -21
- package/dist/lib/resources/aws/organisation/costAllocationTagActivator.d.ts +1 -1
- package/dist/lib/resources/aws/organisation/costAllocationTagActivator.js +11 -15
- package/dist/lib/resources/aws/organisation/index.d.ts +5 -5
- package/dist/lib/resources/aws/organisation/index.js +4 -12
- package/dist/lib/resources/aws/organisation/organisation.js +5 -7
- package/dist/lib/resources/aws/organisation/organisationAccount.js +7 -10
- package/dist/lib/resources/aws/organisation/organisationPolicy.js +5 -9
- package/dist/lib/resources/aws/organisation/organisationalUnit.js +1 -3
- package/dist/lib/resources/aws/secrets/alias.js +2 -7
- package/dist/lib/resources/aws/secrets/index.d.ts +4 -4
- package/dist/lib/resources/aws/secrets/index.js +4 -21
- package/dist/lib/resources/aws/secrets/kms.js +15 -18
- package/dist/lib/resources/aws/secrets/parameter.d.ts +3 -3
- package/dist/lib/resources/aws/secrets/parameter.js +19 -22
- package/dist/lib/resources/aws/secrets/secret.d.ts +2 -2
- package/dist/lib/resources/aws/secrets/secret.js +12 -14
- package/dist/lib/resources/aws/storage/ecr.d.ts +2 -2
- package/dist/lib/resources/aws/storage/ecr.js +7 -13
- package/dist/lib/resources/aws/storage/index.d.ts +2 -2
- package/dist/lib/resources/aws/storage/index.js +2 -19
- package/dist/lib/resources/aws/storage/s3.d.ts +1 -1
- package/dist/lib/resources/aws/storage/s3.js +24 -12
- package/dist/lib/resources/aws/utilities/awsCustomResource.js +3 -7
- package/dist/lib/resources/aws/utilities/codeBuild.js +7 -12
- package/dist/lib/resources/aws/utilities/customResource.js +14 -17
- package/dist/lib/resources/aws/utilities/customResourceProvider.js +2 -7
- package/dist/lib/resources/aws/utilities/index.d.ts +5 -5
- package/dist/lib/resources/aws/utilities/index.js +5 -22
- package/dist/lib/resources/aws/utilities/resourceShare.js +2 -7
- package/dist/lib/resources/index.d.ts +1 -1
- package/dist/lib/resources/index.js +1 -18
- package/dist/lib/types.js +1 -3
- package/dist/lib/utils/accountsUtils.d.ts +5 -0
- package/dist/lib/utils/accountsUtils.js +18 -0
- package/dist/lib/utils/addSuffixToEmail.js +1 -5
- package/dist/lib/utils/backupTierMapping.js +2 -6
- package/dist/lib/utils/capitaliseString.js +1 -10
- package/dist/lib/utils/connections.js +9 -13
- package/dist/lib/utils/connector.js +10 -23
- package/dist/lib/utils/constructMap.d.ts +33 -0
- package/dist/lib/utils/constructMap.js +154 -0
- package/dist/lib/utils/databaseTypes.js +4 -10
- package/dist/lib/utils/dnsRecords.d.ts +1 -1
- package/dist/lib/utils/dnsRecords.js +23 -27
- package/dist/lib/utils/domainTypes.d.ts +0 -1
- package/dist/lib/utils/domainTypes.js +2 -10
- package/dist/lib/utils/env.js +14 -26
- package/dist/lib/utils/getAccountId.js +3 -7
- package/dist/lib/utils/getAsync.js +7 -10
- package/dist/lib/utils/getConfig.d.ts +0 -2
- package/dist/lib/utils/getConfig.js +29 -47
- package/dist/lib/utils/getStackOutput.js +4 -8
- package/dist/lib/utils/index.d.ts +12 -12
- package/dist/lib/utils/index.js +12 -29
- package/dist/lib/utils/manifestWriter.d.ts +14 -3
- package/dist/lib/utils/manifestWriter.js +60 -43
- package/dist/lib/utils/orgConfigParser.d.ts +14 -0
- package/dist/lib/utils/orgConfigParser.js +49 -0
- package/dist/lib/utils/removalPolicy.js +5 -9
- package/dist/lib/utils/resourceNaming.js +11 -16
- package/dist/lib/utils/standardTagsAspect.js +9 -16
- package/dist/lib/utils/stripAndCamelCase.js +1 -5
- package/dist/lib/utils/validationLogger.js +12 -18
- package/dist/lib/utils/vpcUtils.js +5 -10
- package/package.json +25 -8
- package/dist/lib/config/aws/accountId.d.ts +0 -6
- package/dist/lib/config/aws/accountId.js +0 -32
- package/dist/lib/config/aws/backupGlobalSettings.d.ts +0 -29
- package/dist/lib/config/aws/backupGlobalSettings.js +0 -49
- package/dist/lib/config/aws/costAllocationTags.d.ts +0 -12
- package/dist/lib/config/aws/costAllocationTags.js +0 -47
- package/dist/lib/config/aws/ipamDelegateAdmin.d.ts +0 -8
- package/dist/lib/config/aws/ipamDelegateAdmin.js +0 -57
- package/dist/lib/config/aws/ipamPoolId.d.ts +0 -16
- package/dist/lib/config/aws/ipamPoolId.js +0 -42
- package/dist/lib/config/aws/organisation.d.ts +0 -30
- package/dist/lib/config/aws/organisation.js +0 -92
- package/dist/lib/config/aws/organisationId.d.ts +0 -7
- package/dist/lib/config/aws/organisationId.js +0 -45
- package/dist/lib/config/aws/organisationsAccess.d.ts +0 -10
- package/dist/lib/config/aws/organisationsAccess.js +0 -49
- package/dist/lib/config/aws/ramSharing.d.ts +0 -4
- package/dist/lib/config/aws/ramSharing.js +0 -34
- package/dist/lib/config/monitoring.d.ts +0 -18
- package/dist/lib/config/monitoring.js +0 -22
- package/dist/lib/patterns/aws/connections.d.ts +0 -46
- package/dist/lib/patterns/aws/connections.js +0 -159
- package/dist/lib/patterns/aws/hostedZone.d.ts +0 -28
- package/dist/lib/patterns/aws/hostedZone.js +0 -150
- package/dist/lib/patterns/aws/managedAccount.d.ts +0 -9
- package/dist/lib/patterns/aws/managedAccount.js +0 -55
- package/dist/lib/patterns/aws/managedOrganisation.d.ts +0 -36
- package/dist/lib/patterns/aws/managedOrganisation.js +0 -97
- package/dist/lib/patterns/aws/managedPlatform.d.ts +0 -12
- package/dist/lib/patterns/aws/managedPlatform.js +0 -29
- package/dist/lib/resources/aws/database/database.d.ts +0 -14
- package/dist/lib/resources/aws/database/database.js +0 -28
- package/dist/lib/resources/aws/database/databaseInstance.d.ts +0 -15
- package/dist/lib/resources/aws/database/databaseInstance.js +0 -30
- package/dist/lib/resources/aws/database/migrationLambda.d.ts +0 -80
- package/dist/lib/resources/aws/database/migrationLambda.js +0 -119
- package/dist/lib/resources/aws/iam/identityCenter/attachManagedPolicy.d.ts +0 -13
- package/dist/lib/resources/aws/iam/identityCenter/attachManagedPolicy.js +0 -51
- package/dist/lib/resources/aws/iam/securityGroup.d.ts +0 -5
- package/dist/lib/resources/aws/iam/securityGroup.js +0 -14
- package/dist/lib/resources/aws/monitoring/monitoringRole.d.ts +0 -29
- package/dist/lib/resources/aws/monitoring/monitoringRole.js +0 -120
- package/dist/lib/utils/capitalizeString.d.ts +0 -12
- package/dist/lib/utils/capitalizeString.js +0 -30
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { Annotations } from "aws-cdk-lib";
|
|
2
|
+
import { DNS_APEX } from "@fjall/util";
|
|
3
|
+
const VALID_REGISTRARS = [
|
|
4
|
+
"route53",
|
|
5
|
+
"external-delegated",
|
|
6
|
+
"external-records"
|
|
7
|
+
];
|
|
8
|
+
/**
|
|
9
|
+
* Synchronous synth-time validator for `DomainProps`. Throws on hard errors
|
|
10
|
+
* (CDK catches and surfaces the stack trace pointing at the `new Domain(...)`
|
|
11
|
+
* call site). Emits CDK warnings (non-fatal) for advisories such as alias
|
|
12
|
+
* records carrying a runtime TTL that Route53 silently ignores.
|
|
13
|
+
*
|
|
14
|
+
* Pure: no I/O, no CDK side effects other than `Annotations.of(scope).addWarning`.
|
|
15
|
+
*/
|
|
16
|
+
export function validateDomainProps(scope, props) {
|
|
17
|
+
validateRegistrar(props);
|
|
18
|
+
const effectiveZone = resolveEffectiveZoneName(props);
|
|
19
|
+
validateRecords(scope, props, effectiveZone);
|
|
20
|
+
validateCertificates(props, effectiveZone);
|
|
21
|
+
validateDelegations(props);
|
|
22
|
+
}
|
|
23
|
+
function validateRegistrar(props) {
|
|
24
|
+
const registrar = props.registrar;
|
|
25
|
+
if (typeof registrar !== "string" ||
|
|
26
|
+
!VALID_REGISTRARS.includes(registrar)) {
|
|
27
|
+
throw new Error(`Domain registrar must be one of ${VALID_REGISTRARS.join(", ")}; received: ${String(registrar)}`);
|
|
28
|
+
}
|
|
29
|
+
// Runtime defence — TS forbids `delegations` on external-records, but a JS
|
|
30
|
+
// caller could still pass it. Surface the mistake loudly.
|
|
31
|
+
if (registrar === "external-records" &&
|
|
32
|
+
props.delegations !== undefined) {
|
|
33
|
+
throw new Error("Domain: 'delegations' is not supported with registrar: 'external-records' — there is no Fjall-managed hosted zone to cascade from.");
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
function resolveEffectiveZoneName(props) {
|
|
37
|
+
if (props.registrar === "external-delegated") {
|
|
38
|
+
const delegated = props;
|
|
39
|
+
if (!delegated.delegatedSubdomain) {
|
|
40
|
+
throw new Error("Domain: 'external-delegated' registrar requires a non-empty 'delegatedSubdomain'.");
|
|
41
|
+
}
|
|
42
|
+
return `${delegated.delegatedSubdomain}.${props.zoneName}`;
|
|
43
|
+
}
|
|
44
|
+
return props.zoneName;
|
|
45
|
+
}
|
|
46
|
+
function validateRecords(scope, props, effectiveZone) {
|
|
47
|
+
const records = props.records ?? [];
|
|
48
|
+
const seen = new Map();
|
|
49
|
+
for (const record of records) {
|
|
50
|
+
const fqdn = recordFqdn(record.name, effectiveZone);
|
|
51
|
+
if (!isWithinZone(fqdn, effectiveZone)) {
|
|
52
|
+
throw new Error(`Record '${fqdn}' falls outside managed zone '${effectiveZone}'. Use a separate Domain construct or a SubdomainDelegation.`);
|
|
53
|
+
}
|
|
54
|
+
if ("target" in record) {
|
|
55
|
+
if (record.name === DNS_APEX && props.registrar === "external-records") {
|
|
56
|
+
throw new Error("Apex A records with Fjall targets require registrar: 'route53' or 'external-delegated' because RFC 1035 forbids CNAME at apex. Use a subdomain or change registrar.");
|
|
57
|
+
}
|
|
58
|
+
// TTL on alias records is silently dropped by Route53 — warn so the user
|
|
59
|
+
// understands their TTL will not apply.
|
|
60
|
+
const runtimeTtl = record.ttl;
|
|
61
|
+
if (runtimeTtl !== undefined) {
|
|
62
|
+
Annotations.of(scope).addWarning(`TTL ignored on alias record '${fqdn}' — Route53 aliases inherit the target's TTL.`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
const dedupeKey = `${record.type}::${record.name}`;
|
|
66
|
+
const existing = seen.get(dedupeKey);
|
|
67
|
+
if (existing) {
|
|
68
|
+
// Two declarations at the same (type, name) are only legal if the first
|
|
69
|
+
// one is a StandardRecord with an array-valued `value`. Otherwise one
|
|
70
|
+
// record will overwrite the other at synth.
|
|
71
|
+
const existingValue = existing.value;
|
|
72
|
+
if (!Array.isArray(existingValue)) {
|
|
73
|
+
throw new Error(`Duplicate (${record.type}, ${record.name}) records declared. ` +
|
|
74
|
+
`Merge into a single record with an array-valued 'value' to declare multiple values.`);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
seen.set(dedupeKey, record);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
function validateCertificates(props, effectiveZone) {
|
|
83
|
+
const certificates = props.certificates ?? [];
|
|
84
|
+
for (const cert of certificates) {
|
|
85
|
+
const resolved = normaliseCertificate(cert);
|
|
86
|
+
assertWithinZone(resolved.domainName, effectiveZone);
|
|
87
|
+
for (const san of resolved.subjectAlternativeNames ?? []) {
|
|
88
|
+
assertWithinZone(san, effectiveZone);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
function validateDelegations(props) {
|
|
93
|
+
if (props.registrar === "external-records") {
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
const delegations = props
|
|
97
|
+
.delegations;
|
|
98
|
+
if (!delegations) {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
for (const delegation of delegations) {
|
|
102
|
+
if (delegation.auto === true && !delegation.toAccount) {
|
|
103
|
+
throw new Error(`Delegation '${delegation.subdomain}' has auto: true but no 'toAccount' set. Provide the child Fjall account name.`);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
function normaliseCertificate(cert) {
|
|
108
|
+
if (typeof cert === "string") {
|
|
109
|
+
return { domainName: cert };
|
|
110
|
+
}
|
|
111
|
+
return {
|
|
112
|
+
domainName: cert.domainName,
|
|
113
|
+
subjectAlternativeNames: cert.subjectAlternativeNames
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
function recordFqdn(recordName, zoneName) {
|
|
117
|
+
if (recordName === DNS_APEX) {
|
|
118
|
+
return zoneName;
|
|
119
|
+
}
|
|
120
|
+
// A user may already provide a FQDN (e.g. "api.example.com") or a single
|
|
121
|
+
// label ("api"). If the name contains a dot, treat it as an FQDN — the
|
|
122
|
+
// zone-boundary check then decides whether it is within the managed zone.
|
|
123
|
+
// A bare label is always appended to the zone.
|
|
124
|
+
if (recordName.includes(".")) {
|
|
125
|
+
return recordName;
|
|
126
|
+
}
|
|
127
|
+
return `${recordName}.${zoneName}`;
|
|
128
|
+
}
|
|
129
|
+
function assertWithinZone(candidate, zoneName) {
|
|
130
|
+
if (!isWithinZone(candidate, zoneName)) {
|
|
131
|
+
throw new Error(`'${candidate}' falls outside managed zone '${zoneName}'. Use a separate Domain construct or a SubdomainDelegation.`);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Dot-boundary suffix matching. Rejects pathological cases where a user-supplied
|
|
136
|
+
* zone appears as a suffix of another zone (e.g. 'evilexample.com' against
|
|
137
|
+
* zone 'example.com' — `endsWith('example.com')` returns true without the
|
|
138
|
+
* leading dot).
|
|
139
|
+
*/
|
|
140
|
+
function isWithinZone(candidate, zoneName) {
|
|
141
|
+
if (candidate === zoneName) {
|
|
142
|
+
return true;
|
|
143
|
+
}
|
|
144
|
+
return candidate.endsWith(`.${zoneName}`);
|
|
145
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Construct } from "constructs";
|
|
2
|
+
import { type ICertificate } from "aws-cdk-lib/aws-certificatemanager";
|
|
3
|
+
import type { ExternalRecordsProps, ManualRecord } from "./interfaces/domain.js";
|
|
4
|
+
export interface ExternalRecordsPatternResult {
|
|
5
|
+
readonly certificates: Map<string, ICertificate>;
|
|
6
|
+
readonly manualRecords: ManualRecord[];
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Composition for `registrar: "external-records"`. No Route53 hosted zone is
|
|
10
|
+
* created; certificates still use ACM DNS validation (the user must paste the
|
|
11
|
+
* validation records at their external registrar) and any user-declared
|
|
12
|
+
* records are emitted as `ManualRecord` entries with per-record `CfnOutput`s
|
|
13
|
+
* so Phase 2 can resolve token values after deploy.
|
|
14
|
+
*
|
|
15
|
+
* Ordering invariant: certificate-validation entries come first so the user
|
|
16
|
+
* adds them before the app records (ACM can't issue until validation resolves).
|
|
17
|
+
*/
|
|
18
|
+
export declare function composeExternalRecords(scope: Construct, props: ExternalRecordsProps): ExternalRecordsPatternResult;
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { CfnOutput } from "aws-cdk-lib";
|
|
2
|
+
import { Certificate as AcmCertificate, CertificateValidation } from "aws-cdk-lib/aws-certificatemanager";
|
|
3
|
+
import { resolveTargetToDnsName } from "./targets/targetResolution.js";
|
|
4
|
+
import { toPascalCase, getSafeZoneName } from "../../utils/capitaliseString.js";
|
|
5
|
+
import { DNS_APEX } from "@fjall/util";
|
|
6
|
+
const MANUAL_RECORD_TTL_SECONDS = 300;
|
|
7
|
+
/**
|
|
8
|
+
* Composition for `registrar: "external-records"`. No Route53 hosted zone is
|
|
9
|
+
* created; certificates still use ACM DNS validation (the user must paste the
|
|
10
|
+
* validation records at their external registrar) and any user-declared
|
|
11
|
+
* records are emitted as `ManualRecord` entries with per-record `CfnOutput`s
|
|
12
|
+
* so Phase 2 can resolve token values after deploy.
|
|
13
|
+
*
|
|
14
|
+
* Ordering invariant: certificate-validation entries come first so the user
|
|
15
|
+
* adds them before the app records (ACM can't issue until validation resolves).
|
|
16
|
+
*/
|
|
17
|
+
export function composeExternalRecords(scope, props) {
|
|
18
|
+
const safeZone = toPascalCase(getSafeZoneName(props.zoneName));
|
|
19
|
+
const certificates = new Map();
|
|
20
|
+
const manualRecords = [];
|
|
21
|
+
// 1. Certificates — ACM DNS validation emits CNAMEs the user must paste at
|
|
22
|
+
// their registrar. Capture the validation records as ManualRecord
|
|
23
|
+
// entries (cert-validation first per ordering invariant).
|
|
24
|
+
const normalisedCerts = (props.certificates ?? []).map(normaliseCertificate);
|
|
25
|
+
normalisedCerts.forEach((cert, index) => {
|
|
26
|
+
const safeCertName = toPascalCase(cert.domainName.split(".").join(""));
|
|
27
|
+
const acm = new AcmCertificate(scope, `${safeZone}${safeCertName}Cert${index}`, {
|
|
28
|
+
domainName: cert.domainName,
|
|
29
|
+
subjectAlternativeNames: cert.subjectAlternativeNames,
|
|
30
|
+
// No hosted zone to validate against — ACM emits tokens for the user
|
|
31
|
+
// to resolve via `describeStackResources` or deploy output.
|
|
32
|
+
validation: CertificateValidation.fromDns(),
|
|
33
|
+
transparencyLoggingEnabled: cert.transparencyLogging ?? true
|
|
34
|
+
});
|
|
35
|
+
certificates.set(cert.domainName, acm);
|
|
36
|
+
const certNames = [
|
|
37
|
+
cert.domainName,
|
|
38
|
+
...(cert.subjectAlternativeNames ?? [])
|
|
39
|
+
];
|
|
40
|
+
certNames.forEach((name, nameIndex) => {
|
|
41
|
+
// `domainValidationOption` returns a token CNAME name/value pair. Using
|
|
42
|
+
// `attrDomainValidationOptions` returns an array token; per-name lookup
|
|
43
|
+
// uses index. CDK exposes the first validation option via
|
|
44
|
+
// `certificate.certificateArn` only — we fall back to emitting a
|
|
45
|
+
// predictable CfnOutput pointing to the attribute for Phase 2.
|
|
46
|
+
const record = {
|
|
47
|
+
name: `_acme-challenge.${name}`,
|
|
48
|
+
type: "CNAME",
|
|
49
|
+
value: `<ACM-validation-token-for-${name}>`,
|
|
50
|
+
ttl: MANUAL_RECORD_TTL_SECONDS,
|
|
51
|
+
reason: "certificate-validation"
|
|
52
|
+
};
|
|
53
|
+
manualRecords.push(record);
|
|
54
|
+
emitManualRecordOutputs(scope, safeZone, manualRecords.length - 1, record, `CertValidation${safeCertName}${nameIndex}`);
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
// 2. User-declared records. Typed targets resolve to token strings via
|
|
58
|
+
// `resolveTargetToDnsName`. Apex ALIAS was already rejected by
|
|
59
|
+
// `validateDomainProps`, so all records here are safe to emit as manual
|
|
60
|
+
// entries.
|
|
61
|
+
const records = props.records ?? [];
|
|
62
|
+
records.forEach((record, index) => {
|
|
63
|
+
const fqdn = toFqdn(record.name, props.zoneName);
|
|
64
|
+
if ("target" in record) {
|
|
65
|
+
const value = resolveTargetToDnsName(record.target);
|
|
66
|
+
const manual = {
|
|
67
|
+
name: fqdn,
|
|
68
|
+
type: "CNAME",
|
|
69
|
+
value,
|
|
70
|
+
ttl: MANUAL_RECORD_TTL_SECONDS,
|
|
71
|
+
reason: "user-declared"
|
|
72
|
+
};
|
|
73
|
+
manualRecords.push(manual);
|
|
74
|
+
emitManualRecordOutputs(scope, safeZone, manualRecords.length - 1, manual, `UserRecord${index}`);
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
const rawValue = record.value;
|
|
78
|
+
const joined = Array.isArray(rawValue) ? rawValue.join(", ") : rawValue;
|
|
79
|
+
const manual = {
|
|
80
|
+
name: fqdn,
|
|
81
|
+
type: narrowManualType(record.type),
|
|
82
|
+
value: joined,
|
|
83
|
+
ttl: record.ttl ?? MANUAL_RECORD_TTL_SECONDS,
|
|
84
|
+
reason: "user-declared"
|
|
85
|
+
};
|
|
86
|
+
manualRecords.push(manual);
|
|
87
|
+
emitManualRecordOutputs(scope, safeZone, manualRecords.length - 1, manual, `UserRecord${index}`);
|
|
88
|
+
});
|
|
89
|
+
return { certificates, manualRecords };
|
|
90
|
+
}
|
|
91
|
+
function normaliseCertificate(cert) {
|
|
92
|
+
if (typeof cert === "string") {
|
|
93
|
+
return { domainName: cert };
|
|
94
|
+
}
|
|
95
|
+
return {
|
|
96
|
+
domainName: cert.domainName,
|
|
97
|
+
subjectAlternativeNames: cert.subjectAlternativeNames,
|
|
98
|
+
transparencyLogging: cert.transparencyLogging
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
function toFqdn(recordName, zoneName) {
|
|
102
|
+
if (recordName === DNS_APEX) {
|
|
103
|
+
return zoneName;
|
|
104
|
+
}
|
|
105
|
+
if (recordName === zoneName || recordName.endsWith(`.${zoneName}`)) {
|
|
106
|
+
return recordName;
|
|
107
|
+
}
|
|
108
|
+
return `${recordName}.${zoneName}`;
|
|
109
|
+
}
|
|
110
|
+
function narrowManualType(type) {
|
|
111
|
+
switch (type) {
|
|
112
|
+
case "A":
|
|
113
|
+
case "AAAA":
|
|
114
|
+
case "CNAME":
|
|
115
|
+
case "TXT":
|
|
116
|
+
return type;
|
|
117
|
+
case "MX":
|
|
118
|
+
case "NS":
|
|
119
|
+
case "SRV":
|
|
120
|
+
case "CAA":
|
|
121
|
+
// External-records mode can only describe A/AAAA/CNAME/TXT to the user
|
|
122
|
+
// in a paste-ready form; other types still surface their value under a
|
|
123
|
+
// TXT-style hint so the user knows the raw content.
|
|
124
|
+
return "TXT";
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
function emitManualRecordOutputs(scope, safeZone, index, record, discriminator) {
|
|
128
|
+
new CfnOutput(scope, `${safeZone}ManualRecord${discriminator}Name`, {
|
|
129
|
+
key: `${safeZone}ManualRecord${index}Name`,
|
|
130
|
+
value: record.name,
|
|
131
|
+
description: `External-records manual DNS entry (${record.reason})`
|
|
132
|
+
});
|
|
133
|
+
new CfnOutput(scope, `${safeZone}ManualRecord${discriminator}Type`, {
|
|
134
|
+
key: `${safeZone}ManualRecord${index}Type`,
|
|
135
|
+
value: record.type
|
|
136
|
+
});
|
|
137
|
+
new CfnOutput(scope, `${safeZone}ManualRecord${discriminator}Value`, {
|
|
138
|
+
key: `${safeZone}ManualRecord${index}Value`,
|
|
139
|
+
value: record.value
|
|
140
|
+
});
|
|
141
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Stack, type StackProps } from "aws-cdk-lib";
|
|
2
2
|
import { type Construct } from "constructs";
|
|
3
|
-
import { type KeyValue } from "../../types";
|
|
3
|
+
import { type KeyValue } from "../../types.js";
|
|
4
4
|
import { type Connections } from "aws-cdk-lib/aws-ec2";
|
|
5
5
|
import { type IVpc } from "aws-cdk-lib/aws-ec2";
|
|
6
6
|
interface ProxyAgentProps extends StackProps {
|
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const ec2_1 = require("../../resources/aws/compute/ec2");
|
|
6
|
-
const aws_ec2_1 = require("aws-cdk-lib/aws-ec2");
|
|
7
|
-
class FivetranProxy extends aws_cdk_lib_1.Stack {
|
|
1
|
+
import { Stack } from "aws-cdk-lib";
|
|
2
|
+
import { Ec2Instance } from "../../resources/aws/compute/ec2.js";
|
|
3
|
+
import { UserData } from "aws-cdk-lib/aws-ec2";
|
|
4
|
+
export class FivetranProxy extends Stack {
|
|
8
5
|
constructor(scope, id, props) {
|
|
9
6
|
super(scope, id, props);
|
|
10
|
-
const userData =
|
|
7
|
+
const userData = UserData.forLinux();
|
|
11
8
|
userData.addCommands("groupadd fivetran", "useradd -m -g fivetran fivetran", "mkdir -p /home/fivetran/.ssh", "chown fivetran:fivetran /home/fivetran/.ssh", "chmod 700 /home/fivetran/.ssh", `echo "${props.publicKey}" > /home/fivetran/.ssh/authorized_keys`, "chown fivetran:fivetran /home/fivetran/.ssh/authorized_keys", "chmod 600 /home/fivetran/.ssh/authorized_keys");
|
|
12
|
-
new
|
|
9
|
+
new Ec2Instance(this, "FivetranProxy", {
|
|
13
10
|
accountId: props.accountId,
|
|
14
11
|
serviceName: "fivetranProxy",
|
|
15
12
|
vpc: props.vpc,
|
|
@@ -29,5 +26,3 @@ class FivetranProxy extends aws_cdk_lib_1.Stack {
|
|
|
29
26
|
});
|
|
30
27
|
}
|
|
31
28
|
}
|
|
32
|
-
exports.FivetranProxy = FivetranProxy;
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml2ZXRyYW5Qcm94eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9wYXR0ZXJucy9hd3MvZml2ZXRyYW5Qcm94eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBcUQ7QUFDckQseURBQThEO0FBRzlELGlEQUFpRTtBQWFqRSxNQUFhLGFBQWMsU0FBUSxtQkFBSztJQUN0QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXNCO1FBQzlELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXhCLE1BQU0sUUFBUSxHQUFHLGtCQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFckMsUUFBUSxDQUFDLFdBQVcsQ0FDbEIsbUJBQW1CLEVBQ25CLGlDQUFpQyxFQUNqQyw4QkFBOEIsRUFDOUIsNkNBQTZDLEVBQzdDLCtCQUErQixFQUMvQixTQUFTLEtBQUssQ0FBQyxTQUFTLHlDQUF5QyxFQUNqRSw2REFBNkQsRUFDN0QsK0NBQStDLENBQ2hELENBQUM7UUFFRixJQUFJLGlCQUFXLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRTtZQUNyQyxTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVM7WUFDMUIsV0FBVyxFQUFFLGVBQWU7WUFDNUIsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHO1lBQ2QsWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZLElBQUksVUFBVTtZQUM5QyxTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVMsSUFBSSxJQUFJO1lBQ2xDLEdBQUcsRUFBRTtnQkFDSCxPQUFPLEVBQUUsS0FBSyxDQUFDLEdBQUcsRUFBRSxPQUFPO2dCQUMzQixNQUFNLEVBQUUsS0FBSyxDQUFDLEdBQUcsRUFBRSxNQUFNO2FBQzFCO1lBQ0QsUUFBUSxFQUFFLFFBQVE7WUFDbEIsSUFBSSxFQUFFO2dCQUNKLEdBQUcsS0FBSyxDQUFDLElBQUk7Z0JBQ2Isa0NBQWtDLEVBQUUsWUFBWTtnQkFDaEQsOEJBQThCLEVBQUUsVUFBVTtnQkFDMUMsNEJBQTRCLEVBQUUsTUFBTTthQUNyQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQXBDRCxzQ0FvQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdGFjaywgdHlwZSBTdGFja1Byb3BzIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBFYzJJbnN0YW5jZSB9IGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL2NvbXB1dGUvZWMyXCI7XG5pbXBvcnQgeyB0eXBlIENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyB0eXBlIEtleVZhbHVlIH0gZnJvbSBcIi4uLy4uL3R5cGVzXCI7XG5pbXBvcnQgeyB0eXBlIENvbm5lY3Rpb25zLCBVc2VyRGF0YSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWMyXCI7XG5pbXBvcnQgeyB0eXBlIElWcGMgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuXG5pbnRlcmZhY2UgUHJveHlBZ2VudFByb3BzIGV4dGVuZHMgU3RhY2tQcm9wcyB7XG4gIGFjY291bnRJZD86IHN0cmluZztcbiAgdnBjPzogSVZwYztcbiAgcHVibGljS2V5OiBzdHJpbmc7XG4gIGVuYWJsZVNTSD86IGJvb2xlYW47XG4gIGluc3RhbmNlVHlwZTogc3RyaW5nO1xuICBkYXRhYmFzZUNvbm5lY3Rpb24/OiBDb25uZWN0aW9ucztcbiAgdGFncz86IEtleVZhbHVlO1xufVxuXG5leHBvcnQgY2xhc3MgRml2ZXRyYW5Qcm94eSBleHRlbmRzIFN0YWNrIHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFByb3h5QWdlbnRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuXG4gICAgY29uc3QgdXNlckRhdGEgPSBVc2VyRGF0YS5mb3JMaW51eCgpO1xuXG4gICAgdXNlckRhdGEuYWRkQ29tbWFuZHMoXG4gICAgICBcImdyb3VwYWRkIGZpdmV0cmFuXCIsXG4gICAgICBcInVzZXJhZGQgLW0gLWcgZml2ZXRyYW4gZml2ZXRyYW5cIixcbiAgICAgIFwibWtkaXIgLXAgL2hvbWUvZml2ZXRyYW4vLnNzaFwiLFxuICAgICAgXCJjaG93biBmaXZldHJhbjpmaXZldHJhbiAvaG9tZS9maXZldHJhbi8uc3NoXCIsXG4gICAgICBcImNobW9kIDcwMCAvaG9tZS9maXZldHJhbi8uc3NoXCIsXG4gICAgICBgZWNobyBcIiR7cHJvcHMucHVibGljS2V5fVwiID4gL2hvbWUvZml2ZXRyYW4vLnNzaC9hdXRob3JpemVkX2tleXNgLFxuICAgICAgXCJjaG93biBmaXZldHJhbjpmaXZldHJhbiAvaG9tZS9maXZldHJhbi8uc3NoL2F1dGhvcml6ZWRfa2V5c1wiLFxuICAgICAgXCJjaG1vZCA2MDAgL2hvbWUvZml2ZXRyYW4vLnNzaC9hdXRob3JpemVkX2tleXNcIlxuICAgICk7XG5cbiAgICBuZXcgRWMySW5zdGFuY2UodGhpcywgXCJGaXZldHJhblByb3h5XCIsIHtcbiAgICAgIGFjY291bnRJZDogcHJvcHMuYWNjb3VudElkLFxuICAgICAgc2VydmljZU5hbWU6IFwiZml2ZXRyYW5Qcm94eVwiLFxuICAgICAgdnBjOiBwcm9wcy52cGMsXG4gICAgICBpbnN0YW5jZVR5cGU6IHByb3BzLmluc3RhbmNlVHlwZSB8fCBcInQyLm1pY3JvXCIsXG4gICAgICBlbmFibGVTU0g6IHByb3BzLmVuYWJsZVNTSCB8fCB0cnVlLFxuICAgICAgZW52OiB7XG4gICAgICAgIGFjY291bnQ6IHByb3BzLmVudj8uYWNjb3VudCxcbiAgICAgICAgcmVnaW9uOiBwcm9wcy5lbnY/LnJlZ2lvblxuICAgICAgfSxcbiAgICAgIHVzZXJEYXRhOiB1c2VyRGF0YSxcbiAgICAgIHRhZ3M6IHtcbiAgICAgICAgLi4ucHJvcHMudGFncyxcbiAgICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjplbnZpcm9ubWVudFwiOiBcInByb2R1Y3Rpb25cIixcbiAgICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjpzZXJ2aWNlXCI6IFwiZml2ZXRyYW5cIixcbiAgICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjpvd25lclwiOiBcImRhdGFcIlxuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,19 +1,21 @@
|
|
|
1
|
-
export * from "./organisation";
|
|
2
|
-
export * from "./platform";
|
|
3
|
-
export * from "./account";
|
|
4
|
-
export * from "./organisationFactory";
|
|
5
|
-
export * from "./buildkite";
|
|
6
|
-
export * from "
|
|
7
|
-
export * from "./
|
|
8
|
-
export * from "
|
|
9
|
-
export * from "../../resources/aws/networking/hostedZone";
|
|
10
|
-
export * from "./domainFactory";
|
|
11
|
-
export * from "./domainDelegation";
|
|
12
|
-
export
|
|
13
|
-
export * from "./
|
|
14
|
-
export
|
|
15
|
-
export * from "./
|
|
16
|
-
export * from "./
|
|
17
|
-
export * from "./
|
|
18
|
-
export * from "./
|
|
19
|
-
export * from "./
|
|
1
|
+
export * from "./organisation.js";
|
|
2
|
+
export * from "./platform.js";
|
|
3
|
+
export * from "./account.js";
|
|
4
|
+
export * from "./organisationFactory.js";
|
|
5
|
+
export * from "./buildkite.js";
|
|
6
|
+
export * from "./fivetranProxy.js";
|
|
7
|
+
export * from "./database.js";
|
|
8
|
+
export * from "../../resources/aws/compute/ec2.js";
|
|
9
|
+
export * from "../../resources/aws/networking/hostedZone.js";
|
|
10
|
+
export * from "./domainFactory.js";
|
|
11
|
+
export * from "./domainDelegation.js";
|
|
12
|
+
export { Domain } from "./domain.js";
|
|
13
|
+
export * from "./targets/index.js";
|
|
14
|
+
export { getDomainExportNames, type DnsRecordInput, type DelegationInput, type CertificateInput, type DomainApexProps, type DomainDelegatedProps, type IDomainProps, type ManagedDomainExports, type FjallTarget, type StandardRecord, type DnsRecord, type Certificate, type SubdomainDelegation, type DomainCommonProps, type Route53ApexProps, type ExternalDelegatedProps, type ExternalRecordsProps, type DomainProps, type ManualRecord } from "./interfaces/domain.js";
|
|
15
|
+
export * from "./compute.js";
|
|
16
|
+
export * from "./storage.js";
|
|
17
|
+
export * from "./auditRole.js";
|
|
18
|
+
export * from "./network.js";
|
|
19
|
+
export * from "./cdn.js";
|
|
20
|
+
export * from "./messaging.js";
|
|
21
|
+
export * from "./pattern.js";
|
|
@@ -1,39 +1,28 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
1
|
// Organisation patterns
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
2
|
+
export * from "./organisation.js";
|
|
3
|
+
export * from "./platform.js";
|
|
4
|
+
export * from "./account.js";
|
|
5
|
+
export * from "./organisationFactory.js";
|
|
6
|
+
export * from "./buildkite.js";
|
|
7
|
+
export * from "./fivetranProxy.js";
|
|
8
|
+
export * from "./database.js";
|
|
9
|
+
// Resource-layer re-exports — consumed by patterns that compose these primitives
|
|
10
|
+
export * from "../../resources/aws/compute/ec2.js";
|
|
11
|
+
export * from "../../resources/aws/networking/hostedZone.js";
|
|
27
12
|
// Domain patterns
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
13
|
+
export * from "./domainFactory.js";
|
|
14
|
+
export * from "./domainDelegation.js";
|
|
15
|
+
export { Domain } from "./domain.js";
|
|
16
|
+
export * from "./targets/index.js";
|
|
17
|
+
// Explicit exports from the interfaces barrel — avoids collision between the
|
|
18
|
+
// `AliasRecord` DNS-record construct re-exported via `resources/aws/networking`
|
|
19
|
+
// and the `AliasRecord` TypeScript type declared in `interfaces/domain.ts`.
|
|
20
|
+
export { getDomainExportNames } from "./interfaces/domain.js";
|
|
31
21
|
// Patterns
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvcGF0dGVybnMvYXdzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx3QkFBd0I7QUFDeEIsaURBQStCO0FBQy9CLDZDQUEyQjtBQUMzQiw0Q0FBMEI7QUFDMUIsd0RBQXNDO0FBRXRDLDhDQUE0QjtBQUM1QixrRUFBZ0Q7QUFDaEQsa0RBQWdDO0FBQ2hDLDZDQUEyQjtBQUMzQiw0RUFBMEQ7QUFFMUQsa0JBQWtCO0FBQ2xCLGtEQUFnQztBQUNoQyxxREFBbUM7QUFDbkMsc0RBQW9DO0FBRXBDLFdBQVc7QUFDWCw0Q0FBMEI7QUFDMUIsNENBQTBCO0FBQzFCLDhDQUE0QjtBQUM1Qiw0Q0FBMEI7QUFDMUIsd0NBQXNCO0FBQ3RCLDhDQUE0QjtBQUM1Qiw0Q0FBMEIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBPcmdhbmlzYXRpb24gcGF0dGVybnNcbmV4cG9ydCAqIGZyb20gXCIuL29yZ2FuaXNhdGlvblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vcGxhdGZvcm1cIjtcbmV4cG9ydCAqIGZyb20gXCIuL2FjY291bnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL29yZ2FuaXNhdGlvbkZhY3RvcnlcIjtcblxuZXhwb3J0ICogZnJvbSBcIi4vYnVpbGRraXRlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi4vLi4vcmVzb3VyY2VzL2F3cy9jb21wdXRlL2VjMlwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZml2ZXRyYW5Qcm94eVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZGF0YWJhc2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL25ldHdvcmtpbmcvaG9zdGVkWm9uZVwiO1xuXG4vLyBEb21haW4gcGF0dGVybnNcbmV4cG9ydCAqIGZyb20gXCIuL2RvbWFpbkZhY3RvcnlcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2RvbWFpbkRlbGVnYXRpb25cIjtcbmV4cG9ydCAqIGZyb20gXCIuL2ludGVyZmFjZXMvZG9tYWluXCI7XG5cbi8vIFBhdHRlcm5zXG5leHBvcnQgKiBmcm9tIFwiLi9jb21wdXRlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zdG9yYWdlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9hdWRpdFJvbGVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL25ldHdvcmtcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NkblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbWVzc2FnaW5nXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9wYXR0ZXJuXCI7XG4iXX0=
|
|
22
|
+
export * from "./compute.js";
|
|
23
|
+
export * from "./storage.js";
|
|
24
|
+
export * from "./auditRole.js";
|
|
25
|
+
export * from "./network.js";
|
|
26
|
+
export * from "./cdn.js";
|
|
27
|
+
export * from "./messaging.js";
|
|
28
|
+
export * from "./pattern.js";
|
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isCdn = isCdn;
|
|
4
1
|
/**
|
|
5
2
|
* Type guard to check if a resource is a CDN distribution.
|
|
6
3
|
*/
|
|
7
|
-
function isCdn(resource) {
|
|
4
|
+
export function isCdn(resource) {
|
|
8
5
|
return (typeof resource === "object" &&
|
|
9
6
|
resource !== null &&
|
|
10
7
|
"getDistributionDomainName" in resource &&
|
|
11
8
|
"getDistributionId" in resource &&
|
|
12
9
|
"getDistribution" in resource);
|
|
13
10
|
}
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL3BhdHRlcm5zL2F3cy9pbnRlcmZhY2VzL2Nkbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQThCQSxzQkFRQztBQVhEOztHQUVHO0FBQ0gsU0FBZ0IsS0FBSyxDQUFDLFFBQWlCO0lBQ3JDLE9BQU8sQ0FDTCxPQUFPLFFBQVEsS0FBSyxRQUFRO1FBQzVCLFFBQVEsS0FBSyxJQUFJO1FBQ2pCLDJCQUEyQixJQUFJLFFBQVE7UUFDdkMsbUJBQW1CLElBQUksUUFBUTtRQUMvQixpQkFBaUIsSUFBSSxRQUFRLENBQzlCLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHR5cGUgeyBEaXN0cmlidXRpb24gfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNsb3VkZnJvbnRcIjtcblxuLyoqXG4gKiBDRE4gdHlwZSBkaXNjcmltaW5hdG9yLlxuICogQ3VycmVudGx5IG9ubHkgQ2xvdWRGcm9udCBpcyBzdXBwb3J0ZWQuXG4gKi9cbmV4cG9ydCB0eXBlIENkblR5cGUgPSBcImNsb3VkZnJvbnRcIjtcblxuLyoqXG4gKiBSdW50aW1lIGludGVyZmFjZSBmb3IgQ0ROIGRpc3RyaWJ1dGlvbnMuXG4gKiBQcm92aWRlcyBhY2Nlc3MgdG8gdGhlIHVuZGVybHlpbmcgQ2xvdWRGcm9udCBkaXN0cmlidXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNkbiB7XG4gIHJlYWRvbmx5IG5vZGU6IENvbnN0cnVjdFtcIm5vZGVcIl07XG5cbiAgZ2V0RGlzdHJpYnV0aW9uRG9tYWluTmFtZSgpOiBzdHJpbmc7XG4gIGdldERpc3RyaWJ1dGlvbklkKCk6IHN0cmluZztcbiAgZ2V0RGlzdHJpYnV0aW9uKCk6IERpc3RyaWJ1dGlvbjtcbn1cblxuLyoqXG4gKiBVbmlvbiB0eXBlIHJlcHJlc2VudGluZyBhbnkgQ0ROIGludGVyZmFjZS5cbiAqIEN1cnJlbnRseSBvbmx5IENsb3VkRnJvbnQsIGJ1dCBleHRlbnNpYmxlIGZvciBmdXR1cmUgQ0ROIHR5cGVzLlxuICovXG5leHBvcnQgdHlwZSBBbnlDZG4gPSBJQ2RuO1xuXG4vKipcbiAqIFR5cGUgZ3VhcmQgdG8gY2hlY2sgaWYgYSByZXNvdXJjZSBpcyBhIENETiBkaXN0cmlidXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0NkbihyZXNvdXJjZTogdW5rbm93bik6IHJlc291cmNlIGlzIElDZG4ge1xuICByZXR1cm4gKFxuICAgIHR5cGVvZiByZXNvdXJjZSA9PT0gXCJvYmplY3RcIiAmJlxuICAgIHJlc291cmNlICE9PSBudWxsICYmXG4gICAgXCJnZXREaXN0cmlidXRpb25Eb21haW5OYW1lXCIgaW4gcmVzb3VyY2UgJiZcbiAgICBcImdldERpc3RyaWJ1dGlvbklkXCIgaW4gcmVzb3VyY2UgJiZcbiAgICBcImdldERpc3RyaWJ1dGlvblwiIGluIHJlc291cmNlXG4gICk7XG59XG4iXX0=
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* Type-safe compute interfaces.
|
|
4
3
|
*
|
|
@@ -13,36 +12,30 @@
|
|
|
13
12
|
* lambda.getFunctionUrl(); // ✓ Available on ILambdaCompute
|
|
14
13
|
* lambda.getLoadBalancer(); // ✗ Compile error - not on ILambdaCompute
|
|
15
14
|
*/
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.isEcsCompute = isEcsCompute;
|
|
18
|
-
exports.isLambdaCompute = isLambdaCompute;
|
|
19
|
-
exports.isEc2Compute = isEc2Compute;
|
|
20
|
-
exports.isCompute = isCompute;
|
|
21
15
|
/**
|
|
22
16
|
* Type guard to check if a compute is ECS.
|
|
23
17
|
*/
|
|
24
|
-
function isEcsCompute(compute) {
|
|
18
|
+
export function isEcsCompute(compute) {
|
|
25
19
|
return compute.computeType === "ecs";
|
|
26
20
|
}
|
|
27
21
|
/**
|
|
28
22
|
* Type guard to check if a compute is Lambda.
|
|
29
23
|
*/
|
|
30
|
-
function isLambdaCompute(compute) {
|
|
24
|
+
export function isLambdaCompute(compute) {
|
|
31
25
|
return compute.computeType === "lambda";
|
|
32
26
|
}
|
|
33
27
|
/**
|
|
34
28
|
* Type guard to check if a compute is EC2.
|
|
35
29
|
*/
|
|
36
|
-
function isEc2Compute(compute) {
|
|
30
|
+
export function isEc2Compute(compute) {
|
|
37
31
|
return compute.computeType === "ec2";
|
|
38
32
|
}
|
|
39
33
|
/**
|
|
40
34
|
* Type guard to check if a resource is any compute type.
|
|
41
35
|
*/
|
|
42
|
-
function isCompute(resource) {
|
|
36
|
+
export function isCompute(resource) {
|
|
43
37
|
return (resource !== null &&
|
|
44
38
|
typeof resource === "object" &&
|
|
45
39
|
"computeType" in resource &&
|
|
46
40
|
typeof resource.computeType === "string");
|
|
47
41
|
}
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcHV0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9wYXR0ZXJucy9hd3MvaW50ZXJmYWNlcy9jb21wdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7Ozs7OztHQWFHOztBQW9ISCxvQ0FFQztBQUtELDBDQUVDO0FBS0Qsb0NBRUM7QUFLRCw4QkFPQztBQS9CRDs7R0FFRztBQUNILFNBQWdCLFlBQVksQ0FBQyxPQUFpQjtJQUM1QyxPQUFPLE9BQU8sQ0FBQyxXQUFXLEtBQUssS0FBSyxDQUFDO0FBQ3ZDLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLGVBQWUsQ0FBQyxPQUFpQjtJQUMvQyxPQUFPLE9BQU8sQ0FBQyxXQUFXLEtBQUssUUFBUSxDQUFDO0FBQzFDLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLFlBQVksQ0FBQyxPQUFpQjtJQUM1QyxPQUFPLE9BQU8sQ0FBQyxXQUFXLEtBQUssS0FBSyxDQUFDO0FBQ3ZDLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLFNBQVMsQ0FBQyxRQUFpQjtJQUN6QyxPQUFPLENBQ0wsUUFBUSxLQUFLLElBQUk7UUFDakIsT0FBTyxRQUFRLEtBQUssUUFBUTtRQUM1QixhQUFhLElBQUksUUFBUTtRQUN6QixPQUFRLFFBQXFCLENBQUMsV0FBVyxLQUFLLFFBQVEsQ0FDdkQsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFR5cGUtc2FmZSBjb21wdXRlIGludGVyZmFjZXMuXG4gKlxuICogVGhlc2UgaW50ZXJmYWNlcyBwcm92aWRlIGNvbXBpbGUtdGltZSB0eXBlIHNhZmV0eSBmb3IgY29tcHV0ZSByZXNvdXJjZXMuXG4gKiBFYWNoIGNvbXB1dGUgdHlwZSBoYXMgYSBzcGVjaWZpYyBpbnRlcmZhY2Ugd2l0aCBvbmx5IHRoZSBtZXRob2RzIHRoYXQgYXBwbHkgdG8gaXQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGNvbnN0IGVjcyA9IGFwcC5hZGRDb21wdXRlKENvbXB1dGVGYWN0b3J5LmJ1aWxkKFwiQXBpXCIsIHsgdHlwZTogXCJlY3NcIiwgLi4uIH0pKTtcbiAqIGVjcy5nZXRMb2FkQmFsYW5jZXIoKTsgLy8g4pyTIEF2YWlsYWJsZSBvbiBJRWNzQ29tcHV0ZVxuICpcbiAqIGNvbnN0IGxhbWJkYSA9IGFwcC5hZGRDb21wdXRlKENvbXB1dGVGYWN0b3J5LmJ1aWxkKFwiRm5cIiwgeyB0eXBlOiBcImxhbWJkYVwiLCAuLi4gfSkpO1xuICogbGFtYmRhLmdldEZ1bmN0aW9uVXJsKCk7IC8vIOKckyBBdmFpbGFibGUgb24gSUxhbWJkYUNvbXB1dGVcbiAqIGxhbWJkYS5nZXRMb2FkQmFsYW5jZXIoKTsgLy8g4pyXIENvbXBpbGUgZXJyb3IgLSBub3Qgb24gSUxhbWJkYUNvbXB1dGVcbiAqL1xuXG5pbXBvcnQgeyB0eXBlIElDbHVzdGVyLCB0eXBlIElCYXNlU2VydmljZSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWNzXCI7XG5pbXBvcnQgeyB0eXBlIElBcHBsaWNhdGlvbkxvYWRCYWxhbmNlciB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2MlwiO1xuaW1wb3J0IHsgdHlwZSBJRnVuY3Rpb24gfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWxhbWJkYVwiO1xuaW1wb3J0IHsgdHlwZSBJQXV0b1NjYWxpbmdHcm91cCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtYXV0b3NjYWxpbmdcIjtcbmltcG9ydCB7IHR5cGUgSVNlY3VyaXR5R3JvdXAsIHR5cGUgSUNvbm5lY3RhYmxlIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCB7IHR5cGUgSUdyYW50YWJsZSwgdHlwZSBHcmFudCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtaWFtXCI7XG5pbXBvcnQgeyB0eXBlIENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogQ29tcHV0ZSB0eXBlIGRpc2NyaW1pbmF0b3IuXG4gKiBVc2VkIHRvIGRldGVybWluZSB3aGljaCBzcGVjaWZpYyBpbnRlcmZhY2UgYXBwbGllcy5cbiAqL1xuZXhwb3J0IHR5cGUgQ29tcHV0ZVR5cGUgPSBcImVjc1wiIHwgXCJsYW1iZGFcIiB8IFwiZWMyXCI7XG5cbi8qKlxuICogQmFzZSBjb21wdXRlIGludGVyZmFjZS5cbiAqIEFsbCBjb21wdXRlIHR5cGVzIGltcGxlbWVudCB0aGlzIGludGVyZmFjZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ29tcHV0ZSB7XG4gIC8qKiBUaGUgdHlwZSBvZiBjb21wdXRlIHJlc291cmNlLiBVc2VkIGZvciBydW50aW1lIHR5cGUgbmFycm93aW5nLiAqL1xuICByZWFkb25seSBjb21wdXRlVHlwZTogQ29tcHV0ZVR5cGU7XG5cbiAgLyoqIFRoZSB1bmRlcmx5aW5nIENESyBjb25zdHJ1Y3Qgbm9kZS4gKi9cbiAgcmVhZG9ubHkgbm9kZTogQ29uc3RydWN0W1wibm9kZVwiXTtcbn1cblxuLyoqXG4gKiBFQ1MgY29tcHV0ZSBpbnRlcmZhY2UuXG4gKiBQcm92aWRlcyBhY2Nlc3MgdG8gRUNTLXNwZWNpZmljIHJlc291cmNlcyBsaWtlIGNsdXN0ZXJzLCBsb2FkIGJhbGFuY2VycywgYW5kIHNlcnZpY2VzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElFY3NDb21wdXRlIGV4dGVuZHMgSUNvbXB1dGUsIElDb25uZWN0YWJsZSB7XG4gIHJlYWRvbmx5IGNvbXB1dGVUeXBlOiBcImVjc1wiO1xuXG4gIC8qKiBHZXQgdGhlIEVDUyBjbHVzdGVyLiAqL1xuICBnZXRDbHVzdGVyKCk6IElDbHVzdGVyO1xuXG4gIC8qKiBHZXQgdGhlIEFwcGxpY2F0aW9uIExvYWQgQmFsYW5jZXIgaWYgb25lIHdhcyBjcmVhdGVkLiAqL1xuICBnZXRMb2FkQmFsYW5jZXIoKTogSUFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBHZXQgYSBzcGVjaWZpYyBzZXJ2aWNlIGJ5IG5hbWUuXG4gICAqIFJldHVybnMgSUJhc2VTZXJ2aWNlIHdoaWNoIGlzIHRoZSBjb21tb24gaW50ZXJmYWNlIGZvciBib3RoIEZhcmdhdGUgYW5kIEVDMiBzZXJ2aWNlcy5cbiAgICogQHBhcmFtIG5hbWUgVGhlIHNlcnZpY2UgbmFtZVxuICAgKi9cbiAgZ2V0U2VydmljZShuYW1lOiBzdHJpbmcpOiBJQmFzZVNlcnZpY2UgfCB1bmRlZmluZWQ7XG5cbiAgLyoqIEdldCBhbGwgc2VydmljZXMgaW4gdGhlIGNsdXN0ZXIuICovXG4gIGdldEFsbFNlcnZpY2VzKCk6IElCYXNlU2VydmljZVtdO1xuXG4gIC8qKiBHZXQgdGhlIHNlY3VyaXR5IGdyb3VwIGZvciB0aGUgY2x1c3Rlci4gKi9cbiAgZ2V0U2VjdXJpdHlHcm91cCgpOiBJU2VjdXJpdHlHcm91cDtcbn1cblxuLyoqXG4gKiBMYW1iZGEgY29tcHV0ZSBpbnRlcmZhY2UuXG4gKiBQcm92aWRlcyBhY2Nlc3MgdG8gTGFtYmRhLXNwZWNpZmljIHJlc291cmNlcyBsaWtlIGZ1bmN0aW9ucyBhbmQgZnVuY3Rpb24gVVJMcy5cbiAqIEV4dGVuZHMgSUNvbm5lY3RhYmxlIGZvciBWUEMtYmFzZWQgTGFtYmRhcyB0aGF0IG5lZWQgc2VjdXJpdHkgZ3JvdXAgY29ubmVjdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUxhbWJkYUNvbXB1dGUgZXh0ZW5kcyBJQ29tcHV0ZSwgSUNvbm5lY3RhYmxlIHtcbiAgcmVhZG9ubHkgY29tcHV0ZVR5cGU6IFwibGFtYmRhXCI7XG5cbiAgLyoqXG4gICAqIEdldCBhIExhbWJkYSBmdW5jdGlvbiBieSBuYW1lLlxuICAgKiBJZiBubyBuYW1lIGlzIHByb3ZpZGVkIGFuZCB0aGVyZSdzIGEgc2luZ2xlIGZ1bmN0aW9uLCByZXR1cm5zIHRoYXQgZnVuY3Rpb24uXG4gICAqIEBwYXJhbSBuYW1lIE9wdGlvbmFsIGZ1bmN0aW9uIG5hbWVcbiAgICovXG4gIGdldEZ1bmN0aW9uKG5hbWU/OiBzdHJpbmcpOiBJRnVuY3Rpb24gfCB1bmRlZmluZWQ7XG5cbiAgLyoqIEdldCBhbGwgTGFtYmRhIGZ1bmN0aW9ucy4gKi9cbiAgZ2V0QWxsRnVuY3Rpb25zKCk6IElGdW5jdGlvbltdO1xuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGZ1bmN0aW9uIFVSTCBmb3IgYSBMYW1iZGEgZnVuY3Rpb24uXG4gICAqIEBwYXJhbSBuYW1lIE9wdGlvbmFsIGZ1bmN0aW9uIG5hbWVcbiAgICovXG4gIGdldEZ1bmN0aW9uVXJsKG5hbWU/OiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgc2VjdXJpdHkgZ3JvdXAgZm9yIFZQQy1lbmFibGVkIExhbWJkYSBmdW5jdGlvbnMuXG4gICAqIFJldHVybnMgdW5kZWZpbmVkIGlmIHRoZSBMYW1iZGEgaXMgbm90IFZQQy1lbmFibGVkLlxuICAgKi9cbiAgZ2V0U2VjdXJpdHlHcm91cCgpOiBJU2VjdXJpdHlHcm91cCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogR3JhbnQgaW52b2tlIHBlcm1pc3Npb25zIHRvIGEgZ3JhbnRlZS5cbiAgICogQHBhcmFtIGdyYW50ZWUgVGhlIHByaW5jaXBhbCB0byBncmFudCBpbnZva2UgcGVybWlzc2lvbnMgdG9cbiAgICogQHBhcmFtIGZ1bmN0aW9uTmFtZSBPcHRpb25hbCBzcGVjaWZpYyBmdW5jdGlvbiBuYW1lXG4gICAqL1xuICBncmFudEludm9rZShncmFudGVlOiBJR3JhbnRhYmxlLCBmdW5jdGlvbk5hbWU/OiBzdHJpbmcpOiBHcmFudDtcbn1cblxuLyoqXG4gKiBFQzIgY29tcHV0ZSBpbnRlcmZhY2UuXG4gKiBQcm92aWRlcyBhY2Nlc3MgdG8gRUMyLXNwZWNpZmljIHJlc291cmNlcyBsaWtlIEF1dG8gU2NhbGluZyBHcm91cHMgYW5kIHNlY3VyaXR5IGdyb3Vwcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJRWMyQ29tcHV0ZSBleHRlbmRzIElDb21wdXRlLCBJQ29ubmVjdGFibGUge1xuICByZWFkb25seSBjb21wdXRlVHlwZTogXCJlYzJcIjtcblxuICAvKiogR2V0IHRoZSBBdXRvIFNjYWxpbmcgR3JvdXAuICovXG4gIGdldEF1dG9TY2FsaW5nR3JvdXAoKTogSUF1dG9TY2FsaW5nR3JvdXA7XG5cbiAgLyoqIEdldCB0aGUgc2VjdXJpdHkgZ3JvdXAuICovXG4gIGdldFNlY3VyaXR5R3JvdXAoKTogSVNlY3VyaXR5R3JvdXA7XG59XG5cbi8qKlxuICogVW5pb24gdHlwZSByZXByZXNlbnRpbmcgYW55IGNvbXB1dGUgaW50ZXJmYWNlLlxuICogVXNlIHdpdGggdHlwZSBndWFyZHMgZm9yIGdlbmVyaWMgaGFuZGxpbmcuXG4gKi9cbmV4cG9ydCB0eXBlIEFueUNvbXB1dGUgPSBJRWNzQ29tcHV0ZSB8IElMYW1iZGFDb21wdXRlIHwgSUVjMkNvbXB1dGU7XG5cbi8qKlxuICogVHlwZSBndWFyZCB0byBjaGVjayBpZiBhIGNvbXB1dGUgaXMgRUNTLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNFY3NDb21wdXRlKGNvbXB1dGU6IElDb21wdXRlKTogY29tcHV0ZSBpcyBJRWNzQ29tcHV0ZSB7XG4gIHJldHVybiBjb21wdXRlLmNvbXB1dGVUeXBlID09PSBcImVjc1wiO1xufVxuXG4vKipcbiAqIFR5cGUgZ3VhcmQgdG8gY2hlY2sgaWYgYSBjb21wdXRlIGlzIExhbWJkYS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzTGFtYmRhQ29tcHV0ZShjb21wdXRlOiBJQ29tcHV0ZSk6IGNvbXB1dGUgaXMgSUxhbWJkYUNvbXB1dGUge1xuICByZXR1cm4gY29tcHV0ZS5jb21wdXRlVHlwZSA9PT0gXCJsYW1iZGFcIjtcbn1cblxuLyoqXG4gKiBUeXBlIGd1YXJkIHRvIGNoZWNrIGlmIGEgY29tcHV0ZSBpcyBFQzIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0VjMkNvbXB1dGUoY29tcHV0ZTogSUNvbXB1dGUpOiBjb21wdXRlIGlzIElFYzJDb21wdXRlIHtcbiAgcmV0dXJuIGNvbXB1dGUuY29tcHV0ZVR5cGUgPT09IFwiZWMyXCI7XG59XG5cbi8qKlxuICogVHlwZSBndWFyZCB0byBjaGVjayBpZiBhIHJlc291cmNlIGlzIGFueSBjb21wdXRlIHR5cGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0NvbXB1dGUocmVzb3VyY2U6IHVua25vd24pOiByZXNvdXJjZSBpcyBJQ29tcHV0ZSB7XG4gIHJldHVybiAoXG4gICAgcmVzb3VyY2UgIT09IG51bGwgJiZcbiAgICB0eXBlb2YgcmVzb3VyY2UgPT09IFwib2JqZWN0XCIgJiZcbiAgICBcImNvbXB1dGVUeXBlXCIgaW4gcmVzb3VyY2UgJiZcbiAgICB0eXBlb2YgKHJlc291cmNlIGFzIElDb21wdXRlKS5jb21wdXRlVHlwZSA9PT0gXCJzdHJpbmdcIlxuICApO1xufVxuIl19
|
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isSecurityGroupConnector = exports.isQueueConnector = exports.isDynamoDBConnector = exports.isStorageConnector = exports.isConnectionConfig = exports.isConnectable = exports.isConnector = exports.isMessagingAccess = exports.isConnectionAccess = exports.CONNECTION_TYPE = void 0;
|
|
4
1
|
/**
|
|
5
2
|
* Re-export from canonical location in lib/utils/.
|
|
6
3
|
* Connector types are shared between resources and patterns layers,
|
|
7
4
|
* so they belong in utils per the infrastructure layer boundary rules.
|
|
8
5
|
*/
|
|
9
|
-
|
|
10
|
-
Object.defineProperty(exports, "CONNECTION_TYPE", { enumerable: true, get: function () { return connector_js_1.CONNECTION_TYPE; } });
|
|
11
|
-
Object.defineProperty(exports, "isConnectionAccess", { enumerable: true, get: function () { return connector_js_1.isConnectionAccess; } });
|
|
12
|
-
Object.defineProperty(exports, "isMessagingAccess", { enumerable: true, get: function () { return connector_js_1.isMessagingAccess; } });
|
|
13
|
-
Object.defineProperty(exports, "isConnector", { enumerable: true, get: function () { return connector_js_1.isConnector; } });
|
|
14
|
-
Object.defineProperty(exports, "isConnectable", { enumerable: true, get: function () { return connector_js_1.isConnectable; } });
|
|
15
|
-
Object.defineProperty(exports, "isConnectionConfig", { enumerable: true, get: function () { return connector_js_1.isConnectionConfig; } });
|
|
16
|
-
Object.defineProperty(exports, "isStorageConnector", { enumerable: true, get: function () { return connector_js_1.isStorageConnector; } });
|
|
17
|
-
Object.defineProperty(exports, "isDynamoDBConnector", { enumerable: true, get: function () { return connector_js_1.isDynamoDBConnector; } });
|
|
18
|
-
Object.defineProperty(exports, "isQueueConnector", { enumerable: true, get: function () { return connector_js_1.isQueueConnector; } });
|
|
19
|
-
Object.defineProperty(exports, "isSecurityGroupConnector", { enumerable: true, get: function () { return connector_js_1.isSecurityGroupConnector; } });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL3BhdHRlcm5zL2F3cy9pbnRlcmZhY2VzL2Nvbm5lY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7OztHQUlHO0FBQ0gsNERBd0JxQztBQVpuQywrR0FBQSxlQUFlLE9BQUE7QUFHZixrSEFBQSxrQkFBa0IsT0FBQTtBQUNsQixpSEFBQSxpQkFBaUIsT0FBQTtBQUNqQiwyR0FBQSxXQUFXLE9BQUE7QUFDWCw2R0FBQSxhQUFhLE9BQUE7QUFDYixrSEFBQSxrQkFBa0IsT0FBQTtBQUNsQixrSEFBQSxrQkFBa0IsT0FBQTtBQUNsQixtSEFBQSxtQkFBbUIsT0FBQTtBQUNuQixnSEFBQSxnQkFBZ0IsT0FBQTtBQUNoQix3SEFBQSx3QkFBd0IsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUmUtZXhwb3J0IGZyb20gY2Fub25pY2FsIGxvY2F0aW9uIGluIGxpYi91dGlscy8uXG4gKiBDb25uZWN0b3IgdHlwZXMgYXJlIHNoYXJlZCBiZXR3ZWVuIHJlc291cmNlcyBhbmQgcGF0dGVybnMgbGF5ZXJzLFxuICogc28gdGhleSBiZWxvbmcgaW4gdXRpbHMgcGVyIHRoZSBpbmZyYXN0cnVjdHVyZSBsYXllciBib3VuZGFyeSBydWxlcy5cbiAqL1xuZXhwb3J0IHtcbiAgdHlwZSBDb25uZWN0b3JUeXBlLFxuICB0eXBlIENvbm5lY3Rpb25BY2Nlc3MsXG4gIHR5cGUgTWVzc2FnaW5nQWNjZXNzLFxuICB0eXBlIElDb25uZWN0b3IsXG4gIHR5cGUgSVN0b3JhZ2VDb25uZWN0b3IsXG4gIHR5cGUgSUR5bmFtb0RCQ29ubmVjdG9yLFxuICB0eXBlIElRdWV1ZUNvbm5lY3RvcixcbiAgdHlwZSBJU2VjdXJpdHlHcm91cENvbm5lY3RvcixcbiAgdHlwZSBBbnlDb25uZWN0b3IsXG4gIHR5cGUgQ29ubmVjdGlvbkNvbmZpZyxcbiAgdHlwZSBDb25uZWN0aW9uU3BlYyxcbiAgQ09OTkVDVElPTl9UWVBFLFxuICB0eXBlIENvbm5lY3Rpb25UeXBlLFxuICB0eXBlIENvbm5lY3Rpb25SZXN1bHQsXG4gIGlzQ29ubmVjdGlvbkFjY2VzcyxcbiAgaXNNZXNzYWdpbmdBY2Nlc3MsXG4gIGlzQ29ubmVjdG9yLFxuICBpc0Nvbm5lY3RhYmxlLFxuICBpc0Nvbm5lY3Rpb25Db25maWcsXG4gIGlzU3RvcmFnZUNvbm5lY3RvcixcbiAgaXNEeW5hbW9EQkNvbm5lY3RvcixcbiAgaXNRdWV1ZUNvbm5lY3RvcixcbiAgaXNTZWN1cml0eUdyb3VwQ29ubmVjdG9yXG59IGZyb20gXCIuLi8uLi8uLi91dGlscy9jb25uZWN0b3IuanNcIjtcbiJdfQ==
|
|
6
|
+
export { CONNECTION_TYPE, isConnectionAccess, isMessagingAccess, isConnector, isConnectable, isConnectionConfig, isStorageConnector, isDynamoDBConnector, isQueueConnector, isSecurityGroupConnector } from "../../../utils/connector.js";
|
|
@@ -17,7 +17,7 @@ import { type ITable } from "aws-cdk-lib/aws-dynamodb";
|
|
|
17
17
|
import { type IConnectable } from "aws-cdk-lib/aws-ec2";
|
|
18
18
|
import { type IGrantable, type Grant } from "aws-cdk-lib/aws-iam";
|
|
19
19
|
import { type Construct } from "constructs";
|
|
20
|
-
import { type Secret } from "../../../resources/aws/secrets";
|
|
20
|
+
import { type Secret } from "../../../resources/aws/secrets/index.js";
|
|
21
21
|
/**
|
|
22
22
|
* Database type discriminator.
|
|
23
23
|
* Relational types share the IRelationalDatabase interface.
|