{"version":3,"file":"data.cjs","names":["block: ContentBlock","isURLContentBlock","isBase64ContentBlock","isIDContentBlock","content: Array<ContentBlock>","_isContentBlock","_isObject","_isString","parseBase64DataUrl"],"sources":["../../../src/messages/block_translators/data.ts"],"sourcesContent":["import {\n  parseBase64DataUrl,\n  isBase64ContentBlock,\n  isIDContentBlock,\n  isURLContentBlock,\n} from \"../content/data.js\";\nimport type { ContentBlock } from \"../content/index.js\";\nimport { _isContentBlock, _isObject, _isString } from \"./utils.js\";\n\nexport function convertToV1FromDataContentBlock(\n  block: ContentBlock\n): ContentBlock.Standard {\n  if (isURLContentBlock(block)) {\n    return {\n      type: block.type,\n      mimeType: block.mime_type,\n      url: block.url,\n      metadata: block.metadata,\n    };\n  }\n  if (isBase64ContentBlock(block)) {\n    return {\n      type: block.type,\n      mimeType: block.mime_type ?? \"application/octet-stream\",\n      data: block.data,\n      metadata: block.metadata,\n    };\n  }\n  if (isIDContentBlock(block)) {\n    return {\n      type: block.type,\n      mimeType: block.mime_type,\n      fileId: block.id,\n      metadata: block.metadata,\n    };\n  }\n  return block as ContentBlock.Standard;\n}\n\nexport function convertToV1FromDataContent(\n  content: Array<ContentBlock>\n): Array<ContentBlock.Standard> {\n  return content.map(convertToV1FromDataContentBlock);\n}\n\nexport function isOpenAIDataBlock(block: ContentBlock): boolean {\n  if (_isContentBlock(block, \"image_url\") && _isObject(block.image_url)) {\n    return true;\n  }\n  if (_isContentBlock(block, \"input_audio\") && _isObject(block.input_audio)) {\n    return true;\n  }\n  if (_isContentBlock(block, \"file\") && _isObject(block.file)) {\n    return true;\n  }\n  return false;\n}\n\nexport function convertToV1FromOpenAIDataBlock(\n  block: ContentBlock\n): ContentBlock.Standard {\n  if (\n    _isContentBlock(block, \"image_url\") &&\n    _isObject(block.image_url) &&\n    _isString(block.image_url.url)\n  ) {\n    const parsed = parseBase64DataUrl({ dataUrl: block.image_url.url });\n    if (parsed) {\n      return {\n        type: \"image\",\n        mimeType: parsed.mime_type,\n        data: parsed.data,\n      };\n    } else {\n      return {\n        type: \"image\",\n        url: block.image_url.url,\n      };\n    }\n  } else if (\n    _isContentBlock(block, \"input_audio\") &&\n    _isObject(block.input_audio) &&\n    _isString(block.input_audio.data) &&\n    _isString(block.input_audio.format)\n  ) {\n    return {\n      type: \"audio\",\n      data: block.input_audio.data,\n      mimeType: `audio/${block.input_audio.format}`,\n    };\n  } else if (\n    _isContentBlock(block, \"file\") &&\n    _isObject(block.file) &&\n    _isString(block.file.data)\n  ) {\n    const parsed = parseBase64DataUrl({ dataUrl: block.file.data });\n    if (parsed) {\n      return {\n        type: \"file\",\n        data: parsed.data,\n        mimeType: parsed.mime_type,\n      };\n    } else if (_isString(block.file.file_id)) {\n      return {\n        type: \"file\",\n        fileId: block.file.file_id,\n      };\n    }\n  }\n  return block as ContentBlock.Standard;\n}\n"],"mappings":";;;;AASA,SAAgB,gCACdA,OACuB;AACvB,KAAIC,+BAAkB,MAAM,CAC1B,QAAO;EACL,MAAM,MAAM;EACZ,UAAU,MAAM;EAChB,KAAK,MAAM;EACX,UAAU,MAAM;CACjB;AAEH,KAAIC,kCAAqB,MAAM,CAC7B,QAAO;EACL,MAAM,MAAM;EACZ,UAAU,MAAM,aAAa;EAC7B,MAAM,MAAM;EACZ,UAAU,MAAM;CACjB;AAEH,KAAIC,8BAAiB,MAAM,CACzB,QAAO;EACL,MAAM,MAAM;EACZ,UAAU,MAAM;EAChB,QAAQ,MAAM;EACd,UAAU,MAAM;CACjB;AAEH,QAAO;AACR;AAED,SAAgB,2BACdC,SAC8B;AAC9B,QAAO,QAAQ,IAAI,gCAAgC;AACpD;AAED,SAAgB,kBAAkBJ,OAA8B;AAC9D,KAAIK,8BAAgB,OAAO,YAAY,IAAIC,wBAAU,MAAM,UAAU,CACnE,QAAO;AAET,KAAID,8BAAgB,OAAO,cAAc,IAAIC,wBAAU,MAAM,YAAY,CACvE,QAAO;AAET,KAAID,8BAAgB,OAAO,OAAO,IAAIC,wBAAU,MAAM,KAAK,CACzD,QAAO;AAET,QAAO;AACR;AAED,SAAgB,+BACdN,OACuB;AACvB,KACEK,8BAAgB,OAAO,YAAY,IACnCC,wBAAU,MAAM,UAAU,IAC1BC,wBAAU,MAAM,UAAU,IAAI,EAC9B;EACA,MAAM,SAASC,gCAAmB,EAAE,SAAS,MAAM,UAAU,IAAK,EAAC;AACnE,MAAI,OACF,QAAO;GACL,MAAM;GACN,UAAU,OAAO;GACjB,MAAM,OAAO;EACd;MAED,QAAO;GACL,MAAM;GACN,KAAK,MAAM,UAAU;EACtB;CAEJ,WACCH,8BAAgB,OAAO,cAAc,IACrCC,wBAAU,MAAM,YAAY,IAC5BC,wBAAU,MAAM,YAAY,KAAK,IACjCA,wBAAU,MAAM,YAAY,OAAO,CAEnC,QAAO;EACL,MAAM;EACN,MAAM,MAAM,YAAY;EACxB,UAAU,CAAC,MAAM,EAAE,MAAM,YAAY,QAAQ;CAC9C;UAEDF,8BAAgB,OAAO,OAAO,IAC9BC,wBAAU,MAAM,KAAK,IACrBC,wBAAU,MAAM,KAAK,KAAK,EAC1B;EACA,MAAM,SAASC,gCAAmB,EAAE,SAAS,MAAM,KAAK,KAAM,EAAC;AAC/D,MAAI,OACF,QAAO;GACL,MAAM;GACN,MAAM,OAAO;GACb,UAAU,OAAO;EAClB;WACQD,wBAAU,MAAM,KAAK,QAAQ,CACtC,QAAO;GACL,MAAM;GACN,QAAQ,MAAM,KAAK;EACpB;CAEJ;AACD,QAAO;AACR"}