{"version":3,"sources":["../../../src/llms/drivers/yaml.ts"],"names":["YamlDriver","BaseDriver","template","PromptTemplate","schema","z","object","string","register","parseResponse","textResponse","yaml","load","schemaToString","dump"],"mappings":";;;;;;;;;;;;;AAuBO,MAAMA,mBAEHC,mBAAAA,CAAAA;EAzBV;;;AA0BYC,EAAAA,QAAAA,GAAW,IAAIC,2BAAe,CAAA;AACtCC,IAAAA,MAAAA,EAAQC,MAAEC,MAAO,CAAA;AACfF,MAAAA,MAAAA,EAAQC,MAAEE,MAAM;KAClB,CAAA;IACAL,QAAU,EAAA,CAAA;;;;;;;;GAQZ,CAAA;EAEA;AACE,IAAA,IAAA,CAAKM,QAAQ,EAAA;AACf;AAEUC,EAAAA,aAAAA,CAAcC,YAA+B,EAAA;AACrD,IAAOC,OAAAA,qBAAAA,CAAKC,KAAKF,YAAAA,CAAAA;AACnB;AAEUG,EAAAA,cAAAA,CAAeT,MAA8B,EAAA;AACrD,IAAOO,OAAAA,qBAAAA,CAAKG,KAAKV,MAAAA,CAAAA;AACnB;AACF","file":"yaml.cjs","sourcesContent":["/**\n * Copyright 2025 IBM Corp.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { GenerateOptions } from \"@/llms/base.js\";\nimport { PromptTemplate } from \"@/template.js\";\nimport { BaseDriver } from \"@/llms/drivers/base.js\";\nimport yaml from \"js-yaml\";\nimport { SchemaObject } from \"ajv\";\nimport { z } from \"zod\";\n\nexport class YamlDriver<\n  TGenerateOptions extends GenerateOptions = GenerateOptions,\n> extends BaseDriver<TGenerateOptions> {\n  protected template = new PromptTemplate({\n    schema: z.object({\n      schema: z.string(),\n    }),\n    template: `You are a helpful assistant that generates only valid YAML adhering to the following schema.\n\n\\`\\`\\`\n{{schema}}\n\\`\\`\\`\n\nIMPORTANT: Every message must be a parsable YAML string without additional output.\n`,\n  });\n\n  static {\n    this.register();\n  }\n\n  protected parseResponse(textResponse: string): unknown {\n    return yaml.load(textResponse);\n  }\n\n  protected schemaToString(schema: SchemaObject): string {\n    return yaml.dump(schema);\n  }\n}\n"]}