{"version":3,"sources":["../src/cli/commands/dataset/records-update.ts"],"sourcesContent":["import chalk from \"chalk\";\nimport ora from \"ora\";\nimport { checkApiKey } from \"../../utils/apiKey\";\nimport { createDatasetService } from \"./service-factory\";\nimport { handleDatasetCommandError } from \"./error-handler\";\n\n/**\n * Updates a single record in a dataset.\n */\nexport const recordsUpdateCommand = async (\n  slugOrId: string,\n  recordId: string,\n  options: { json: string },\n): Promise<void> => {\n  checkApiKey();\n\n  let entry: Record<string, unknown>;\n  try {\n    const parsed = JSON.parse(options.json);\n    if (typeof parsed !== \"object\" || parsed === null || Array.isArray(parsed)) {\n      throw new Error(\"Expected a JSON object, not an array or primitive.\");\n    }\n    entry = parsed as Record<string, unknown>;\n  } catch (error) {\n    console.error(\n      chalk.red(\n        error instanceof Error ? error.message : \"Invalid JSON input\",\n      ),\n    );\n    process.exit(1);\n  }\n\n  const service = createDatasetService();\n  const spinner = ora(`Updating record \"${recordId}\" in \"${slugOrId}\"...`).start();\n\n  try {\n    const record = await service.updateRecord(slugOrId, recordId, entry);\n\n    spinner.succeed(`Record updated: ${chalk.cyan(record.id)}`);\n  } catch (error) {\n    handleDatasetCommandError({ spinner, error, context: \"update record\" });\n  }\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,WAAW;AAClB,OAAO,SAAS;AAQT,IAAM,uBAAuB,OAClC,UACA,UACA,YACkB;AAClB,cAAY;AAEZ,MAAI;AACJ,MAAI;AACF,UAAM,SAAS,KAAK,MAAM,QAAQ,IAAI;AACtC,QAAI,OAAO,WAAW,YAAY,WAAW,QAAQ,MAAM,QAAQ,MAAM,GAAG;AAC1E,YAAM,IAAI,MAAM,oDAAoD;AAAA,IACtE;AACA,YAAQ;AAAA,EACV,SAAS,OAAO;AACd,YAAQ;AAAA,MACN,MAAM;AAAA,QACJ,iBAAiB,QAAQ,MAAM,UAAU;AAAA,MAC3C;AAAA,IACF;AACA,YAAQ,KAAK,CAAC;AAAA,EAChB;AAEA,QAAM,UAAU,qBAAqB;AACrC,QAAM,UAAU,IAAI,oBAAoB,QAAQ,SAAS,QAAQ,MAAM,EAAE,MAAM;AAE/E,MAAI;AACF,UAAM,SAAS,MAAM,QAAQ,aAAa,UAAU,UAAU,KAAK;AAEnE,YAAQ,QAAQ,mBAAmB,MAAM,KAAK,OAAO,EAAE,CAAC,EAAE;AAAA,EAC5D,SAAS,OAAO;AACd,8BAA0B,EAAE,SAAS,OAAO,SAAS,gBAAgB,CAAC;AAAA,EACxE;AACF;","names":[]}