{"version":3,"sources":["../src/cli/commands/model-defaults/list.ts"],"sourcesContent":["import chalk from \"chalk\";\nimport ora from \"ora\";\n\nimport { ModelDefaultsApiService } from \"@/client-sdk/services/model-defaults/model-defaults-api.service\";\n\nimport { checkApiKey } from \"../../utils/apiKey\";\nimport { formatTable } from \"../../utils/formatting\";\nimport { failSpinner } from \"../../utils/spinnerError\";\n\nexport const listModelDefaultsCommand = async (options?: {\n  format?: string;\n}): Promise<void> => {\n  checkApiKey();\n\n  const service = new ModelDefaultsApiService();\n  const spinner = ora(\"Fetching default-model configuration...\").start();\n\n  try {\n    const snapshot = await service.getSnapshot();\n\n    spinner.succeed(\n      `Default-model snapshot for project ${chalk.cyan(snapshot.scope.projectId)}`,\n    );\n\n    if (options?.format === \"json\") {\n      console.log(JSON.stringify(snapshot, null, 2));\n      return;\n    }\n\n    console.log();\n    console.log(chalk.bold(\"Effective resolution\"));\n    const effectiveRows = (\n      [\"DEFAULT\", \"FAST\", \"EMBEDDINGS\"] as const\n    ).map((role) => {\n      const hit = snapshot.effective[role];\n      return {\n        Role: role,\n        Model: hit ? chalk.green(hit.model) : chalk.gray(\"(unresolved)\"),\n        From: hit?.scope ?? chalk.gray(\"—\"),\n        Source: hit?.source ?? chalk.gray(\"—\"),\n      };\n    });\n    formatTable({\n      data: effectiveRows,\n      headers: [\"Role\", \"Model\", \"From\", \"Source\"],\n    });\n\n    console.log();\n    console.log(chalk.bold(`Configs (${snapshot.configs.length})`));\n    if (snapshot.configs.length === 0) {\n      console.log(\n        chalk.gray(\n          \"  No configs at any readable scope. Set one with:\",\n        ),\n      );\n      console.log(\n        chalk.cyan(\"    langwatch model-default set DEFAULT openai/gpt-5\"),\n      );\n      console.log();\n      return;\n    }\n\n    for (const c of snapshot.configs) {\n      const scopesStr = c.scopes\n        .map((s) => `${s.type.toLowerCase()}:${s.name}`)\n        .join(\", \");\n      console.log();\n      console.log(`  ${chalk.gray(\"ID:\")}     ${chalk.green(c.id)}`);\n      console.log(`  ${chalk.gray(\"Scopes:\")} ${scopesStr}`);\n      console.log(`  ${chalk.gray(\"Keys:\")}`);\n      for (const [key, value] of Object.entries(c.config)) {\n        console.log(`    ${chalk.cyan(key.padEnd(20))} ${value}`);\n      }\n    }\n    console.log();\n  } catch (error) {\n    failSpinner({ spinner, error, action: \"fetch default models\" });\n    process.exit(1);\n  }\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,OAAO,WAAW;AAClB,OAAO,SAAS;AAQT,IAAM,2BAA2B,OAAO,YAE1B;AACnB,cAAY;AAEZ,QAAM,UAAU,IAAI,wBAAwB;AAC5C,QAAM,UAAU,IAAI,yCAAyC,EAAE,MAAM;AAErE,MAAI;AACF,UAAM,WAAW,MAAM,QAAQ,YAAY;AAE3C,YAAQ;AAAA,MACN,sCAAsC,MAAM,KAAK,SAAS,MAAM,SAAS,CAAC;AAAA,IAC5E;AAEA,SAAI,mCAAS,YAAW,QAAQ;AAC9B,cAAQ,IAAI,KAAK,UAAU,UAAU,MAAM,CAAC,CAAC;AAC7C;AAAA,IACF;AAEA,YAAQ,IAAI;AACZ,YAAQ,IAAI,MAAM,KAAK,sBAAsB,CAAC;AAC9C,UAAM,gBACJ,CAAC,WAAW,QAAQ,YAAY,EAChC,IAAI,CAAC,SAAS;AAjCpB;AAkCM,YAAM,MAAM,SAAS,UAAU,IAAI;AACnC,aAAO;AAAA,QACL,MAAM;AAAA,QACN,OAAO,MAAM,MAAM,MAAM,IAAI,KAAK,IAAI,MAAM,KAAK,cAAc;AAAA,QAC/D,OAAM,gCAAK,UAAL,YAAc,MAAM,KAAK,QAAG;AAAA,QAClC,SAAQ,gCAAK,WAAL,YAAe,MAAM,KAAK,QAAG;AAAA,MACvC;AAAA,IACF,CAAC;AACD,gBAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS,CAAC,QAAQ,SAAS,QAAQ,QAAQ;AAAA,IAC7C,CAAC;AAED,YAAQ,IAAI;AACZ,YAAQ,IAAI,MAAM,KAAK,YAAY,SAAS,QAAQ,MAAM,GAAG,CAAC;AAC9D,QAAI,SAAS,QAAQ,WAAW,GAAG;AACjC,cAAQ;AAAA,QACN,MAAM;AAAA,UACJ;AAAA,QACF;AAAA,MACF;AACA,cAAQ;AAAA,QACN,MAAM,KAAK,sDAAsD;AAAA,MACnE;AACA,cAAQ,IAAI;AACZ;AAAA,IACF;AAEA,eAAW,KAAK,SAAS,SAAS;AAChC,YAAM,YAAY,EAAE,OACjB,IAAI,CAAC,MAAM,GAAG,EAAE,KAAK,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,EAC9C,KAAK,IAAI;AACZ,cAAQ,IAAI;AACZ,cAAQ,IAAI,KAAK,MAAM,KAAK,KAAK,CAAC,QAAQ,MAAM,MAAM,EAAE,EAAE,CAAC,EAAE;AAC7D,cAAQ,IAAI,KAAK,MAAM,KAAK,SAAS,CAAC,IAAI,SAAS,EAAE;AACrD,cAAQ,IAAI,KAAK,MAAM,KAAK,OAAO,CAAC,EAAE;AACtC,iBAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,EAAE,MAAM,GAAG;AACnD,gBAAQ,IAAI,OAAO,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC,CAAC,IAAI,KAAK,EAAE;AAAA,MAC1D;AAAA,IACF;AACA,YAAQ,IAAI;AAAA,EACd,SAAS,OAAO;AACd,gBAAY,EAAE,SAAS,OAAO,QAAQ,uBAAuB,CAAC;AAC9D,YAAQ,KAAK,CAAC;AAAA,EAChB;AACF;","names":[]}