{"version":3,"sources":["../src/cli/commands/dashboards/list.ts"],"sourcesContent":["import chalk from \"chalk\";\nimport ora from \"ora\";\nimport { DashboardsApiService } from \"@/client-sdk/services/dashboards/dashboards-api.service\";\nimport { checkApiKey } from \"../../utils/apiKey\";\nimport { formatTable, formatRelativeTime } from \"../../utils/formatting\";\nimport { failSpinner } from \"../../utils/spinnerError\";\n\nexport const listDashboardsCommand = async (options?: { format?: string }): Promise<void> => {\n  checkApiKey();\n\n  const service = new DashboardsApiService();\n  const spinner = ora(\"Fetching dashboards...\").start();\n\n  try {\n    const result = await service.list();\n    const dashboards = result.data;\n\n    spinner.succeed(\n      `Found ${dashboards.length} dashboard${dashboards.length !== 1 ? \"s\" : \"\"}`,\n    );\n\n    if (options?.format === \"json\") {\n      console.log(JSON.stringify(result, null, 2));\n      return;\n    }\n\n    if (dashboards.length === 0) {\n      console.log();\n      console.log(chalk.gray(\"No dashboards found.\"));\n      console.log(chalk.gray(\"Create one with:\"));\n      console.log(chalk.cyan('  langwatch dashboard create \"My Dashboard\"'));\n      return;\n    }\n\n    console.log();\n\n    const tableData = dashboards.map((d) => ({\n      Name: d.name,\n      ID: d.id,\n      Graphs: String(d.graphCount),\n      Updated: formatRelativeTime(d.updatedAt),\n    }));\n\n    formatTable({\n      data: tableData,\n      headers: [\"Name\", \"ID\", \"Graphs\", \"Updated\"],\n      colorMap: {\n        Name: chalk.cyan,\n        ID: chalk.green,\n      },\n    });\n\n    console.log();\n    console.log(\n      chalk.gray(\n        `Use ${chalk.cyan(\"langwatch dashboard get <id>\")} to view dashboard details`,\n      ),\n    );\n  } catch (error) {\n    failSpinner({ spinner, error, action: \"fetch dashboards\" });\n    process.exit(1);\n  }\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,WAAW;AAClB,OAAO,SAAS;AAMT,IAAM,wBAAwB,OAAO,YAAiD;AAC3F,cAAY;AAEZ,QAAM,UAAU,IAAI,qBAAqB;AACzC,QAAM,UAAU,IAAI,wBAAwB,EAAE,MAAM;AAEpD,MAAI;AACF,UAAM,SAAS,MAAM,QAAQ,KAAK;AAClC,UAAM,aAAa,OAAO;AAE1B,YAAQ;AAAA,MACN,SAAS,WAAW,MAAM,aAAa,WAAW,WAAW,IAAI,MAAM,EAAE;AAAA,IAC3E;AAEA,SAAI,mCAAS,YAAW,QAAQ;AAC9B,cAAQ,IAAI,KAAK,UAAU,QAAQ,MAAM,CAAC,CAAC;AAC3C;AAAA,IACF;AAEA,QAAI,WAAW,WAAW,GAAG;AAC3B,cAAQ,IAAI;AACZ,cAAQ,IAAI,MAAM,KAAK,sBAAsB,CAAC;AAC9C,cAAQ,IAAI,MAAM,KAAK,kBAAkB,CAAC;AAC1C,cAAQ,IAAI,MAAM,KAAK,6CAA6C,CAAC;AACrE;AAAA,IACF;AAEA,YAAQ,IAAI;AAEZ,UAAM,YAAY,WAAW,IAAI,CAAC,OAAO;AAAA,MACvC,MAAM,EAAE;AAAA,MACR,IAAI,EAAE;AAAA,MACN,QAAQ,OAAO,EAAE,UAAU;AAAA,MAC3B,SAAS,mBAAmB,EAAE,SAAS;AAAA,IACzC,EAAE;AAEF,gBAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS,CAAC,QAAQ,MAAM,UAAU,SAAS;AAAA,MAC3C,UAAU;AAAA,QACR,MAAM,MAAM;AAAA,QACZ,IAAI,MAAM;AAAA,MACZ;AAAA,IACF,CAAC;AAED,YAAQ,IAAI;AACZ,YAAQ;AAAA,MACN,MAAM;AAAA,QACJ,OAAO,MAAM,KAAK,8BAA8B,CAAC;AAAA,MACnD;AAAA,IACF;AAAA,EACF,SAAS,OAAO;AACd,gBAAY,EAAE,SAAS,OAAO,QAAQ,mBAAmB,CAAC;AAC1D,YAAQ,KAAK,CAAC;AAAA,EAChB;AACF;","names":[]}