@go-to-k/cdkd 0.280.13 → 0.280.14

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.
@@ -9286,7 +9286,7 @@ async function applyRoleArnIfSet(opts) {
9286
9286
  function readConfigString(container, key, fallback, containerPath, options) {
9287
9287
  if (container === void 0 || container === null) return fallback;
9288
9288
  if (!isPlainObject$1(container)) {
9289
- const detail = `(got ${describe(container)}) — check for an unresolved intrinsic or a mis-nested template value`;
9289
+ const detail = malformedShapeDetail(container);
9290
9290
  if (options?.onUnusable) {
9291
9291
  const named = fallback === "" ? "" : ` (${fallback})`;
9292
9292
  options.onUnusable(`${containerPath} must be an object ${detail}. Treating the block as empty, so ${containerPath}.${key} takes its default${named} here; the same value is REFUSED on a template-path create`);
@@ -9319,19 +9319,18 @@ function readConfigString(container, key, fallback, containerPath, options) {
9319
9319
  * finite number under `coerceNumber`), unless `onUnusable` is supplied.
9320
9320
  */
9321
9321
  function requireConfigString(value, fallback, path, options) {
9322
- if (value === void 0) return fallback;
9323
- if (fallback === "" && typeof value === "string") return value;
9324
- if (options?.coerceNumber === true && typeof value === "number" && Number.isFinite(value)) return String(value);
9325
- if (typeof value !== "string" || value.trim() === "") {
9326
- const detail = `(got ${describe(value)}) — check for an unresolved intrinsic or a mis-nested template value`;
9327
- const named = fallback === "" ? "" : ` (${fallback})`;
9328
- if (options?.onUnusable) {
9329
- options.onUnusable(`${path} must be a non-empty string ${detail}. Ignoring it and using the default${named} here; the same value is REFUSED on a template-path create`);
9330
- return fallback;
9331
- }
9332
- throw new Error(`${path} must be a non-empty string ${detail}. Omit the field entirely to use the default` + named);
9322
+ const refusal = configValueRefusal(value, fallback, path, options);
9323
+ if (refusal === void 0) {
9324
+ if (value === void 0) return fallback;
9325
+ if (typeof value === "number") return String(value);
9326
+ return value;
9333
9327
  }
9334
- return value;
9328
+ const named = fallback === "" ? "" : ` (${fallback})`;
9329
+ if (options?.onUnusable) {
9330
+ options.onUnusable(`${refusal}. Ignoring it and using the default${named} here; the same value is REFUSED on a template-path create`);
9331
+ return fallback;
9332
+ }
9333
+ throw new Error(`${refusal}. Omit the field entirely to use the default${named}`);
9335
9334
  }
9336
9335
  /**
9337
9336
  * The CREATE-path counterpart of {@link ConfigStringOptions.onUnusable}.
@@ -9356,7 +9355,7 @@ function replayWarn(logger, context) {
9356
9355
  }
9357
9356
  function requireConfigArray(value, path, options) {
9358
9357
  if (!Array.isArray(value)) {
9359
- const detail = `(got ${describe(value)}) — check for an unresolved intrinsic or a mis-nested template value`;
9358
+ const detail = malformedShapeDetail(value);
9360
9359
  if (options?.onUnusable) {
9361
9360
  options.onUnusable(`${path} must be an array ${detail}. Leaving this configuration unapplied here; the same value is REFUSED on a template-path create`);
9362
9361
  return;
@@ -9367,7 +9366,7 @@ function requireConfigArray(value, path, options) {
9367
9366
  }
9368
9367
  function requireConfigObject(value, path, options) {
9369
9368
  if (!isPlainObject$1(value)) {
9370
- const detail = `(got ${describe(value)}) — check for an unresolved intrinsic or a mis-nested template value`;
9369
+ const detail = malformedShapeDetail(value);
9371
9370
  if (options?.onUnusable) {
9372
9371
  options.onUnusable(`${path} must be an object ${detail}. Leaving this configuration unapplied here; the same value is REFUSED on a template-path create`);
9373
9372
  return;
@@ -9377,6 +9376,47 @@ function requireConfigObject(value, path, options) {
9377
9376
  return value;
9378
9377
  }
9379
9378
  /**
9379
+ * The refusal SENTENCE `readConfigString` / {@link requireConfigString} raise,
9380
+ * with no action clause attached — `undefined` when the read would succeed.
9381
+ *
9382
+ * This is the predicate {@link readConfigString} itself runs, exported so a
9383
+ * caller whose replay downgrade is a SKIP rather than the helper's
9384
+ * warn-and-DEFAULT can ask the question without taking the fallback (issue
9385
+ * #1595). Both halves are covered, in the same order and by the same tests:
9386
+ * the CONTAINER first, then the FIELD.
9387
+ *
9388
+ * Sharing the predicate is the point. A hand-written `typeof` twin would
9389
+ * disagree with the read it fronts on exactly the values that matter — a blank
9390
+ * string, an explicit `null`, a coerced number — which is the guard-mismatch
9391
+ * shape this module already exists to stop.
9392
+ *
9393
+ * @returns The refusal sentence (`<path> must be …`), or `undefined` when the
9394
+ * value is usable — including the ABSENT container / ABSENT key cases, which
9395
+ * legitimately take the fallback.
9396
+ */
9397
+ function configStringRefusal(container, key, fallback, containerPath, options) {
9398
+ if (container === void 0 || container === null) return void 0;
9399
+ if (!isPlainObject$1(container)) return `${containerPath} must be an object ${malformedShapeDetail(container)}`;
9400
+ return configValueRefusal(container[key], fallback, `${containerPath}.${key}`, options);
9401
+ }
9402
+ /** The FIELD half of {@link configStringRefusal}, shared with {@link requireConfigString}. */
9403
+ function configValueRefusal(value, fallback, path, options) {
9404
+ if (value === void 0) return void 0;
9405
+ if (fallback === "" && typeof value === "string") return void 0;
9406
+ if (options?.coerceNumber === true && typeof value === "number" && Number.isFinite(value)) return;
9407
+ if (typeof value !== "string" || value.trim() === "") return `${path} must be a non-empty string ${malformedShapeDetail(value)}`;
9408
+ }
9409
+ /**
9410
+ * The shared detail clause every refusal in this module ends with.
9411
+ *
9412
+ * One source rather than five: the sentence is identical at each guard, and a
9413
+ * copy that drifts changes the wording of a user-facing error for one shape
9414
+ * only, which is invisible in review.
9415
+ */
9416
+ function malformedShapeDetail(value) {
9417
+ return `(got ${describe(value)}) — check for an unresolved intrinsic or a mis-nested template value`;
9418
+ }
9419
+ /**
9380
9420
  * A plain object, i.e. something a CFn config block can legitimately be.
9381
9421
  * Arrays are excluded on purpose: an array where an object belongs is one of
9382
9422
  * the malformed shapes this module exists to catch, and `typeof [] === 'object'`
@@ -12756,7 +12796,7 @@ var CloudControlProvider = class {
12756
12796
  if (context?.finalSnapshotIdentifier !== void 0) throw new ProvisioningError(`${logicalId} (${resourceType}) requires a final snapshot (DeletionPolicy: Snapshot), but the Cloud Control API delete route has no final-snapshot parameter. Re-run with --skip-final-snapshot after snapshotting manually, or retain the resource.`, resourceType, logicalId, physicalId);
12757
12797
  if (context?.removeProtection === true && resourceType === "AWS::AutoScaling::AutoScalingGroup") {
12758
12798
  this.logger.debug(`Delegating protected AutoScalingGroup ${logicalId} delete to the SDK ASGProvider (Cloud Control cannot force-delete a protected ASG)`);
12759
- const { ASGProvider } = await import("./asg-provider-DJSCLI9C.js").then((n) => n.n);
12799
+ const { ASGProvider } = await import("./asg-provider-DIMKyE07.js").then((n) => n.n);
12760
12800
  await new ASGProvider().delete(logicalId, physicalId, resourceType, _properties, context);
12761
12801
  return;
12762
12802
  }
@@ -19245,7 +19285,7 @@ const FLUSH_INTERVAL_MS = 2e3;
19245
19285
  const FLUSH_EVENT_THRESHOLD = 50;
19246
19286
  /** Build-time cdkd version, with a dev fallback for non-built contexts. */
19247
19287
  function getCdkdVersion() {
19248
- return "0.280.13";
19288
+ return "0.280.14";
19249
19289
  }
19250
19290
  /**
19251
19291
  * Generate a time-sortable unique run id, e.g.
@@ -21356,5 +21396,5 @@ var DeployEngine = class {
21356
21396
  };
21357
21397
 
21358
21398
  //#endregion
21359
- export { applyRoleArnIfSet as $, clearBucketRegionCache as $t, red as A, AssetManifestLoader as At, isTerminationProtectionPropagationError as B, resolveStateBucketWithDefault as Bt, isStatefulRecreateTargetSync as C, SynthesisError as Cn, validateAssetBucketName as Ct, cyan as D, withErrorHandling as Dn, getDockerCmd as Dt, bold as E, normalizeAwsError as En, formatDockerLoginError as Et, ProviderRegistry as F, getLegacyStateBucketName as Ft, normalizeAwsTagsToCfn as G, CFN_TEMPLATE_BODY_LIMIT as Gt, cfnRefValueFromPhysicalId as H, resolveUseCdkBootstrapAssets as Ht, findActionableSilentDrops as I, resolveApp as It, readConfigString as J, findLargeInlineResources as Jt, resolveExplicitPhysicalId as K, CFN_TEMPLATE_URL_LIMIT as Kt, CloudControlProvider as L, resolveAutoAssetStorage as Lt, IAMRoleProvider as M, Synthesizer as Mt, collectInlinePolicyNamesManagedBySiblings as N, synthesisStatusMessage as Nt, gray as O, __exportAll as On, runDockerForeground as Ot, clearOnUpdateRemoval as P, getDefaultStateBucketName as Pt, requireConfigString as Q, processStackMessages as Qt, slowCcOperationTimeoutMs as R, resolveCaptureObservedState as Rt, MULTI_REGION_RECREATE_BLOCKED_TYPES as S, StateError as Sn, parseBootstrapMarker as St, formatResourceLine as T, isCdkdError as Tn, buildDockerImage as Tt, refStateLookupFromResource as U, stateBucketExistenceConfirmed as Ut, IntrinsicFunctionResolver as V, resolveStateBucketWithDefaultAndSource as Vt, WAFv2WebACLProvider as W, warnDeprecatedNoPrefixCliFlag as Wt, requireConfigArray as X, expectedOwnerParam as Xt, replayWarn as Y, uploadCfnTemplate as Yt, requireConfigObject as Z, AssemblyReader as Zt, createPreDeleteFinalSnapshot as _, ProvisioningError as _n, rewriteTemplateAssetReferences as _t, DeploymentEventsStore as a, AssetError as an, DagBuilder as at, unsupportedFinalSnapshotError as b, StackHasActiveImportsError as bn, ensureAssetStorage as bt, replayFailedOperations as c, DependencyError as cn, S3StateBackend as ct, IMPLICIT_DELETE_DEPENDENCIES as d, LocalMigrateError as dn, AssetPublisher as dt, resolveBucketRegion as en, DiffCalculator as et, computeImplicitDeleteEdges as f, LocalStartServiceError as fn, stringifyValue as ft, ccRoutedFinalSnapshotError as g, PartialFailureError as gn, loadPublishableAssetManifest as gt, buildFinalSnapshotIdentifier as h, NestedStackChildDirectDestroyError as hn, createAssetRedirectResolver as ht, DeploymentEventsReader as i, setAwsClients as in, isThrottlingError as it, yellow as j, getDockerImageBySourceHash as jt, green as k, runDockerStreaming as kt, replayRollback as l, DeployCancelledError as ln, rebuildClientForBucketRegion as lt, PRE_DELETE_SNAPSHOT_TYPES as m, MissingCdkCliError as mn, buildAssetRedirectMap as mt, DEFAULT_RESOURCE_WARN_AFTER_MS as n, getAwsClients as nn, withRetry as nt, planFailedOps as o, CdkdError as on, TemplateParser as ot, ATOMIC_FINAL_SNAPSHOT_TYPES as p, LockError as pn, WorkGraph as pt, assertRegionMatch as q, MIGRATE_TMP_PREFIX as qt, DeployEngine as r, resetAwsClients as rn, isRetryableTransientError as rt, planRollback as s, ConfigError as sn, LockManager as st, DEFAULT_RESOURCE_TIMEOUT_MS as t, AwsClients as tn, describeTypeWithThrottleRetry as tt, withResourceDeadline as u, LocalInvokeBuildError as un, shouldRetainResource as ut, isFinalSnapshotError as v, ResourceTimeoutError as vn, AssetModeResolver as vt, renderStatefulReason as w, formatError as wn, validateContainerRepoName as wt, extractDeploymentEventError as x, StackTerminationProtectionError as xn, getBootstrapMarkerKey as xt, refusesFinalSnapshot as y, ResourceUpdateNotSupportedError as yn, BOOTSTRAP_MARKER_PREFIX as yt, disableInstanceApiTermination as z, resolveSkipPrefix as zt };
21360
- //# sourceMappingURL=deploy-engine-CE-J9Vlu.js.map
21399
+ export { requireConfigString as $, processStackMessages as $t, red as A, runDockerStreaming as At, isTerminationProtectionPropagationError as B, resolveSkipPrefix as Bt, isStatefulRecreateTargetSync as C, StateError as Cn, parseBootstrapMarker as Ct, cyan as D, normalizeAwsError as Dn, formatDockerLoginError as Dt, bold as E, isCdkdError as En, buildDockerImage as Et, ProviderRegistry as F, getDefaultStateBucketName as Ft, normalizeAwsTagsToCfn as G, warnDeprecatedNoPrefixCliFlag as Gt, cfnRefValueFromPhysicalId as H, resolveStateBucketWithDefaultAndSource as Ht, findActionableSilentDrops as I, getLegacyStateBucketName as It, configStringRefusal as J, MIGRATE_TMP_PREFIX as Jt, resolveExplicitPhysicalId as K, CFN_TEMPLATE_BODY_LIMIT as Kt, CloudControlProvider as L, resolveApp as Lt, IAMRoleProvider as M, getDockerImageBySourceHash as Mt, collectInlinePolicyNamesManagedBySiblings as N, Synthesizer as Nt, gray as O, withErrorHandling as On, getDockerCmd as Ot, clearOnUpdateRemoval as P, synthesisStatusMessage as Pt, requireConfigObject as Q, AssemblyReader as Qt, slowCcOperationTimeoutMs as R, resolveAutoAssetStorage as Rt, MULTI_REGION_RECREATE_BLOCKED_TYPES as S, StackTerminationProtectionError as Sn, getBootstrapMarkerKey as St, formatResourceLine as T, formatError as Tn, validateContainerRepoName as Tt, refStateLookupFromResource as U, resolveUseCdkBootstrapAssets as Ut, IntrinsicFunctionResolver as V, resolveStateBucketWithDefault as Vt, WAFv2WebACLProvider as W, stateBucketExistenceConfirmed as Wt, replayWarn as X, uploadCfnTemplate as Xt, readConfigString as Y, findLargeInlineResources as Yt, requireConfigArray as Z, expectedOwnerParam as Zt, createPreDeleteFinalSnapshot as _, PartialFailureError as _n, loadPublishableAssetManifest as _t, DeploymentEventsStore as a, setAwsClients as an, isThrottlingError as at, unsupportedFinalSnapshotError as b, ResourceUpdateNotSupportedError as bn, BOOTSTRAP_MARKER_PREFIX as bt, replayFailedOperations as c, ConfigError as cn, LockManager as ct, IMPLICIT_DELETE_DEPENDENCIES as d, LocalInvokeBuildError as dn, shouldRetainResource as dt, clearBucketRegionCache as en, applyRoleArnIfSet as et, computeImplicitDeleteEdges as f, LocalMigrateError as fn, AssetPublisher as ft, ccRoutedFinalSnapshotError as g, NestedStackChildDirectDestroyError as gn, createAssetRedirectResolver as gt, buildFinalSnapshotIdentifier as h, MissingCdkCliError as hn, buildAssetRedirectMap as ht, DeploymentEventsReader as i, resetAwsClients as in, isRetryableTransientError as it, yellow as j, AssetManifestLoader as jt, green as k, __exportAll as kn, runDockerForeground as kt, replayRollback as l, DependencyError as ln, S3StateBackend as lt, PRE_DELETE_SNAPSHOT_TYPES as m, LockError as mn, WorkGraph as mt, DEFAULT_RESOURCE_WARN_AFTER_MS as n, AwsClients as nn, describeTypeWithThrottleRetry as nt, planFailedOps as o, AssetError as on, DagBuilder as ot, ATOMIC_FINAL_SNAPSHOT_TYPES as p, LocalStartServiceError as pn, stringifyValue as pt, assertRegionMatch as q, CFN_TEMPLATE_URL_LIMIT as qt, DeployEngine as r, getAwsClients as rn, withRetry as rt, planRollback as s, CdkdError as sn, TemplateParser as st, DEFAULT_RESOURCE_TIMEOUT_MS as t, resolveBucketRegion as tn, DiffCalculator as tt, withResourceDeadline as u, DeployCancelledError as un, rebuildClientForBucketRegion as ut, isFinalSnapshotError as v, ProvisioningError as vn, rewriteTemplateAssetReferences as vt, renderStatefulReason as w, SynthesisError as wn, validateAssetBucketName as wt, extractDeploymentEventError as x, StackHasActiveImportsError as xn, ensureAssetStorage as xt, refusesFinalSnapshot as y, ResourceTimeoutError as yn, AssetModeResolver as yt, disableInstanceApiTermination as z, resolveCaptureObservedState as zt };
21400
+ //# sourceMappingURL=deploy-engine-D4VaoTK7.js.map