UNPKG

sb-mig

Version:

CLI to rule the world. (and handle stuff related to Storyblok CMS)

78 lines (77 loc) 2.84 kB
import type { MigrateFrom, MigrationPipelineResult } from "./component-data-migration.js"; import type { MutationWriteResult, MutationWriteSummary } from "./write-summary.js"; import type { PublishLanguagesOption } from "../stories/stories.types.js"; import type { RequestBaseConfig } from "../utils/request.js"; type MigrationRunLogEvent = "update_success" | "update_failed" | "publish_success" | "publish_failed" | "publish_skipped" | "migration_write_summary"; export interface MigrationRunLogRecord { timestamp: string; event: MigrationRunLogEvent; runId: string; itemType: "story" | "preset"; source: { migrateFrom: MigrateFrom; from: string; fromFilePath: string | null; }; target: { to: string; }; writeMode: "publish" | "save"; publishLanguages?: { requested?: PublishLanguagesOption; resolved?: string[]; }; dryRun: boolean; migrationConfigs: string[]; totalItems: number; totalChangedItems: number; writeSummary?: { total: number; successful: number; failed: number; failedItems: Array<{ id?: number | string; name?: string; slug?: string; spaceId?: string; status?: number | string; response?: string | null; stage?: "update" | "publish"; sourcePublishState?: string; publishSkippedReason?: string; }>; }; item?: { index: number; id?: number | string; name?: string; slug?: string; spaceId?: string; }; status?: number | string | null; response?: string | null; stage?: "update" | "publish"; sourcePublishState?: string; publishSkippedReason?: string; error?: unknown; } interface SaveMigrationRunLogArgs { artifactBaseName: string; useDatestamp: boolean; from: string; to: string; itemType: "story" | "preset"; dryRun?: boolean; publish?: boolean; publishLanguages?: PublishLanguagesOption; resolvedPublishLanguages?: string[]; migrateFrom: MigrateFrom; fromFilePath?: string; pipelineResult: MigrationPipelineResult; writeResults: PromiseSettledResult<MutationWriteResult>[]; writeSummary: MutationWriteSummary; } export declare const buildMigrationRunLogRecords: ({ from, to, itemType, dryRun, publish, publishLanguages, resolvedPublishLanguages, migrateFrom, fromFilePath, pipelineResult, writeResults, writeSummary, }: Omit<SaveMigrationRunLogArgs, "artifactBaseName" | "useDatestamp">) => MigrationRunLogRecord[]; export declare const recordsToJsonl: (records: MigrationRunLogRecord[]) => string; export declare const saveMigrationRunLog: (args: SaveMigrationRunLogArgs, config: RequestBaseConfig) => Promise<void>; export {};