{"version":3,"sources":["../src/cli/commands/prompt/versions.ts"],"sourcesContent":["import chalk from \"chalk\";\nimport ora from \"ora\";\nimport { PromptsApiService } from \"@/client-sdk/services/prompts\";\nimport { checkApiKey } from \"../../utils/apiKey\";\nimport { formatTable } from \"../../utils/formatting\";\nimport { failSpinner } from \"../../utils/spinnerError\";\n\nexport const promptVersionsCommand = async (\n  handle: string,\n  options?: { format?: string }\n): Promise<void> => {\n  checkApiKey();\n\n  const service = new PromptsApiService();\n\n  const spinner = ora(`Fetching versions for \"${handle}\"...`).start();\n\n  try {\n    const versions = await service.getVersions(handle);\n\n    spinner.succeed(\n      `Found ${versions.length} version${versions.length !== 1 ? \"s\" : \"\"} for \"${handle}\"`\n    );\n\n    if (options?.format === \"json\") {\n      console.log(JSON.stringify(versions, null, 2));\n      return;\n    }\n\n    if (versions.length === 0) {\n      console.log();\n      console.log(chalk.gray(\"No versions found.\"));\n      return;\n    }\n\n    console.log();\n\n    const tableData = versions.map((v) => ({\n      Version: `v${v.version}`,\n      ID: v.versionId,\n      Tags:\n        v.tags && v.tags.length > 0\n          ? v.tags.map((t) => t.name).join(\", \")\n          : chalk.gray(\"—\"),\n      Message: v.commitMessage ?? chalk.gray(\"—\"),\n      Created: new Date(v.createdAt).toLocaleString(),\n    }));\n\n    formatTable({\n      data: tableData,\n      headers: [\"Version\", \"ID\", \"Tags\", \"Message\", \"Created\"],\n      colorMap: {\n        Version: chalk.cyan,\n        ID: chalk.green,\n        Tags: chalk.magenta,\n      },\n    });\n\n    console.log();\n    console.log(\n      chalk.gray(\n        `  Tip: Restore a version with: langwatch prompt restore ${handle} <versionId>`\n      )\n    );\n    console.log();\n  } catch (error) {\n    failSpinner({ spinner, error, action: \"fetch prompt versions\" });\n    process.exit(1);\n  }\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,WAAW;AAClB,OAAO,SAAS;AAMT,IAAM,wBAAwB,OACnC,QACA,YACkB;AAClB,cAAY;AAEZ,QAAM,UAAU,IAAI,kBAAkB;AAEtC,QAAM,UAAU,IAAI,0BAA0B,MAAM,MAAM,EAAE,MAAM;AAElE,MAAI;AACF,UAAM,WAAW,MAAM,QAAQ,YAAY,MAAM;AAEjD,YAAQ;AAAA,MACN,SAAS,SAAS,MAAM,WAAW,SAAS,WAAW,IAAI,MAAM,EAAE,SAAS,MAAM;AAAA,IACpF;AAEA,SAAI,mCAAS,YAAW,QAAQ;AAC9B,cAAQ,IAAI,KAAK,UAAU,UAAU,MAAM,CAAC,CAAC;AAC7C;AAAA,IACF;AAEA,QAAI,SAAS,WAAW,GAAG;AACzB,cAAQ,IAAI;AACZ,cAAQ,IAAI,MAAM,KAAK,oBAAoB,CAAC;AAC5C;AAAA,IACF;AAEA,YAAQ,IAAI;AAEZ,UAAM,YAAY,SAAS,IAAI,CAAC,MAAG;AArCvC;AAqC2C;AAAA,QACrC,SAAS,IAAI,EAAE,OAAO;AAAA,QACtB,IAAI,EAAE;AAAA,QACN,MACE,EAAE,QAAQ,EAAE,KAAK,SAAS,IACtB,EAAE,KAAK,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,IAAI,IACnC,MAAM,KAAK,QAAG;AAAA,QACpB,UAAS,OAAE,kBAAF,YAAmB,MAAM,KAAK,QAAG;AAAA,QAC1C,SAAS,IAAI,KAAK,EAAE,SAAS,EAAE,eAAe;AAAA,MAChD;AAAA,KAAE;AAEF,gBAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS,CAAC,WAAW,MAAM,QAAQ,WAAW,SAAS;AAAA,MACvD,UAAU;AAAA,QACR,SAAS,MAAM;AAAA,QACf,IAAI,MAAM;AAAA,QACV,MAAM,MAAM;AAAA,MACd;AAAA,IACF,CAAC;AAED,YAAQ,IAAI;AACZ,YAAQ;AAAA,MACN,MAAM;AAAA,QACJ,2DAA2D,MAAM;AAAA,MACnE;AAAA,IACF;AACA,YAAQ,IAAI;AAAA,EACd,SAAS,OAAO;AACd,gBAAY,EAAE,SAAS,OAAO,QAAQ,wBAAwB,CAAC;AAC/D,YAAQ,KAAK,CAAC;AAAA,EAChB;AACF;","names":[]}