@tailor-platform/sdk 1.70.0 → 1.70.1

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.
@@ -1,9 +1,9 @@
1
1
 
2
2
  import { t as db } from "./schema-C4fkpWV_.mjs";
3
- import { $ as CreateUserProfileConfigRequestSchema, A as UpdatePipelineServiceRequestSchema, At as PageDirection, B as UpdateExecutorExecutorRequestSchema, Ct as GetApplicationSchemaHealthResponse_ApplicationSchemaHealthStatus, D as CreatePipelineResolverRequestSchema, Dt as ConditionSchema, E as UpdateSecretManagerSecretRequestSchema, Et as Subgraph_ServiceType, F as IdPPermissionOperator, G as CreateAuthHookRequestSchema, H as ExecutorTargetType, I as IdPPermissionPermit, J as CreateAuthOAuth2ClientRequestSchema, K as CreateAuthIDPConfigRequestSchema, L as FunctionExecution_Status, M as CreateIdPServiceRequestSchema, N as UpdateIdPServiceRequestSchema, O as CreatePipelineServiceRequestSchema, Ot as Condition_Operator, P as IdPLang, Q as CreateTenantConfigRequestSchema, S as UpdateStaticWebsiteRequestSchema, St as CreateApplicationRequestSchema, T as CreateSecretManagerVaultRequestSchema, Tt as ApplicationSchemaUpdateAttemptStatus, U as ExecutorTriggerType, V as ExecutorJobStatus, W as CreateAuthConnectionRequestSchema, X as CreateAuthSCIMResourceRequestSchema, Y as CreateAuthSCIMConfigRequestSchema, Z as CreateAuthServiceRequestSchema, _ as TailorDBType_Permission_Operator, _t as AuthSCIMAttribute_Uniqueness, a as WorkspacePlatformUserRole, at as UpdateAuthSCIMResourceRequestSchema, b as AddCustomDomainRequestSchema, bt as TenantProviderConfig_TenantProviderType, c as UpdateWorkflowRequestSchema, ct as UpdateUserProfileConfigRequestSchema, d as CreateTailorDBServiceRequestSchema, dt as AuthIDPConfig_AuthType, et as UpdateAuthHookRequestSchema, f as CreateTailorDBTypeRequestSchema, ft as AuthInvokerSchema, g as TailorDBGQLPermission_Permit, gt as AuthSCIMAttribute_Type, h as TailorDBGQLPermission_Operator, ht as AuthSCIMAttribute_Mutability, it as UpdateAuthSCIMConfigRequestSchema, j as PipelineResolver_OperationType, k as UpdatePipelineResolverRequestSchema, kt as FilterSchema, l as WorkflowExecution_Status, lt as AuthConnection_Type, m as TailorDBGQLPermission_Action, mt as AuthOAuth2Client_GrantType, nt as UpdateAuthMachineUserRequestSchema, o as CreateWorkflowJobFunctionRequestSchema, ot as UpdateAuthServiceRequestSchema, p as UpdateTailorDBTypeRequestSchema, pt as AuthOAuth2Client_ClientType, q as CreateAuthMachineUserRequestSchema, rt as UpdateAuthOAuth2ClientRequestSchema, s as CreateWorkflowRequestSchema, st as UpdateTenantConfigRequestSchema, t as OperatorService, tt as UpdateAuthIDPConfigRequestSchema, u as WorkflowJobExecution_Status, ut as AuthHookPoint, v as TailorDBType_Permission_Permit, vt as AuthSCIMConfig_AuthorizationType, w as CreateSecretManagerSecretRequestSchema, wt as UpdateApplicationRequestSchema, x as CreateStaticWebsiteRequestSchema, xt as UserProfileProviderConfig_UserProfileProviderType, y as TailorDBType_PermitAction, z as CreateExecutorExecutorRequestSchema } from "./service_pb-DSNjrcbW.mjs";
3
+ import { $ as CreateUserProfileConfigRequestSchema, A as UpdatePipelineServiceRequestSchema, At as Condition_Operator, B as UpdateExecutorExecutorRequestSchema, Ct as UserProfileProviderConfig_UserProfileProviderType, D as CreatePipelineResolverRequestSchema, Dt as ApplicationSchemaUpdateAttemptStatus, E as UpdateSecretManagerSecretRequestSchema, Et as UpdateApplicationRequestSchema, F as IdPPermissionOperator, G as CreateAuthHookRequestSchema, H as ExecutorTargetType, I as IdPPermissionPermit, J as CreateAuthOAuth2ClientRequestSchema, K as CreateAuthIDPConfigRequestSchema, L as FunctionExecution_Status, M as CreateIdPServiceRequestSchema, Mt as PageDirection, N as UpdateIdPServiceRequestSchema, O as CreatePipelineServiceRequestSchema, Ot as Subgraph_ServiceType, P as IdPLang, Q as CreateTenantConfigRequestSchema, S as UpdateStaticWebsiteRequestSchema, St as TenantProviderConfig_TenantProviderType, T as CreateSecretManagerVaultRequestSchema, Tt as GetApplicationSchemaHealthResponse_ApplicationSchemaHealthStatus, U as ExecutorTriggerType, V as ExecutorJobStatus, W as CreateAuthConnectionRequestSchema, X as CreateAuthSCIMResourceRequestSchema, Y as CreateAuthSCIMConfigRequestSchema, Z as CreateAuthServiceRequestSchema, _ as TailorDBType_Permission_Operator, _t as AuthSCIMAttribute_Mutability, a as WorkspacePlatformUserRole, at as UpdateAuthSCIMConfigRequestSchema, b as AddCustomDomainRequestSchema, bt as AuthSCIMConfig_AuthorizationType, c as UpdateWorkflowRequestSchema, ct as UpdateTenantConfigRequestSchema, d as CreateTailorDBServiceRequestSchema, dt as AuthConnection_Type, et as UpdateAuthConnectionRequestSchema, f as CreateTailorDBTypeRequestSchema, ft as AuthHookPoint, g as TailorDBGQLPermission_Permit, gt as AuthOAuth2Client_GrantType, h as TailorDBGQLPermission_Operator, ht as AuthOAuth2Client_ClientType, it as UpdateAuthOAuth2ClientRequestSchema, j as PipelineResolver_OperationType, jt as FilterSchema, k as UpdatePipelineResolverRequestSchema, kt as ConditionSchema, l as WorkflowExecution_Status, lt as UpdateUserProfileConfigRequestSchema, m as TailorDBGQLPermission_Action, mt as AuthInvokerSchema, nt as UpdateAuthIDPConfigRequestSchema, o as CreateWorkflowJobFunctionRequestSchema, ot as UpdateAuthSCIMResourceRequestSchema, p as UpdateTailorDBTypeRequestSchema, pt as AuthIDPConfig_AuthType, q as CreateAuthMachineUserRequestSchema, rt as UpdateAuthMachineUserRequestSchema, s as CreateWorkflowRequestSchema, st as UpdateAuthServiceRequestSchema, t as OperatorService, tt as UpdateAuthHookRequestSchema, u as WorkflowJobExecution_Status, ut as AuthConnection_Status, v as TailorDBType_Permission_Permit, vt as AuthSCIMAttribute_Type, w as CreateSecretManagerSecretRequestSchema, wt as CreateApplicationRequestSchema, x as CreateStaticWebsiteRequestSchema, y as TailorDBType_PermitAction, yt as AuthSCIMAttribute_Uniqueness, z as CreateExecutorExecutorRequestSchema } from "./service_pb-BsBR6yW5.mjs";
4
4
  import { t as assertDefined } from "./assert-CKfwrmCV.mjs";
5
5
  import { a as parseBoolean, i as symbols, n as logger, r as styles, t as CIPromptError } from "./logger-DKF-JsAK.mjs";
6
- import { $ as initOperatorClient, A as loadAccessToken, G as fetchMachineUserToken, I as loadWorkspaceId, K as fetchPaged, L as platformConfigFromProfile, N as loadMachineUserName, P as loadPlatformClientConfig, R as readPlatformConfig, S as getDistDir, T as loadConfig, V as writePlatformConfig, W as fetchAll, X as getOAuth2ClientId, Y as getConsoleBaseUrl, Z as getPlatformBaseUrl, b as hasGenerationHooks, d as assertUniqueLocalTailorDBTypeNames, et as isDefaultPlatform, f as assertUniqueTailorDBTypeNamesWithExternal, h as platformBundleDefinePlugin, j as loadConfigPath, k as hasUserTokenEntry, l as buildExecutorArgsExpr, m as stringifyFunction, n as generatePluginFilesIfNeeded, nt as byName, p as TailorDBTypeSchema, r as loadApplication, s as HTTP_METHODS, t as defineApplication, tt as resolveStaticWebsiteUrls, u as buildResolverOperationHookExpr, w as hashFile, x as createBundleCache, y as getPluginGenerationDependencies } from "./application-Df5_I83n.mjs";
6
+ import { $ as initOperatorClient, A as loadAccessToken, G as fetchMachineUserToken, I as loadWorkspaceId, K as fetchPaged, L as platformConfigFromProfile, N as loadMachineUserName, P as loadPlatformClientConfig, R as readPlatformConfig, S as getDistDir, T as loadConfig, V as writePlatformConfig, W as fetchAll, X as getOAuth2ClientId, Y as getConsoleBaseUrl, Z as getPlatformBaseUrl, b as hasGenerationHooks, d as assertUniqueLocalTailorDBTypeNames, et as isDefaultPlatform, f as assertUniqueTailorDBTypeNamesWithExternal, h as platformBundleDefinePlugin, j as loadConfigPath, k as hasUserTokenEntry, l as buildExecutorArgsExpr, m as stringifyFunction, n as generatePluginFilesIfNeeded, nt as byName, p as TailorDBTypeSchema, r as loadApplication, s as HTTP_METHODS, t as defineApplication, tt as resolveStaticWebsiteUrls, u as buildResolverOperationHookExpr, w as hashFile, x as createBundleCache, y as getPluginGenerationDependencies } from "./application-DmjIKQ-a.mjs";
7
7
  import { o as loadFilesWithIgnores, t as createExecutorService } from "./service-B2Jd9CxS.mjs";
8
8
  import { t as multiline } from "./multiline-Cf9ODpr1.mjs";
9
9
  import { t as readPackageJson } from "./package-json-DcQApfPQ.mjs";
@@ -2360,21 +2360,28 @@ function buildConnectionRequest(workspaceId, name, config) {
2360
2360
  }
2361
2361
  };
2362
2362
  }
2363
- function hashConnectionConfig(config) {
2364
- return hashValue(JSON.stringify({
2365
- type: config.type,
2366
- providerUrl: config.providerUrl,
2367
- issuerUrl: config.issuerUrl,
2368
- clientId: config.clientId,
2369
- clientSecret: config.clientSecret,
2370
- authUrl: config.authUrl ?? "",
2371
- tokenUrl: config.tokenUrl ?? ""
2372
- }));
2373
- }
2374
- function hasNonSecretFieldChanged(existing, desired) {
2375
- if (existing.config.case !== "oauth2") return true;
2376
- const oauth2 = existing.config.value;
2377
- return oauth2.providerUrl !== desired.providerUrl || oauth2.issuerUrl !== desired.issuerUrl || oauth2.clientId !== desired.clientId || oauth2.authUrl !== (desired.authUrl ?? "") || oauth2.tokenUrl !== (desired.tokenUrl ?? "");
2363
+ function buildUpdateMask(existing, desired, secretChanged) {
2364
+ if (existing.config.case !== "oauth2") {
2365
+ const paths = [
2366
+ "type",
2367
+ "oauth2.provider_url",
2368
+ "oauth2.issuer_url",
2369
+ "oauth2.client_id",
2370
+ "oauth2.auth_url",
2371
+ "oauth2.token_url"
2372
+ ];
2373
+ if (desired.clientSecret) paths.push("oauth2.client_secret");
2374
+ return { paths };
2375
+ }
2376
+ const paths = [];
2377
+ const v = existing.config.value;
2378
+ if (v.providerUrl !== desired.providerUrl) paths.push("oauth2.provider_url");
2379
+ if (v.issuerUrl !== desired.issuerUrl) paths.push("oauth2.issuer_url");
2380
+ if (v.clientId !== desired.clientId) paths.push("oauth2.client_id");
2381
+ if (v.authUrl !== (desired.authUrl ?? "")) paths.push("oauth2.auth_url");
2382
+ if (v.tokenUrl !== (desired.tokenUrl ?? "")) paths.push("oauth2.token_url");
2383
+ if (secretChanged && desired.clientSecret) paths.push("oauth2.client_secret");
2384
+ return { paths };
2378
2385
  }
2379
2386
  /**
2380
2387
  * Plan auth connection changes based on current and desired state.
@@ -2432,15 +2439,14 @@ async function planAuthConnections(client, workspaceId, appName, appId, auths) {
2432
2439
  resourceType: "Auth connection",
2433
2440
  resourceName: name
2434
2441
  });
2435
- const currentHash = hashConnectionConfig(config);
2436
- const storedHash = state.connections?.[name];
2437
- if (hasNonSecretFieldChanged(existing.resource, config) || currentHash !== storedHash) changeSet.replaces.push({
2442
+ const secretChanged = hashValue(config.clientSecret) !== state.connections?.[name];
2443
+ const updateMask = buildUpdateMask(existing.resource, config, secretChanged);
2444
+ if (updateMask.paths.length > 0) changeSet.replaces.push({
2438
2445
  name,
2439
- deleteRequest: {
2440
- workspaceId,
2441
- connectionName: name
2446
+ updateRequest: {
2447
+ ...buildConnectionRequest(workspaceId, name, config),
2448
+ updateMask
2442
2449
  },
2443
- createRequest: buildConnectionRequest(workspaceId, name, config),
2444
2450
  metaRequest
2445
2451
  });
2446
2452
  else if (!existing.label) changeSet.updates.push({
@@ -2477,21 +2483,6 @@ async function planAuthConnections(client, workspaceId, appName, appId, auths) {
2477
2483
  resourceOwners
2478
2484
  };
2479
2485
  }
2480
- function extractOAuth2Config(connection) {
2481
- if (!connection) return void 0;
2482
- const config = connection.config;
2483
- if (!config || config.case !== "oauth2") return void 0;
2484
- const v = config.value;
2485
- return {
2486
- type: "oauth2",
2487
- providerUrl: v.providerUrl ?? "",
2488
- issuerUrl: v.issuerUrl ?? "",
2489
- clientId: v.clientId ?? "",
2490
- clientSecret: v.clientSecret ?? "",
2491
- authUrl: v.authUrl || void 0,
2492
- tokenUrl: v.tokenUrl || void 0
2493
- };
2494
- }
2495
2486
  /**
2496
2487
  * Apply auth connection changes for the given phase.
2497
2488
  * @param client - Operator client instance
@@ -2504,10 +2495,10 @@ async function applyAuthConnections(client, result, phase) {
2504
2495
  await Promise.all(changeSet.creates.map(async (create) => {
2505
2496
  await client.createAuthConnection(create.request);
2506
2497
  await client.setMetadata(create.metaRequest);
2498
+ logger.info(`Connection "${create.name}" was created. Authorize it with:\n tailor-sdk authconnection authorize --name ${create.name}\nOr via the Console: tailor-sdk authconnection open`);
2507
2499
  }));
2508
2500
  for (const replace of changeSet.replaces) {
2509
- await client.deleteAuthConnection(replace.deleteRequest);
2510
- await client.createAuthConnection(replace.createRequest);
2501
+ if ((await client.updateAuthConnection(replace.updateRequest)).connection?.status === AuthConnection_Status.UNAUTHORIZED) logger.warn(`Connection "${replace.name}" requires re-authorization. Authorize with:\n tailor-sdk authconnection authorize --name ${replace.name}\nOr via the Console: tailor-sdk authconnection open`);
2511
2502
  await client.setMetadata(replace.metaRequest);
2512
2503
  }
2513
2504
  await Promise.all(changeSet.updates.map(async (update) => {
@@ -2516,12 +2507,12 @@ async function applyAuthConnections(client, result, phase) {
2516
2507
  const state = loadSecretsState();
2517
2508
  if (!state.connections) state.connections = {};
2518
2509
  for (const create of changeSet.creates) {
2519
- const oauth2 = extractOAuth2Config(create.request.connection);
2520
- if (oauth2) state.connections[create.name] = hashConnectionConfig(oauth2);
2510
+ const conn = create.request.connection;
2511
+ if (conn?.config?.case === "oauth2") state.connections[create.name] = hashValue(conn.config.value.clientSecret ?? "");
2521
2512
  }
2522
2513
  for (const replace of changeSet.replaces) {
2523
- const oauth2 = extractOAuth2Config(replace.createRequest.connection);
2524
- if (oauth2) state.connections[replace.name] = hashConnectionConfig(oauth2);
2514
+ const conn = replace.updateRequest.connection;
2515
+ if (conn?.config?.case === "oauth2" && replace.updateRequest.updateMask?.paths?.includes("oauth2.client_secret")) state.connections[replace.name] = hashValue(conn.config.value.clientSecret ?? "");
2525
2516
  }
2526
2517
  saveSecretsState(state);
2527
2518
  } else {
@@ -6563,6 +6554,23 @@ function parseMigrationNumberArg(numberStr) {
6563
6554
  * All object schemas use `z.looseObject` so that unknown keys written
6564
6555
  * by newer CLI versions survive a load → save round-trip.
6565
6556
  */
6557
+ function snapshotRecordSchema(valueSchema) {
6558
+ return z.custom((value) => typeof value === "object" && value !== null && !Array.isArray(value), { message: "Expected record" }).transform((value, ctx) => {
6559
+ const record = Object.create(null);
6560
+ for (const key of Object.keys(value)) {
6561
+ const result = valueSchema.safeParse(value[key]);
6562
+ if (!result.success) {
6563
+ for (const issue of result.error.issues) ctx.addIssue({
6564
+ ...issue,
6565
+ path: [key, ...issue.path]
6566
+ });
6567
+ continue;
6568
+ }
6569
+ record[key] = result.data;
6570
+ }
6571
+ return record;
6572
+ });
6573
+ }
6566
6574
  const snapshotHookSchema = z.looseObject({ expr: z.string() });
6567
6575
  const snapshotValidationSchema = z.looseObject({
6568
6576
  script: z.looseObject({ expr: z.string() }).optional(),
@@ -6596,7 +6604,7 @@ const snapshotFieldConfigSchema = z.looseObject({
6596
6604
  validate: z.array(snapshotValidationSchema).optional(),
6597
6605
  serial: snapshotSerialSchema.optional(),
6598
6606
  scale: z.number().optional(),
6599
- fields: z.lazy(() => z.record(z.string(), snapshotFieldConfigSchema)).optional()
6607
+ fields: z.lazy(() => snapshotRecordSchema(snapshotFieldConfigSchema)).optional()
6600
6608
  });
6601
6609
  const snapshotIndexConfigSchema = z.looseObject({
6602
6610
  fields: z.array(z.string()),
@@ -6667,7 +6675,7 @@ const tailorDBSnapshotTypeSchema = z.looseObject({
6667
6675
  name: z.string(),
6668
6676
  pluralForm: z.string().optional(),
6669
6677
  description: z.string().optional(),
6670
- fields: z.record(z.string(), snapshotFieldConfigSchema),
6678
+ fields: snapshotRecordSchema(snapshotFieldConfigSchema),
6671
6679
  settings: z.looseObject({
6672
6680
  aggregation: z.boolean().optional(),
6673
6681
  bulkUpsert: z.boolean().optional(),
@@ -6679,10 +6687,10 @@ const tailorDBSnapshotTypeSchema = z.looseObject({
6679
6687
  }).optional(),
6680
6688
  publishEvents: z.boolean().optional()
6681
6689
  }).optional(),
6682
- indexes: z.record(z.string(), snapshotIndexConfigSchema).optional(),
6683
- files: z.record(z.string(), z.string()).optional(),
6684
- forwardRelationships: z.record(z.string(), snapshotRelationshipSchema).optional(),
6685
- backwardRelationships: z.record(z.string(), snapshotRelationshipSchema).optional(),
6690
+ indexes: snapshotRecordSchema(snapshotIndexConfigSchema).optional(),
6691
+ files: snapshotRecordSchema(z.string()).optional(),
6692
+ forwardRelationships: snapshotRecordSchema(snapshotRelationshipSchema).optional(),
6693
+ backwardRelationships: snapshotRecordSchema(snapshotRelationshipSchema).optional(),
6686
6694
  permissions: z.looseObject({
6687
6695
  record: snapshotRecordPermissionSchema.optional(),
6688
6696
  gql: snapshotGqlPermissionSchema.optional()
@@ -6692,11 +6700,11 @@ const schemaSnapshotSchema = z.looseObject({
6692
6700
  version: z.number(),
6693
6701
  namespace: z.string(),
6694
6702
  createdAt: z.string(),
6695
- types: z.record(z.string(), tailorDBSnapshotTypeSchema)
6703
+ types: snapshotRecordSchema(tailorDBSnapshotTypeSchema)
6696
6704
  });
6697
6705
  const typeSettingsPatchSchema = z.looseObject({
6698
- indexes: z.record(z.string(), snapshotIndexConfigSchema).optional(),
6699
- files: z.record(z.string(), z.string()).optional()
6706
+ indexes: snapshotRecordSchema(snapshotIndexConfigSchema).optional(),
6707
+ files: snapshotRecordSchema(z.string()).optional()
6700
6708
  });
6701
6709
  const snapshotPermissionStateSchema = z.looseObject({
6702
6710
  recordPermission: snapshotRecordPermissionSchema.optional(),
@@ -6902,16 +6910,26 @@ const MIGRATION_NUMBER_PATTERN = /^\d{4}$/;
6902
6910
  * Must stay in sync with the platform's default decimal scale.
6903
6911
  */
6904
6912
  const DEFAULT_DECIMAL_SCALE = 6;
6913
+ function createSnapshotRecord() {
6914
+ return Object.create(null);
6915
+ }
6916
+ function copySnapshotRecord(record) {
6917
+ const copy = createSnapshotRecord();
6918
+ for (const [key, value] of Object.entries(record ?? {})) copy[key] = value;
6919
+ return copy;
6920
+ }
6905
6921
  /**
6906
6922
  * Normalize a snapshot field in place so the snapshot becomes the canonical
6907
6923
  * form for comparison. Currently fills in the platform default decimal scale
6908
6924
  * when omitted, which avoids false drift between local schemas (where scale
6909
6925
  * may be omitted) and the platform (which always materializes a scale).
6910
6926
  * @param {SnapshotFieldConfig} field - Field configuration to normalize
6927
+ * @returns The same field object after normalization
6911
6928
  */
6912
6929
  function normalizeSnapshotField(field) {
6913
6930
  if (field.type === "decimal" && field.scale === void 0) field.scale = 6;
6914
6931
  if (field.fields) for (const nested of Object.values(field.fields)) normalizeSnapshotField(nested);
6932
+ return field;
6915
6933
  }
6916
6934
  /**
6917
6935
  * Normalize a snapshot type in place to the canonical comparison shape.
@@ -6922,10 +6940,21 @@ function normalizeSnapshotField(field) {
6922
6940
  *
6923
6941
  * Idempotent — safe to call multiple times on the same input.
6924
6942
  * @param {TailorDBSnapshotType} type - Snapshot type to normalize
6943
+ * @returns The same snapshot type object after normalization
6925
6944
  */
6926
6945
  function normalizeSnapshotType(type) {
6927
6946
  if (!type.pluralForm) type.pluralForm = inflection.pluralize(type.name);
6928
6947
  for (const field of Object.values(type.fields)) normalizeSnapshotField(field);
6948
+ return type;
6949
+ }
6950
+ /**
6951
+ * Normalize a schema snapshot in place to the canonical comparison shape.
6952
+ * @param {SchemaSnapshot} snapshot - Schema snapshot to normalize
6953
+ * @returns The same schema snapshot object branded as normalized
6954
+ */
6955
+ function normalizeSchemaSnapshot(snapshot) {
6956
+ for (const type of Object.values(snapshot.types)) normalizeSnapshotType(type);
6957
+ return snapshot;
6929
6958
  }
6930
6959
  /**
6931
6960
  * Validate that a migration number follows the expected format (4-digit number)
@@ -7063,7 +7092,7 @@ function createSnapshotFieldConfigFromOperatorConfig(fieldConfig) {
7063
7092
  * @returns {TailorDBSnapshotType} Snapshot type configuration
7064
7093
  */
7065
7094
  function createSnapshotType(type) {
7066
- const fields = {};
7095
+ const fields = createSnapshotRecord();
7067
7096
  for (const [fieldName, field] of Object.entries(type.fields)) fields[fieldName] = createSnapshotFieldConfig(field);
7068
7097
  const snapshotType = {
7069
7098
  name: type.name,
@@ -7127,7 +7156,7 @@ function createSnapshotType(type) {
7127
7156
  ...policy.description && { description: policy.description }
7128
7157
  }));
7129
7158
  }
7130
- return snapshotType;
7159
+ return normalizeSnapshotType(snapshotType);
7131
7160
  }
7132
7161
  /**
7133
7162
  * Convert an action permission to snapshot format
@@ -7145,22 +7174,22 @@ function convertActionPermission(permission) {
7145
7174
  * Create a schema snapshot from local type definitions
7146
7175
  * @param {Record<string, TailorDBType>} types - Local type definitions
7147
7176
  * @param {string} namespace - Namespace for the snapshot
7148
- * @returns {SchemaSnapshot} Schema snapshot
7177
+ * @returns {NormalizedSchemaSnapshot} Normalized schema snapshot
7149
7178
  */
7150
7179
  function createSnapshotFromLocalTypes(types, namespace) {
7151
- const snapshotTypes = {};
7180
+ const snapshotTypes = createSnapshotRecord();
7152
7181
  for (const [typeName, type] of Object.entries(types)) snapshotTypes[typeName] = createSnapshotType(type);
7153
- return {
7182
+ return normalizeSchemaSnapshot({
7154
7183
  version: 1,
7155
7184
  namespace,
7156
7185
  createdAt: (/* @__PURE__ */ new Date()).toISOString(),
7157
7186
  types: snapshotTypes
7158
- };
7187
+ });
7159
7188
  }
7160
7189
  /**
7161
7190
  * Load a schema snapshot from a file
7162
7191
  * @param {string} filePath - Path to the snapshot file
7163
- * @returns {SchemaSnapshot} Loaded schema snapshot
7192
+ * @returns {NormalizedSchemaSnapshot} Loaded normalized schema snapshot
7164
7193
  */
7165
7194
  function loadSnapshot(filePath) {
7166
7195
  const content = fs$1.readFileSync(filePath, "utf-8");
@@ -7173,8 +7202,7 @@ function loadSnapshot(filePath) {
7173
7202
  const result = schemaSnapshotSchema.safeParse(raw);
7174
7203
  if (!result.success) throw new Error(`Invalid schema snapshot at ${filePath}: ${z.prettifyError(result.error)}`, { cause: result.error });
7175
7204
  const snapshot = result.data;
7176
- for (const type of Object.values(snapshot.types)) normalizeSnapshotType(type);
7177
- return snapshot;
7205
+ return normalizeSchemaSnapshot(snapshot);
7178
7206
  }
7179
7207
  /**
7180
7208
  * Load a migration diff from a file
@@ -7243,10 +7271,10 @@ function getNextMigrationNumber(migrationsDir) {
7243
7271
  * Apply a diff to a snapshot to get the resulting snapshot
7244
7272
  * @param {SchemaSnapshot} snapshot - Base snapshot to apply diff to
7245
7273
  * @param {MigrationDiff} diff - Diff to apply
7246
- * @returns {SchemaSnapshot} Resulting snapshot after applying diff
7274
+ * @returns {NormalizedSchemaSnapshot} Normalized snapshot after applying diff
7247
7275
  */
7248
7276
  function applyDiffToSnapshot(snapshot, diff) {
7249
- const types = { ...snapshot.types };
7277
+ const types = copySnapshotRecord(snapshot.types);
7250
7278
  for (const change of diff.changes) switch (change.kind) {
7251
7279
  case "type_added":
7252
7280
  types[change.typeName] = change.after;
@@ -7269,19 +7297,21 @@ function applyDiffToSnapshot(snapshot, diff) {
7269
7297
  case "field_added":
7270
7298
  case "field_modified": {
7271
7299
  const existing = types[change.typeName];
7272
- if (existing) types[change.typeName] = {
7273
- ...existing,
7274
- fields: {
7275
- ...existing.fields,
7276
- [change.fieldName]: change.after
7277
- }
7278
- };
7300
+ if (existing) {
7301
+ const fields = copySnapshotRecord(existing.fields);
7302
+ fields[change.fieldName] = change.after;
7303
+ types[change.typeName] = {
7304
+ ...existing,
7305
+ fields
7306
+ };
7307
+ }
7279
7308
  break;
7280
7309
  }
7281
7310
  case "field_removed": {
7282
7311
  const existing = types[change.typeName];
7283
7312
  if (existing) {
7284
- const { [change.fieldName]: _, ...remainingFields } = existing.fields;
7313
+ const remainingFields = copySnapshotRecord(existing.fields);
7314
+ delete remainingFields[change.fieldName];
7285
7315
  types[change.typeName] = {
7286
7316
  ...existing,
7287
7317
  fields: remainingFields
@@ -7292,19 +7322,21 @@ function applyDiffToSnapshot(snapshot, diff) {
7292
7322
  case "index_added":
7293
7323
  case "index_modified": {
7294
7324
  const existing = types[change.typeName];
7295
- if (existing) types[change.typeName] = {
7296
- ...existing,
7297
- indexes: {
7298
- ...existing.indexes,
7299
- [change.indexName]: change.after
7300
- }
7301
- };
7325
+ if (existing) {
7326
+ const indexes = copySnapshotRecord(existing.indexes);
7327
+ indexes[change.indexName] = change.after;
7328
+ types[change.typeName] = {
7329
+ ...existing,
7330
+ indexes
7331
+ };
7332
+ }
7302
7333
  break;
7303
7334
  }
7304
7335
  case "index_removed": {
7305
7336
  const existing = types[change.typeName];
7306
7337
  if (existing && existing.indexes) {
7307
- const { [change.indexName]: _, ...remainingIndexes } = existing.indexes;
7338
+ const remainingIndexes = copySnapshotRecord(existing.indexes);
7339
+ delete remainingIndexes[change.indexName];
7308
7340
  types[change.typeName] = {
7309
7341
  ...existing,
7310
7342
  indexes: Object.keys(remainingIndexes).length > 0 ? remainingIndexes : void 0
@@ -7315,19 +7347,21 @@ function applyDiffToSnapshot(snapshot, diff) {
7315
7347
  case "file_added":
7316
7348
  case "file_modified": {
7317
7349
  const existing = types[change.typeName];
7318
- if (existing) types[change.typeName] = {
7319
- ...existing,
7320
- files: {
7321
- ...existing.files,
7322
- [change.fieldName]: change.after
7323
- }
7324
- };
7350
+ if (existing) {
7351
+ const files = copySnapshotRecord(existing.files);
7352
+ files[change.fieldName] = change.after;
7353
+ types[change.typeName] = {
7354
+ ...existing,
7355
+ files
7356
+ };
7357
+ }
7325
7358
  break;
7326
7359
  }
7327
7360
  case "file_removed": {
7328
7361
  const existing = types[change.typeName];
7329
7362
  if (existing && existing.files) {
7330
- const { [change.fieldName]: _, ...remainingFiles } = existing.files;
7363
+ const remainingFiles = copySnapshotRecord(existing.files);
7364
+ delete remainingFiles[change.fieldName];
7331
7365
  types[change.typeName] = {
7332
7366
  ...existing,
7333
7367
  files: Object.keys(remainingFiles).length > 0 ? remainingFiles : void 0
@@ -7340,20 +7374,21 @@ function applyDiffToSnapshot(snapshot, diff) {
7340
7374
  const existing = types[change.typeName];
7341
7375
  if (existing) {
7342
7376
  const rel = change.after;
7343
- if ((change.relationshipType ?? (existing.forwardRelationships?.[change.relationshipName] ? "forward" : existing.backwardRelationships?.[change.relationshipName] ? "backward" : "forward")) === "forward") types[change.typeName] = {
7344
- ...existing,
7345
- forwardRelationships: {
7346
- ...existing.forwardRelationships,
7347
- [change.relationshipName]: rel
7348
- }
7349
- };
7350
- else types[change.typeName] = {
7351
- ...existing,
7352
- backwardRelationships: {
7353
- ...existing.backwardRelationships,
7354
- [change.relationshipName]: rel
7355
- }
7356
- };
7377
+ if ((change.relationshipType ?? (existing.forwardRelationships?.[change.relationshipName] ? "forward" : existing.backwardRelationships?.[change.relationshipName] ? "backward" : "forward")) === "forward") {
7378
+ const forwardRelationships = copySnapshotRecord(existing.forwardRelationships);
7379
+ forwardRelationships[change.relationshipName] = rel;
7380
+ types[change.typeName] = {
7381
+ ...existing,
7382
+ forwardRelationships
7383
+ };
7384
+ } else {
7385
+ const backwardRelationships = copySnapshotRecord(existing.backwardRelationships);
7386
+ backwardRelationships[change.relationshipName] = rel;
7387
+ types[change.typeName] = {
7388
+ ...existing,
7389
+ backwardRelationships
7390
+ };
7391
+ }
7357
7392
  }
7358
7393
  break;
7359
7394
  }
@@ -7362,13 +7397,15 @@ function applyDiffToSnapshot(snapshot, diff) {
7362
7397
  if (type) {
7363
7398
  const targetType = change.relationshipType ?? (type.forwardRelationships?.[change.relationshipName] ? "forward" : type.backwardRelationships?.[change.relationshipName] ? "backward" : null);
7364
7399
  if (targetType === "forward" && type.forwardRelationships?.[change.relationshipName]) {
7365
- const { [change.relationshipName]: _, ...remaining } = type.forwardRelationships;
7400
+ const remaining = copySnapshotRecord(type.forwardRelationships);
7401
+ delete remaining[change.relationshipName];
7366
7402
  types[change.typeName] = {
7367
7403
  ...type,
7368
7404
  forwardRelationships: Object.keys(remaining).length > 0 ? remaining : void 0
7369
7405
  };
7370
7406
  } else if (targetType === "backward" && type.backwardRelationships?.[change.relationshipName]) {
7371
- const { [change.relationshipName]: _, ...remaining } = type.backwardRelationships;
7407
+ const remaining = copySnapshotRecord(type.backwardRelationships);
7408
+ delete remaining[change.relationshipName];
7372
7409
  types[change.typeName] = {
7373
7410
  ...type,
7374
7411
  backwardRelationships: Object.keys(remaining).length > 0 ? remaining : void 0
@@ -7392,18 +7429,18 @@ function applyDiffToSnapshot(snapshot, diff) {
7392
7429
  break;
7393
7430
  }
7394
7431
  }
7395
- return {
7432
+ return normalizeSchemaSnapshot({
7396
7433
  ...snapshot,
7397
7434
  types,
7398
7435
  createdAt: diff.createdAt
7399
- };
7436
+ });
7400
7437
  }
7401
7438
  /**
7402
7439
  * Reconstruct the latest schema snapshot from all migration files
7403
7440
  * Returns null if no migrations exist
7404
7441
  * @param {string} migrationsDir - Migrations directory path
7405
7442
  * @param {number} [maxVersion] - Optional maximum migration version to apply
7406
- * @returns {SchemaSnapshot | null} Reconstructed snapshot or null if no migrations exist
7443
+ * @returns {NormalizedSchemaSnapshot | null} Reconstructed normalized snapshot or null if no migrations exist
7407
7444
  */
7408
7445
  function reconstructSnapshotFromMigrations(migrationsDir, maxVersion) {
7409
7446
  const files = getMigrationFiles(migrationsDir);
@@ -7766,8 +7803,9 @@ function comparePermissions(ctx, typeName, oldRecordPerm, newRecordPerm, oldGqlP
7766
7803
  * @returns {MigrationDiff} Migration diff between snapshots
7767
7804
  */
7768
7805
  function compareSnapshots(previous, current) {
7769
- for (const type of Object.values(previous.types)) normalizeSnapshotType(type);
7770
- for (const type of Object.values(current.types)) normalizeSnapshotType(type);
7806
+ return compareNormalizedSnapshots(normalizeSchemaSnapshot(previous), normalizeSchemaSnapshot(current));
7807
+ }
7808
+ function compareNormalizedSnapshots(previous, current) {
7771
7809
  const ctx = {
7772
7810
  changes: [],
7773
7811
  breakingChanges: [],
@@ -7902,7 +7940,7 @@ function assertValidMigrationFiles(migrationsDir, namespace) {
7902
7940
  * @returns {Record<string, SnapshotFieldConfig>} Converted field configs
7903
7941
  */
7904
7942
  function convertRemoteFieldsToSnapshot(remoteType) {
7905
- const fields = {};
7943
+ const fields = createSnapshotRecord();
7906
7944
  const remoteFields = remoteType.schema?.fields ?? {};
7907
7945
  for (const [fieldName, remoteField] of Object.entries(remoteFields)) {
7908
7946
  const config = {
@@ -7938,11 +7976,35 @@ function convertRemoteFieldsToSnapshot(remoteType) {
7938
7976
  ...remoteField.serial.format && { format: remoteField.serial.format }
7939
7977
  };
7940
7978
  if (remoteField.scale !== void 0) config.scale = remoteField.scale;
7941
- normalizeSnapshotField(config);
7942
7979
  fields[fieldName] = config;
7943
7980
  }
7944
7981
  return fields;
7945
7982
  }
7983
+ function convertRemoteTypeToSnapshot(remoteType) {
7984
+ const snapshotType = {
7985
+ name: remoteType.name,
7986
+ pluralForm: remoteType.schema?.settings?.pluralForm || inflection.pluralize(remoteType.name),
7987
+ fields: convertRemoteFieldsToSnapshot(remoteType)
7988
+ };
7989
+ if (remoteType.schema?.description) snapshotType.description = remoteType.schema.description;
7990
+ return snapshotType;
7991
+ }
7992
+ /**
7993
+ * Convert remote TailorDB types into the normalized snapshot shape used by drift checks.
7994
+ * @param {ProtoTailorDBType[]} remoteTypes - Remote TailorDB types from the API
7995
+ * @param {string} namespace - Namespace for the reconstructed snapshot
7996
+ * @returns {NormalizedSchemaSnapshot} Normalized snapshot-shaped remote state
7997
+ */
7998
+ function createSnapshotFromRemoteTypes(remoteTypes, namespace) {
7999
+ const types = createSnapshotRecord();
8000
+ for (const remoteType of remoteTypes) types[remoteType.name] = convertRemoteTypeToSnapshot(remoteType);
8001
+ return normalizeSchemaSnapshot({
8002
+ version: 1,
8003
+ namespace,
8004
+ createdAt: (/* @__PURE__ */ new Date()).toISOString(),
8005
+ types
8006
+ });
8007
+ }
7946
8008
  /**
7947
8009
  * Compare a single field between remote and snapshot
7948
8010
  * @param {string} typeName - Name of the type
@@ -8003,12 +8065,13 @@ const SYSTEM_FIELDS = /* @__PURE__ */ new Set(["id"]);
8003
8065
  * @returns {SchemaDrift[]} List of drifts detected
8004
8066
  */
8005
8067
  function compareRemoteWithSnapshot(remoteTypes, snapshot) {
8006
- for (const type of Object.values(snapshot.types)) normalizeSnapshotType(type);
8068
+ return compareNormalizedRemoteWithSnapshot(createSnapshotFromRemoteTypes(remoteTypes, snapshot.namespace), normalizeSchemaSnapshot(snapshot));
8069
+ }
8070
+ function compareNormalizedRemoteWithSnapshot(remoteSnapshot, snapshot) {
8007
8071
  const drifts = [];
8008
- const remoteTypeMap = /* @__PURE__ */ new Map();
8009
- for (const remoteType of remoteTypes) remoteTypeMap.set(remoteType.name, remoteType);
8072
+ const remoteTypeMap = new Map(Object.entries(remoteSnapshot.types));
8010
8073
  const snapshotTypeNames = new Set(Object.keys(snapshot.types));
8011
- const remoteTypeNames = new Set(remoteTypeMap.keys());
8074
+ const remoteTypeNames = new Set(Object.keys(remoteSnapshot.types));
8012
8075
  for (const typeName of snapshotTypeNames) if (!remoteTypeNames.has(typeName)) drifts.push({
8013
8076
  typeName,
8014
8077
  kind: "type_missing_remote",
@@ -8023,7 +8086,7 @@ function compareRemoteWithSnapshot(remoteTypes, snapshot) {
8023
8086
  if (!remoteTypeNames.has(typeName)) continue;
8024
8087
  const remoteType = assertDefined(remoteTypeMap.get(typeName), `type "${typeName}" missing from remoteTypeMap`);
8025
8088
  const snapshotType = assertDefined(snapshot.types[typeName], `type "${typeName}" missing from snapshot`);
8026
- const remoteFields = convertRemoteFieldsToSnapshot(remoteType);
8089
+ const remoteFields = remoteType.fields;
8027
8090
  const snapshotFields = snapshotType.fields;
8028
8091
  const remoteFieldNames = new Set(Object.keys(remoteFields).filter((f) => !SYSTEM_FIELDS.has(f)));
8029
8092
  const snapshotFieldNames = new Set(Object.keys(snapshotFields).filter((f) => !SYSTEM_FIELDS.has(f)));
@@ -10264,11 +10327,11 @@ async function registerJobFunctions(client, changeSet, appName, appId, unchanged
10264
10327
  const allUsedJobNames = /* @__PURE__ */ new Set();
10265
10328
  unchangedWorkflowJobNames.forEach((jobName) => allUsedJobNames.add(jobName));
10266
10329
  for (const item of [...changeSet.creates, ...changeSet.updates]) for (const jobName of item.usedJobNames) allUsedJobNames.add(jobName);
10267
- const existingJobFunctions = await fetchAll(async (pageToken, maxPageSize) => {
10330
+ const existingJobFunctions = await fetchAll(async (pageToken, _maxPageSize) => {
10268
10331
  const response = await client.listWorkflowJobFunctions({
10269
10332
  workspaceId,
10270
10333
  pageToken,
10271
- pageSize: maxPageSize
10334
+ pageSize: 100
10272
10335
  });
10273
10336
  return [response.jobFunctions.map((j) => j.name), response.nextPageToken];
10274
10337
  });
@@ -10449,11 +10512,11 @@ async function planWorkflow(client, workspaceId, appName, appId, workflows, main
10449
10512
  }
10450
10513
  async function planWorkflowJobFunctionDeletes(params) {
10451
10514
  const { client, workspaceId, appName, appId, retainedWorkflowJobNames } = params;
10452
- const existingJobFunctions = await fetchAll(async (pageToken, maxPageSize) => {
10515
+ const existingJobFunctions = await fetchAll(async (pageToken, _maxPageSize) => {
10453
10516
  const response = await client.listWorkflowJobFunctions({
10454
10517
  workspaceId,
10455
10518
  pageToken,
10456
- pageSize: maxPageSize
10519
+ pageSize: 100
10457
10520
  });
10458
10521
  return [response.jobFunctions.map((jobFunction) => jobFunction.name), response.nextPageToken];
10459
10522
  });
@@ -10609,6 +10672,17 @@ async function validatePlan(input) {
10609
10672
  violations
10610
10673
  });
10611
10674
  }
10675
+ function inPlaceReplaces(schema, kind, items) {
10676
+ validateItems({
10677
+ validator,
10678
+ schema,
10679
+ kind,
10680
+ action: "replace",
10681
+ items,
10682
+ requestKey: "updateRequest",
10683
+ violations
10684
+ });
10685
+ }
10612
10686
  creates(CreateTailorDBServiceRequestSchema, "TailorDB service", tailorDB.changeSet.service.creates);
10613
10687
  creates(CreateTailorDBTypeRequestSchema, "TailorDB type", tailorDB.changeSet.type.creates);
10614
10688
  updates(UpdateTailorDBTypeRequestSchema, "TailorDB type", tailorDB.changeSet.type.updates);
@@ -10732,7 +10806,7 @@ async function validatePlan(input) {
10732
10806
  }
10733
10807
  })));
10734
10808
  creates(CreateAuthConnectionRequestSchema, "Auth connection", auth.changeSet.connection.creates);
10735
- replaces(CreateAuthConnectionRequestSchema, "Auth connection", auth.changeSet.connection.replaces);
10809
+ inPlaceReplaces(UpdateAuthConnectionRequestSchema, "Auth connection", auth.changeSet.connection.replaces);
10736
10810
  if (violations.length === 0) return;
10737
10811
  const resourceNames = new Set(violations.map((v) => `${v.kind}:${v.name}`));
10738
10812
  logger.error(`Pre-flight validation found ${violations.length} violation(s) across ${resourceNames.size} resource(s):`);
@@ -16122,7 +16196,7 @@ async function generate(options) {
16122
16196
  if (options.init) await handleInitOption(namespacesWithMigrations, options.yes);
16123
16197
  let pluginManager;
16124
16198
  if (plugins.length > 0) pluginManager = new PluginManager(plugins);
16125
- const { defineApplication } = await import("./application-BakHtldG.mjs");
16199
+ const { defineApplication } = await import("./application-a_ApFuPh.mjs");
16126
16200
  const application = defineApplication({
16127
16201
  config,
16128
16202
  pluginManager
@@ -18387,4 +18461,4 @@ function isDeno() {
18387
18461
 
18388
18462
  //#endregion
18389
18463
  export { getOrganization as $, generateAllTypeManifestsFromSnapshot as $t, listCommand$3 as A, apiCommand as An, getExecutorWaitFailureMessage as At, show as B, paginationArgs as Bn, listWorkflowExecutions as Bt, listCommand$2 as C, getNamespacesWithMigrations as Cn, listWebhookExecutors as Ct, waitWorkflowExecution as D, PluginManager as Dn, listCommand$9 as Dt, waitCommand as E, sdkNameLabelKey as En, triggerExecutor as Et, generateCommand as F, configArg as Fn, startWorkflow as Ft, removeCommand$1 as G, deploy as Gt, extractOwnedNamespaces as H, workspaceArgs as Hn, formatKeyValueTable as Ht, generateMigrationScript as I, confirmationArgs as In, getCommand$5 as It, organizationTree as J, bundleMigrationScript as Jt, updateCommand$1 as K, executeScript as Kt, writeDbTypesFile as L, deploymentArgs as Ln, getWorkflow as Lt, truncate as M, assertWritable as Mn, listExecutorJobs as Mt, truncateCommand as N, defineAppCommand as Nn, watchExecutorJob as Nt, resumeCommand as O, generateUserTypes as On, listExecutors as Ot, generate as P, commonArgs as Pn, startCommand as Pt, getCommand$1 as Q, compareSnapshotWithRemote as Qt, getConfiguredEditorCommand as R, isVerbose as Rn, executionsCommand as Rt, listApps as S, hasChanges as Sn, getFunctionRegistry as St, healthCommand as T, resourceTrn as Tn, triggerCommand as Tt, logBetaWarning as U, getCommand$6 as Ut, showCommand as V, toPageDirection as Vn, functionExecutionStatusToString as Vt, remove as W, getExecutor as Wt, listCommand$4 as X, handleOptionalToRequiredError as Xt, treeCommand as Y, MIGRATION_LABEL_KEY as Yt, listOrganizations as Z, parseMigrationLabelNumber as Zt, getWorkspace as _, reconstructSnapshotFromMigrations as _n, listMachineUsers as _t, updateUser as a, SCHEMA_FILE_NAME as an, getFolder as at, createCommand as b, formatDiffSummary as bn, listFunctionRegistries as bt, listCommand as c, compareSnapshots as cn, createCommand$1 as ct, inviteUser as d, getMigrationDirPath as dn, listOAuth2Clients as dt, protoGqlPermission as en, updateCommand$2 as et, restoreCommand as f, getMigrationFilePath as fn, getCommand$3 as ft, getCommand as g, loadDiff as gn, listCommand$7 as gt, listWorkspaces as h, isValidMigrationNumber as hn, tokenCommand as ht, updateCommand as i, MIGRATE_FILE_NAME as in, getCommand$2 as it, listWorkflows as j, apiCall as jn, jobsCommand as jt, resumeWorkflow as k, prompt as kn, getExecutorJob as kt, listUsers as l, createSnapshotFromLocalTypes as ln, createFolder as lt, listCommand$1 as m, getNextMigrationNumber as mn, getMachineUserToken as mt, query as n, DIFF_FILE_NAME as nn, listCommand$5 as nt, removeCommand as o, assertValidMigrationFiles as on, deleteCommand$1 as ot, restoreWorkspace as p, getMigrationFiles as pn, getOAuth2Client as pt, updateOrganization as q, waitForExecution as qt, queryCommand as r, INITIAL_SCHEMA_NUMBER as rn, listFolders as rt, removeUser as s, compareLocalTypesWithSnapshot as sn, deleteFolder as st, isNativeTypeScriptRuntime as t, DB_TYPES_FILE_NAME as tn, updateFolder as tt, inviteCommand as u, getLatestMigrationNumber as un, listCommand$6 as ut, deleteCommand as v, formatMigrationNumber as vn, generate$1 as vt, getAppHealth as w, ensureConfigId as wn, webhookCommand as wt, createWorkspace as x, formatMigrationDiff as xn, getCommand$4 as xt, deleteWorkspace as y, parseMigrationNumberArg as yn, listCommand$8 as yt, openInConfiguredEditor as z, pagedLogArgs as zn, getWorkflowExecution as zt };
18390
- //# sourceMappingURL=runtime-CSY0eD4_.mjs.map
18464
+ //# sourceMappingURL=runtime-BpHVwifd.mjs.map