@go-to-k/cdkd 0.298.0 → 0.298.2
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/dist/{asg-provider-B1xRE8do.js → asg-provider-Ds5ElkGf.js} +2 -2
- package/dist/{asg-provider-B1xRE8do.js.map → asg-provider-Ds5ElkGf.js.map} +1 -1
- package/dist/cli.js +2 -2
- package/dist/{deploy-engine-CJTG3tft.js → deploy-engine-BgWY0v3K.js} +1273 -142
- package/dist/deploy-engine-BgWY0v3K.js.map +1 -0
- package/dist/{iam-role-provider-qxfS4sDT.js → iam-role-provider-KCSxfQZh.js} +2 -2
- package/dist/{iam-role-provider-qxfS4sDT.js.map → iam-role-provider-KCSxfQZh.js.map} +1 -1
- package/dist/index.d.ts +12 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/{neptune-provider-CU_1O2FR.js → neptune-provider-BGAmbyRB.js} +2 -2
- package/dist/{neptune-provider-CU_1O2FR.js.map → neptune-provider-BGAmbyRB.js.map} +1 -1
- package/dist/{program-BivXyHmd.js → program-BzEA5Cka.js} +59 -15
- package/dist/program-BzEA5Cka.js.map +1 -0
- package/dist/{provider-classes-1EHrZ847.js → provider-classes-B74Nt7nS.js} +136 -85
- package/dist/provider-classes-B74Nt7nS.js.map +1 -0
- package/dist/{rds-provider-J40R0ysf.js → rds-provider-D4kq6O-L.js} +2 -2
- package/dist/{rds-provider-J40R0ysf.js.map → rds-provider-D4kq6O-L.js.map} +1 -1
- package/dist/{version-D96I6uiO.js → version-CUIlKSi1.js} +2 -2
- package/dist/{version-D96I6uiO.js.map → version-CUIlKSi1.js.map} +1 -1
- package/package.json +9 -9
- package/dist/deploy-engine-CJTG3tft.js.map +0 -1
- package/dist/program-BivXyHmd.js.map +0 -1
- package/dist/provider-classes-1EHrZ847.js.map +0 -1
|
@@ -2,12 +2,12 @@ import { r as getAwsClients } from "./aws-clients-CnmtbrxD.js";
|
|
|
2
2
|
import { F as displayStackName, I as isPasteableIdent, N as displayIdent, O as SECRET_REF_MAX_CODE_POINTS, P as displaySafe, R as plainIdentOr, a as getLogger, b as generateResourceNameWithFallback, n as isAwsAuthoredFailure, r as safeStringify, t as describeAwsFailure, y as generateResourceName, z as safeMsg } from "./aws-failure-text-DtvlUugx.js";
|
|
3
3
|
import { $ as protectedReplacementAdvice, $n as isAmbiguousOutcomeError, $t as credentialFingerprint, A as isQuotableImportValue, B as isTerminalDeleteFailure, Bn as withheldTargetClause, C as setBounded, D as VALUE_NOT_SHOWN, E as assertRegionMatch, F as resolveExplicitPhysicalId, Gt as injectiveKeyPrefix, H as observeThenDisableProtection, In as plainOrDescribed, L as ProtectionFlipRegistry, M as quotedRemedyLogicalId, Mn as hasClauseBreak, Mt as markCreatedBeforeFailure, N as refusalTypeShown, Nn as isInertUnquoted, O as isPlainImportJson, P as remedyLogicalId, Pn as pasteableCommand, Q as pasteableAwsCommand, Qt as clientDefaultsFor, S as replayedSendWindow, St as withDerivedNameMasks, T as RESOURCE_NOT_FOUND, Tt as clearCreatedBeforeFailure, U as protectionFlipKey, V as logGroupProtectionSite, W as rdsFamilyProtectionSite, Wt as injectiveKey, X as WITHHELD_AWS_COMMAND, Xn as markReplayMayCollide, Xt as ambientClientDefaults, Y as UNNAMEABLE_ID_CLAUSE, Yn as markNameCollision, Yt as withPasteableAwsProfile, Z as isAwsCliLiteral, Zt as ambientCredentialConfig, _ as RecentIdSet, _t as createMaskedLogSinks, a as onlySecretDerived, ar as isMarkedNonRetryable, at as startInterruptWatch, b as isInsideWindow, bt as maskDeep, c as recordedPrincipalsRepair, cr as markRedactedCause, ct as canonicalizeRoute53QueryName, dt as compositeIdSkipResult, en as AccountIdUnavailableError, et as renderDisableCommand, ft as logicalIdShown, g as AmbiguousCreateLatch, gn as ProvisioningError, gt as stateOrphanRecordRemedy, h as AMBIGUOUS_LATCH_TTL_MS, ht as segmentAfterAnchor, i as holdsSecretDerivedEntry, ir as THROTTLING_ERROR_NAMES, it as isInterruptedWaitError, j as normalizeAwsTagsToCfn, jn as commandHole, jt as markAuxiliaryFailure, k as isPlainImportValue, lr as wrapMaskedAwsError, lt as compositeIdFormatMessage, nn as CdkdError, nr as isTransientServerError, o as readPrincipalLists, or as isThrottlingError, ot as ElapsedBudgetRegistry, p as withRemovalDefaults, pt as packCompositeId, q as userPoolProtectionSite, r as SECRET_DERIVED_READ_LIVE, sr as markNonRetryable, tr as isRetryableTransientError, u as clearOnUpdateRemoval, ut as compositeIdSeparatorRefusal, v as ambiguousAttemptLead, vn as ResourceUpdateNotSupportedError, vt as createMaskedRetryLogger, w as withoutServerErrorRetries, x as replayFollowedAmbiguousAttempt, xt as maskerOrIdentity, y as createAttemptKey, yt as isSecretDerivedValue, z as deleteWithProtectionCompensation, zn as shellQuote } from "./iam-policy-targets-CwKiK9nS.js";
|
|
4
4
|
import { s as ambientRegion } from "./aws-client-defaults-D0q0z4dG.js";
|
|
5
|
-
import { $ as isTruthyCfnBoolean, $o as markSameGenerationBag,
|
|
6
|
-
import { n as collectInlinePolicyNamesManagedBySiblings, r as IamCreateClientCache, t as IAMRoleProvider } from "./iam-role-provider-
|
|
7
|
-
import { a as canonicalizeIpProtocolValue, i as resolveSecretDerivedPrincipals, n as runDestroyForStack, o as resolvedResourceTimeoutMs, r as isResolvableSecretPrincipalList, t as canonicalizeIpv4Cidr } from "./program-
|
|
8
|
-
import { RDSProvider } from "./rds-provider-
|
|
9
|
-
import { NeptuneProvider } from "./neptune-provider-
|
|
10
|
-
import { ASGProvider } from "./asg-provider-
|
|
5
|
+
import { $ as isTruthyCfnBoolean, $o as markSameGenerationBag, B as DYNAMODB_DELETE_MIN_RESOURCE_TIMEOUT_MS, Br as reDisableInstanceApiTermination, Bt as getStackRecords, Co as sameLambdaFunctionAddress, Ct as revertNestedChildFromJournal, Dr as unchangedBehindSecretReference, Dt as getCurrentNestedStackContext, Ei as parseWebACLArn, Er as slowCcOperationTimeoutMs, Fo as passedNoEchoParametersOf, Fr as markWaitAbandoned, G as resolveDynamoDbDeleteBudgetMs, Ga as findSilentDropProperties, H as compensateRemovedDeletionProtection, Ho as hasMaskableValues, Ii as accountArgs, J as deleteTableWithIndexBusyRetry, K as DELETE_INDEX_WAIT_PROCEED_NOTE, Lr as ec2InstanceProtectionSite, Mr as deleteSkipReason, Nr as withIndeterminateGuard, Ot as withNestedStackContext, Pr as isWaitAbandonedError, Q as hasCdkAutoDeleteTag, Qn as earliestDefined, Rr as isTerminationProtectionPropagationError, Rt as awaitInFlightSibling, Sl as resolveAssemblyPath, So as lambdaFunctionNameForMask, U as deleteBudgetKey, Ua as withheldAccountClause, V as beginDeleteWait, Vr as reEnableInstanceApiTermination, W as resolveDynamoDbDeleteBudgetClock, X as ECR_AUTO_DELETE_IMAGES_TAG, Y as waitForIndexesSettled, Z as S3_AUTO_DELETE_OBJECTS_TAG, a as findNestedTemplateTreeDefect, ac as rewriteTemplateAssetReferences, ai as s3BucketArn, al as decodeListingKey, an as isRedactedRecordedValue, ao as toCfnInteger, ar as planTagDiff, as as dynamicReferenceTokens, b as lookupEachName, bl as displayAssemblyPath, bo as withRetry, br as getCurrentResourceSecrets, bt as getNestedRevertRun, c as renderNestedTemplateTreeDefect, ci as s3BucketRegionalDomainName, cl as canonicalizeRegion, co as coerceCfnInteger, cr as tagMapAsList, da as refuseMalformedNestedChildOutputs, do as configStringRefusal, dr as stringifyIfAssigned, ds as recoverMaskedOutput, ec as stringifyValue, er as reserveStackCreateToken, es as redactSecretsForState, et as getPriorAttempts, fo as readConfigString, fs as physicalNameCopiesOf, gi as getAccountInfo, go as requireConfigString, ho as requireConfigObject, hs as carriesSecretMask, ii as isSettledInstanceState, in as REDACTED_DELETE_ADDRESS_SKIP_REASON, io as isWarmThroughputDecrease, ir as DBPROXY_TAG_OPTIONS, ja as refuseMalformedResourcesForDestroy, ki as passedParameterClassesOf, li as s3BucketWebsiteUrl, ll as derivePartitionAndUrlSuffix, lo as configBooleanRefusal, lr as tagPlanWarning, mo as requireConfigArray, nn as getCurrentProducerRegions, no as WARM_THROUGHPUT_MEMBERS, nr as acquireIdempotencyToken, o as isAbsoluteAssetPath, oi as s3BucketDomainName, on as redactedDeleteAddressFields, oo as toFiniteNumber, or as readTagList, po as replayWarn, q as INDEX_SETTLE_POLL_INTERVAL_MS, qa as withoutSilentDropProperties, ro as coerceWarmThroughput$1, rr as DBPROXY_TAGS_WHAT, rs as withoutPhysicalNameCopies, s as listNestedTemplateRows, si as s3BucketDualStackDomainName, sn as redactedDeleteAddressSkip, so as coerceCfnBoolean, sr as refuseMalformedDesiredTags, t as DeployEngine, tt as markRefusedBeforeApplying, uo as configIntegerRefusal, ur as definedAttributes, v as chunks, x as withApiLimit, xl as renderAssemblyPathEscape, xo as canonicalLambdaFunctionName, y as isAccessDeniedError, yl as describeFileReadFailure, z as DynamoDBGlobalTableProvider, zr as observeThenDisableInstanceApiTermination } from "./deploy-engine-BgWY0v3K.js";
|
|
6
|
+
import { n as collectInlinePolicyNamesManagedBySiblings, r as IamCreateClientCache, t as IAMRoleProvider } from "./iam-role-provider-KCSxfQZh.js";
|
|
7
|
+
import { a as canonicalizeIpProtocolValue, i as resolveSecretDerivedPrincipals, n as runDestroyForStack, o as resolvedResourceTimeoutMs, r as isResolvableSecretPrincipalList, t as canonicalizeIpv4Cidr } from "./program-BzEA5Cka.js";
|
|
8
|
+
import { RDSProvider } from "./rds-provider-D4kq6O-L.js";
|
|
9
|
+
import { NeptuneProvider } from "./neptune-provider-BGAmbyRB.js";
|
|
10
|
+
import { ASGProvider } from "./asg-provider-Ds5ElkGf.js";
|
|
11
11
|
import { createHash, randomUUID } from "node:crypto";
|
|
12
12
|
import { CreateBucketCommand, DeleteBucketAnalyticsConfigurationCommand, DeleteBucketCommand, DeleteBucketCorsCommand, DeleteBucketEncryptionCommand, DeleteBucketIntelligentTieringConfigurationCommand, DeleteBucketInventoryConfigurationCommand, DeleteBucketLifecycleCommand, DeleteBucketMetricsConfigurationCommand, DeleteBucketOwnershipControlsCommand, DeleteBucketPolicyCommand, DeleteBucketReplicationCommand, DeleteBucketTaggingCommand, DeleteBucketWebsiteCommand, DeleteObjectsCommand, GetBucketAccelerateConfigurationCommand, GetBucketCorsCommand, GetBucketEncryptionCommand, GetBucketLifecycleConfigurationCommand, GetBucketLocationCommand, GetBucketLoggingCommand, GetBucketNotificationConfigurationCommand, GetBucketOwnershipControlsCommand, GetBucketPolicyCommand, GetBucketReplicationCommand, GetBucketTaggingCommand, GetBucketVersioningCommand, GetBucketWebsiteCommand, GetObjectCommand, GetObjectLockConfigurationCommand, GetPublicAccessBlockCommand, HeadBucketCommand, ListBucketAnalyticsConfigurationsCommand, ListBucketIntelligentTieringConfigurationsCommand, ListBucketInventoryConfigurationsCommand, ListBucketMetricsConfigurationsCommand, ListBucketsCommand, ListObjectVersionsCommand, ListObjectsV2Command, NoSuchBucket, PutBucketAccelerateConfigurationCommand, PutBucketAnalyticsConfigurationCommand, PutBucketCorsCommand, PutBucketEncryptionCommand, PutBucketIntelligentTieringConfigurationCommand, PutBucketInventoryConfigurationCommand, PutBucketLifecycleConfigurationCommand, PutBucketLoggingCommand, PutBucketMetricsConfigurationCommand, PutBucketNotificationConfigurationCommand, PutBucketOwnershipControlsCommand, PutBucketPolicyCommand, PutBucketReplicationCommand, PutBucketTaggingCommand, PutBucketVersioningCommand, PutBucketWebsiteCommand, PutObjectLockConfigurationCommand, PutPublicAccessBlockCommand, S3Client } from "@aws-sdk/client-s3";
|
|
13
13
|
import { AddRoleToInstanceProfileCommand, AddUserToGroupCommand, AttachGroupPolicyCommand, AttachRolePolicyCommand, AttachUserPolicyCommand, CreateAccessKeyCommand, CreateGroupCommand, CreateInstanceProfileCommand, CreateLoginProfileCommand, CreatePolicyCommand, CreatePolicyVersionCommand, CreateUserCommand, DeleteAccessKeyCommand, DeleteGroupCommand, DeleteGroupPolicyCommand, DeleteInstanceProfileCommand, DeleteLoginProfileCommand, DeletePolicyCommand, DeletePolicyVersionCommand, DeleteRolePolicyCommand, DeleteUserCommand, DeleteUserPermissionsBoundaryCommand, DeleteUserPolicyCommand, DetachGroupPolicyCommand, DetachRolePolicyCommand, DetachUserPolicyCommand, GetAccessKeyLastUsedCommand, GetGroupCommand, GetGroupPolicyCommand, GetInstanceProfileCommand, GetPolicyCommand, GetPolicyVersionCommand, GetRolePolicyCommand, GetUserCommand, GetUserPolicyCommand, IAMClient, ListAccessKeysCommand, ListAttachedGroupPoliciesCommand, ListAttachedUserPoliciesCommand, ListEntitiesForPolicyCommand, ListGroupPoliciesCommand, ListGroupsForUserCommand, ListPoliciesCommand, ListPolicyTagsCommand, ListPolicyVersionsCommand, ListUserPoliciesCommand, NoSuchEntityException, PutGroupPolicyCommand, PutRolePolicyCommand, PutUserPermissionsBoundaryCommand, PutUserPolicyCommand, RemoveRoleFromInstanceProfileCommand, RemoveUserFromGroupCommand, TagPolicyCommand, TagUserCommand, UntagPolicyCommand, UntagUserCommand, UpdateAccessKeyCommand, UpdateLoginProfileCommand } from "@aws-sdk/client-iam";
|
|
@@ -11639,13 +11639,14 @@ var DynamoDBTableProvider = class {
|
|
|
11639
11639
|
const wt = readbackWarmThroughput(table.WarmThroughput, properties !== void 0 && desiredBagIsInformative(properties) ? sentWarmThroughputMembers(properties["WarmThroughput"]) : void 0);
|
|
11640
11640
|
if (wt !== void 0) result["WarmThroughput"] = wt;
|
|
11641
11641
|
}
|
|
11642
|
+
let streamMembersRead = Promise.resolve();
|
|
11642
11643
|
if (table.StreamSpecification?.StreamEnabled && table.StreamSpecification.StreamViewType) {
|
|
11643
11644
|
const streamBlock = {
|
|
11644
11645
|
StreamEnabled: true,
|
|
11645
11646
|
StreamViewType: table.StreamSpecification.StreamViewType
|
|
11646
11647
|
};
|
|
11647
11648
|
result["StreamSpecification"] = streamBlock;
|
|
11648
|
-
|
|
11649
|
+
streamMembersRead = this.readStreamMembers(physicalId, table.LatestStreamArn, properties?.["StreamSpecification"], streamBlock, context?.afterOwnWrite === true);
|
|
11649
11650
|
}
|
|
11650
11651
|
const bagInformative = desiredBagIsInformative(properties);
|
|
11651
11652
|
if (table.GlobalSecondaryIndexes && table.GlobalSecondaryIndexes.length > 0) {
|
|
@@ -11664,88 +11665,121 @@ var DynamoDBTableProvider = class {
|
|
|
11664
11665
|
}
|
|
11665
11666
|
if (table.DeletionProtectionEnabled !== void 0) result["DeletionProtectionEnabled"] = table.DeletionProtectionEnabled;
|
|
11666
11667
|
if (table.TableClassSummary?.TableClass) result["TableClass"] = table.TableClassSummary.TableClass;
|
|
11667
|
-
|
|
11668
|
-
|
|
11669
|
-
|
|
11670
|
-
|
|
11671
|
-
|
|
11672
|
-
|
|
11673
|
-
|
|
11674
|
-
|
|
11675
|
-
|
|
11676
|
-
|
|
11677
|
-
|
|
11678
|
-
|
|
11679
|
-
|
|
11680
|
-
|
|
11681
|
-
|
|
11682
|
-
|
|
11683
|
-
|
|
11684
|
-
|
|
11685
|
-
try {
|
|
11686
|
-
const ttlDesc = (await this.dynamoDBClient.send(new DescribeTimeToLiveCommand({ TableName: physicalId }))).TimeToLiveDescription;
|
|
11687
|
-
if (ttlDesc?.TimeToLiveStatus === "ENABLED" && ttlDesc.AttributeName) result["TimeToLiveSpecification"] = {
|
|
11688
|
-
AttributeName: ttlDesc.AttributeName,
|
|
11689
|
-
Enabled: true
|
|
11690
|
-
};
|
|
11691
|
-
} catch (err) {
|
|
11692
|
-
this.logger.debug(`Could not read TimeToLive for ${physicalId}: ${describeAwsFailure(err).detail}`);
|
|
11693
|
-
}
|
|
11694
|
-
if (table.TableArn) try {
|
|
11695
|
-
const rpResp = await this.dynamoDBClient.send(new GetResourcePolicyCommand({ ResourceArn: table.TableArn }));
|
|
11696
|
-
if (rpResp.Policy) {
|
|
11697
|
-
let doc = rpResp.Policy;
|
|
11698
|
-
try {
|
|
11699
|
-
doc = JSON.parse(rpResp.Policy);
|
|
11700
|
-
} catch {}
|
|
11701
|
-
result["ResourcePolicy"] = { PolicyDocument: doc };
|
|
11702
|
-
}
|
|
11703
|
-
} catch (err) {
|
|
11704
|
-
if (!(err instanceof ResourceNotFoundException$1)) this.logger.debug(`Could not read ResourcePolicy for ${physicalId}: ${describeAwsFailure(err).detail}`);
|
|
11705
|
-
}
|
|
11706
|
-
try {
|
|
11707
|
-
const active = ((await this.dynamoDBClient.send(new DescribeKinesisStreamingDestinationCommand({ TableName: physicalId }))).KinesisDataStreamDestinations ?? []).find((d) => d.DestinationStatus === "ACTIVE" || d.DestinationStatus === "ENABLING");
|
|
11708
|
-
if (active?.StreamArn) {
|
|
11709
|
-
const kspec = { StreamArn: active.StreamArn };
|
|
11710
|
-
if (active.ApproximateCreationDateTimePrecision !== void 0) kspec["ApproximateCreationDateTimePrecision"] = active.ApproximateCreationDateTimePrecision;
|
|
11711
|
-
result["KinesisStreamSpecification"] = kspec;
|
|
11712
|
-
}
|
|
11713
|
-
} catch (err) {
|
|
11714
|
-
this.logger.debug(`Could not read KinesisStreamingDestination for ${physicalId}: ${describeAwsFailure(err).detail}`);
|
|
11715
|
-
}
|
|
11716
|
-
try {
|
|
11717
|
-
const ciResp = await this.dynamoDBClient.send(new DescribeContributorInsightsCommand({ TableName: physicalId }));
|
|
11718
|
-
const cspec = reverseMapTableContributorInsights(ciResp.ContributorInsightsStatus, ciResp.ContributorInsightsMode);
|
|
11719
|
-
if (cspec !== void 0) result["ContributorInsightsSpecification"] = cspec;
|
|
11720
|
-
} catch (err) {
|
|
11721
|
-
this.logger.debug(`Could not read ContributorInsights for ${physicalId}: ${describeAwsFailure(err).detail}`);
|
|
11722
|
-
}
|
|
11723
|
-
const emittedGsis = result["GlobalSecondaryIndexes"];
|
|
11724
|
-
if (bagInformative && Array.isArray(emittedGsis)) {
|
|
11725
|
-
const desiredByName = desiredIndexEntriesByName(properties?.["GlobalSecondaryIndexes"]);
|
|
11726
|
-
for (const emitted of emittedGsis) {
|
|
11727
|
-
const indexName = emitted["IndexName"];
|
|
11728
|
-
if (typeof indexName !== "string") continue;
|
|
11729
|
-
const desiredEntry = desiredByName.get(indexName);
|
|
11730
|
-
if (!indexDeclaresContributorInsights(desiredEntry)) continue;
|
|
11731
|
-
try {
|
|
11732
|
-
const indexResp = await this.dynamoDBClient.send(new DescribeContributorInsightsCommand({
|
|
11733
|
-
TableName: physicalId,
|
|
11734
|
-
IndexName: indexName
|
|
11735
|
-
}));
|
|
11736
|
-
const block = reverseMapIndexContributorInsights(indexResp.ContributorInsightsStatus, indexResp.ContributorInsightsMode, desiredEntry?.[CONTRIBUTOR_INSIGHTS_KEY]);
|
|
11737
|
-
if (block !== void 0) emitted[CONTRIBUTOR_INSIGHTS_KEY] = block;
|
|
11738
|
-
} catch (err) {
|
|
11739
|
-
this.logger.debug(`Could not read ContributorInsights for index ${indexName} of ${physicalId}: ${describeAwsFailure(err).detail}`);
|
|
11740
|
-
}
|
|
11741
|
-
}
|
|
11742
|
-
}
|
|
11668
|
+
const tableArn = table.TableArn;
|
|
11669
|
+
const [tags, pitr, ttl, resourcePolicy, kinesis, contributorInsights] = await Promise.all([
|
|
11670
|
+
tableArn ? this.readTableTags(tableArn) : Promise.resolve(void 0),
|
|
11671
|
+
this.readPointInTimeRecovery(physicalId),
|
|
11672
|
+
this.readTimeToLive(physicalId),
|
|
11673
|
+
tableArn ? this.readTableResourcePolicy(physicalId, tableArn) : Promise.resolve(void 0),
|
|
11674
|
+
this.readKinesisStreamSpecification(physicalId),
|
|
11675
|
+
this.readTableContributorInsights(physicalId),
|
|
11676
|
+
this.readIndexContributorInsights(physicalId, result, properties, bagInformative),
|
|
11677
|
+
streamMembersRead
|
|
11678
|
+
]);
|
|
11679
|
+
if (tags === RESOURCE_NOT_FOUND) return RESOURCE_NOT_FOUND;
|
|
11680
|
+
if (tags !== void 0) result["Tags"] = tags;
|
|
11681
|
+
if (pitr !== void 0) result["PointInTimeRecoverySpecification"] = pitr;
|
|
11682
|
+
if (ttl !== void 0) result["TimeToLiveSpecification"] = ttl;
|
|
11683
|
+
if (resourcePolicy !== void 0) result["ResourcePolicy"] = resourcePolicy;
|
|
11684
|
+
if (kinesis !== void 0) result["KinesisStreamSpecification"] = kinesis;
|
|
11685
|
+
if (contributorInsights !== void 0) result["ContributorInsightsSpecification"] = contributorInsights;
|
|
11743
11686
|
return result;
|
|
11744
11687
|
} catch (err) {
|
|
11745
11688
|
if (err instanceof ResourceNotFoundException$1) return RESOURCE_NOT_FOUND;
|
|
11746
11689
|
throw err;
|
|
11747
11690
|
}
|
|
11748
11691
|
}
|
|
11692
|
+
async readTableTags(tableArn) {
|
|
11693
|
+
try {
|
|
11694
|
+
const tagsResp = await this.dynamoDBClient.send(new ListTagsOfResourceCommand({ ResourceArn: tableArn }));
|
|
11695
|
+
return normalizeAwsTagsToCfn(tagsResp.Tags);
|
|
11696
|
+
} catch (err) {
|
|
11697
|
+
if (err instanceof ResourceNotFoundException$1) return RESOURCE_NOT_FOUND;
|
|
11698
|
+
throw err;
|
|
11699
|
+
}
|
|
11700
|
+
}
|
|
11701
|
+
async readPointInTimeRecovery(physicalId) {
|
|
11702
|
+
try {
|
|
11703
|
+
const pitrDesc = (await this.dynamoDBClient.send(new DescribeContinuousBackupsCommand({ TableName: physicalId }))).ContinuousBackupsDescription?.PointInTimeRecoveryDescription;
|
|
11704
|
+
const pitrStatus = pitrDesc?.PointInTimeRecoveryStatus;
|
|
11705
|
+
if (!pitrStatus) return void 0;
|
|
11706
|
+
const pitr = { PointInTimeRecoveryEnabled: pitrStatus === "ENABLED" };
|
|
11707
|
+
if (pitrStatus === "ENABLED" && pitrDesc?.RecoveryPeriodInDays !== void 0) pitr["RecoveryPeriodInDays"] = pitrDesc.RecoveryPeriodInDays;
|
|
11708
|
+
return pitr;
|
|
11709
|
+
} catch (err) {
|
|
11710
|
+
this.logger.debug(`Could not read PointInTimeRecovery for ${physicalId}: ${describeAwsFailure(err).detail}`);
|
|
11711
|
+
return;
|
|
11712
|
+
}
|
|
11713
|
+
}
|
|
11714
|
+
async readTimeToLive(physicalId) {
|
|
11715
|
+
try {
|
|
11716
|
+
const ttlDesc = (await this.dynamoDBClient.send(new DescribeTimeToLiveCommand({ TableName: physicalId }))).TimeToLiveDescription;
|
|
11717
|
+
if (ttlDesc?.TimeToLiveStatus === "ENABLED" && ttlDesc.AttributeName) return {
|
|
11718
|
+
AttributeName: ttlDesc.AttributeName,
|
|
11719
|
+
Enabled: true
|
|
11720
|
+
};
|
|
11721
|
+
return;
|
|
11722
|
+
} catch (err) {
|
|
11723
|
+
this.logger.debug(`Could not read TimeToLive for ${physicalId}: ${describeAwsFailure(err).detail}`);
|
|
11724
|
+
return;
|
|
11725
|
+
}
|
|
11726
|
+
}
|
|
11727
|
+
async readTableResourcePolicy(physicalId, tableArn) {
|
|
11728
|
+
try {
|
|
11729
|
+
const rpResp = await this.dynamoDBClient.send(new GetResourcePolicyCommand({ ResourceArn: tableArn }));
|
|
11730
|
+
if (!rpResp.Policy) return void 0;
|
|
11731
|
+
let doc = rpResp.Policy;
|
|
11732
|
+
try {
|
|
11733
|
+
doc = JSON.parse(rpResp.Policy);
|
|
11734
|
+
} catch {}
|
|
11735
|
+
return { PolicyDocument: doc };
|
|
11736
|
+
} catch (err) {
|
|
11737
|
+
if (!(err instanceof ResourceNotFoundException$1)) this.logger.debug(`Could not read ResourcePolicy for ${physicalId}: ${describeAwsFailure(err).detail}`);
|
|
11738
|
+
return;
|
|
11739
|
+
}
|
|
11740
|
+
}
|
|
11741
|
+
async readKinesisStreamSpecification(physicalId) {
|
|
11742
|
+
try {
|
|
11743
|
+
const active = ((await this.dynamoDBClient.send(new DescribeKinesisStreamingDestinationCommand({ TableName: physicalId }))).KinesisDataStreamDestinations ?? []).find((d) => d.DestinationStatus === "ACTIVE" || d.DestinationStatus === "ENABLING");
|
|
11744
|
+
if (!active?.StreamArn) return void 0;
|
|
11745
|
+
const kspec = { StreamArn: active.StreamArn };
|
|
11746
|
+
if (active.ApproximateCreationDateTimePrecision !== void 0) kspec["ApproximateCreationDateTimePrecision"] = active.ApproximateCreationDateTimePrecision;
|
|
11747
|
+
return kspec;
|
|
11748
|
+
} catch (err) {
|
|
11749
|
+
this.logger.debug(`Could not read KinesisStreamingDestination for ${physicalId}: ${describeAwsFailure(err).detail}`);
|
|
11750
|
+
return;
|
|
11751
|
+
}
|
|
11752
|
+
}
|
|
11753
|
+
async readTableContributorInsights(physicalId) {
|
|
11754
|
+
try {
|
|
11755
|
+
const ciResp = await this.dynamoDBClient.send(new DescribeContributorInsightsCommand({ TableName: physicalId }));
|
|
11756
|
+
return reverseMapTableContributorInsights(ciResp.ContributorInsightsStatus, ciResp.ContributorInsightsMode);
|
|
11757
|
+
} catch (err) {
|
|
11758
|
+
this.logger.debug(`Could not read ContributorInsights for ${physicalId}: ${describeAwsFailure(err).detail}`);
|
|
11759
|
+
return;
|
|
11760
|
+
}
|
|
11761
|
+
}
|
|
11762
|
+
async readIndexContributorInsights(physicalId, result, properties, bagInformative) {
|
|
11763
|
+
const emittedGsis = result["GlobalSecondaryIndexes"];
|
|
11764
|
+
if (!bagInformative || !Array.isArray(emittedGsis)) return;
|
|
11765
|
+
const desiredByName = desiredIndexEntriesByName(properties?.["GlobalSecondaryIndexes"]);
|
|
11766
|
+
for (const emitted of emittedGsis) {
|
|
11767
|
+
const indexName = emitted["IndexName"];
|
|
11768
|
+
if (typeof indexName !== "string") continue;
|
|
11769
|
+
const desiredEntry = desiredByName.get(indexName);
|
|
11770
|
+
if (!indexDeclaresContributorInsights(desiredEntry)) continue;
|
|
11771
|
+
try {
|
|
11772
|
+
const indexResp = await this.dynamoDBClient.send(new DescribeContributorInsightsCommand({
|
|
11773
|
+
TableName: physicalId,
|
|
11774
|
+
IndexName: indexName
|
|
11775
|
+
}));
|
|
11776
|
+
const block = reverseMapIndexContributorInsights(indexResp.ContributorInsightsStatus, indexResp.ContributorInsightsMode, desiredEntry?.[CONTRIBUTOR_INSIGHTS_KEY]);
|
|
11777
|
+
if (block !== void 0) emitted[CONTRIBUTOR_INSIGHTS_KEY] = block;
|
|
11778
|
+
} catch (err) {
|
|
11779
|
+
this.logger.debug(`Could not read ContributorInsights for index ${indexName} of ${physicalId}: ${describeAwsFailure(err).detail}`);
|
|
11780
|
+
}
|
|
11781
|
+
}
|
|
11782
|
+
}
|
|
11749
11783
|
streamMemberRereadDelaysMs = [
|
|
11750
11784
|
500,
|
|
11751
11785
|
1e3,
|
|
@@ -28264,15 +28298,27 @@ const USER_POOL_ECHO_MEMBERS = [
|
|
|
28264
28298
|
"DeviceConfiguration",
|
|
28265
28299
|
"SmsVerificationMessage",
|
|
28266
28300
|
"EmailVerificationMessage",
|
|
28267
|
-
"EmailVerificationSubject"
|
|
28301
|
+
"EmailVerificationSubject",
|
|
28302
|
+
"AcrConfiguration"
|
|
28268
28303
|
];
|
|
28269
28304
|
function userPoolDeletionProtectionUpdate(physicalId, pool, value, opts = {}) {
|
|
28270
28305
|
const input = { UserPoolId: physicalId };
|
|
28271
28306
|
for (const member of USER_POOL_ECHO_MEMBERS) if (pool[member] !== void 0) Object.assign(input, { [member]: pool[member] });
|
|
28307
|
+
const acr = customAcrLevels(pool.AcrConfiguration);
|
|
28308
|
+
if (acr === void 0) delete input.AcrConfiguration;
|
|
28309
|
+
else input.AcrConfiguration = acr;
|
|
28272
28310
|
if (echoesDeveloperEmail(pool) && opts.withoutDeveloperEmail !== true) input.EmailConfiguration = pool.EmailConfiguration;
|
|
28273
28311
|
input.DeletionProtection = value;
|
|
28274
28312
|
return input;
|
|
28275
28313
|
}
|
|
28314
|
+
function customAcrLevels(acr) {
|
|
28315
|
+
if (acr === void 0) return void 0;
|
|
28316
|
+
const custom = Object.fromEntries(Object.entries(acr).filter(([level, cfg]) => {
|
|
28317
|
+
const n = /^Level([1-4])$/.exec(level)?.[1];
|
|
28318
|
+
return n === void 0 || cfg?.AcrValue !== `urn:cognito:loa:${n}`;
|
|
28319
|
+
}));
|
|
28320
|
+
return Object.keys(custom).length > 0 ? custom : void 0;
|
|
28321
|
+
}
|
|
28276
28322
|
const sentWithoutEmail = /* @__PURE__ */ new WeakSet();
|
|
28277
28323
|
const createUserPoolLatch = new AmbiguousCreateLatch("CreateUserPool");
|
|
28278
28324
|
const userPoolsCreatedByThisProcess = new RecentIdSet();
|
|
@@ -44306,6 +44352,7 @@ var NestedStackProvider = class {
|
|
|
44306
44352
|
parameters: childParameters,
|
|
44307
44353
|
onDestructivePlan: void 0,
|
|
44308
44354
|
...inheritedSecrets && hasMaskableValues(inheritedSecrets) && { inheritedSecrets },
|
|
44355
|
+
inheritedPhysicalNameCopies: inheritedPhysicalNameCopiesOf(inheritedSecrets),
|
|
44309
44356
|
...passedClasses && { passedParameterClasses: passedClasses },
|
|
44310
44357
|
passedNoEchoParameters: passedNoEchoParametersOf(inheritedSecrets),
|
|
44311
44358
|
inheritedProducerRegions: getCurrentProducerRegions(),
|
|
@@ -44435,6 +44482,10 @@ function runAccountOf(ctx) {
|
|
|
44435
44482
|
statePrefix: ctx.destroyOptions?.statePrefix
|
|
44436
44483
|
};
|
|
44437
44484
|
}
|
|
44485
|
+
function inheritedPhysicalNameCopiesOf(bag) {
|
|
44486
|
+
const copies = bag === void 0 ? void 0 : physicalNameCopiesOf.get(bag);
|
|
44487
|
+
return copies === void 0 || copies.size === 0 ? void 0 : new Set(copies);
|
|
44488
|
+
}
|
|
44438
44489
|
|
|
44439
44490
|
//#endregion
|
|
44440
44491
|
//#region src/provisioning/providers/wait-condition-handle-provider.ts
|
|
@@ -44814,4 +44865,4 @@ var ACMCertificateProvider = class {
|
|
|
44814
44865
|
|
|
44815
44866
|
//#endregion
|
|
44816
44867
|
export { ACMCertificateProvider, ASGProvider, AgentCoreBrowserProvider, AgentCoreCodeInterpreterProvider, AgentCoreEvaluatorProvider, AgentCoreRuntimeProvider, ApiGatewayProvider, ApiGatewayV2Provider, AppSyncProvider, BudgetsBudgetProvider, CloudFrontDistributionProvider, CloudFrontOACProvider, CloudFrontOAIProvider, CloudTrailProvider, CloudWatchAlarmProvider, CloudWatchAnomalyDetectorProvider, CodeBuildProvider, CodeCommitRepositoryProvider, CognitoUserPoolProvider, DLMLifecyclePolicyProvider, DocDBProvider, DocDBSubnetGroupProvider, DynamoDBGlobalTableProvider, DynamoDBTableProvider, EC2Provider, ECRProvider, ECSProvider, EFSProvider, ELBv2Provider, EMRClusterProvider, EMRInstanceFleetConfigProvider, EMRInstanceGroupConfigProvider, ElastiCacheProvider, EventBridgeBusProvider, EventBridgeRuleProvider, FSxFileSystemProvider, FirehoseProvider, GlueConnectionProvider, GlueCrawlerProvider, GlueJobProvider, GlueProvider, GlueSecurityConfigurationProvider, GlueTriggerProvider, GlueWorkflowProvider, IAMAccessKeyProvider, IAMInstanceProfileProvider, IAMManagedPolicyProvider, IAMPolicyProvider, IAMRoleProvider, IAMUserGroupProvider, KMSProvider, KinesisStreamConsumerProvider, KinesisStreamProvider, LambdaEventInvokeConfigProvider, LambdaEventSourceMappingProvider, LambdaFunctionProvider, LambdaLayerVersionProvider, LambdaMicrovmImageProvider, LambdaPermissionProvider, LambdaUrlProvider, LogsLogGroupProvider, NeptuneProvider, NestedStackProvider, PipesPipeProvider, RDSDBProxyEndpointProvider, RDSDBProxyProvider, RDSDBProxyTargetGroupProvider, RDSProvider, Route53Provider, S3BucketPolicyProvider, S3BucketProvider, S3DirectoryBucketProvider, S3TablesProvider, S3VectorsProvider, SNSSubscriptionProvider, SNSTopicPolicyProvider, SNSTopicProvider, SQSQueuePolicyProvider, SQSQueueProvider, SSMParameterProvider, SchedulerScheduleProvider, SecretsManagerSecretProvider, ServiceDiscoveryProvider, StepFunctionsProvider, WAFv2WebACLProvider, WaitConditionHandleProvider };
|
|
44817
|
-
//# sourceMappingURL=provider-classes-
|
|
44868
|
+
//# sourceMappingURL=provider-classes-B74Nt7nS.js.map
|