{"version":3,"file":"refusal.cjs","names":["isBaseMessage","ModelRefusalError"],"sources":["../../src/output_parsers/refusal.ts"],"sourcesContent":["import { ModelRefusalError } from \"../errors/index.js\";\nimport { isBaseMessage } from \"../messages/base.js\";\nimport type { ContentBlock } from \"../messages/content/index.js\";\nimport type { ChatGeneration, Generation } from \"../outputs.js\";\n\n/**\n * Throws {@link ModelRefusalError} if the generation's message is a refusal.\n *\n * @internal\n */\nexport function throwIfRefused(\n  generation: Generation | ChatGeneration | undefined\n): void {\n  if (!generation || !(\"message\" in generation)) return;\n  const { message } = generation;\n  if (!isBaseMessage(message)) return;\n  let blocks;\n  try {\n    blocks = message.contentBlocks;\n  } catch {\n    return;\n  }\n  for (const block of blocks) {\n    if (block.type === \"refusal\") {\n      throw ModelRefusalError.fromRefusal(\n        block as ContentBlock.Refusal,\n        message\n      );\n    }\n  }\n}\n"],"mappings":";;;;;;;;AAUA,SAAgB,eACd,YACM;CACN,IAAI,CAAC,cAAc,EAAE,aAAa,aAAa;CAC/C,MAAM,EAAE,YAAY;CACpB,IAAI,CAACA,aAAAA,cAAc,OAAO,GAAG;CAC7B,IAAI;CACJ,IAAI;EACF,SAAS,QAAQ;CACnB,QAAQ;EACN;CACF;CACA,KAAK,MAAM,SAAS,QAClB,IAAI,MAAM,SAAS,WACjB,MAAMC,qBAAAA,kBAAkB,YACtB,OACA,OACF;AAGN"}