{"version":3,"file":"ClaudeSchemaComposer.mjs","sources":["../../../src/composers/llm/ClaudeSchemaComposer.ts"],"sourcesContent":["import { OpenApi } from \"../../OpenApi\";\nimport { IClaudeSchema } from \"../../structures/IClaudeSchema\";\nimport { ILlmFunction } from \"../../structures/ILlmFunction\";\nimport { IOpenApiSchemaError } from \"../../structures/IOpenApiSchemaError\";\nimport { IResult } from \"../../structures/IResult\";\nimport { LlmSchemaV3_1Composer } from \"./LlmSchemaV3_1Composer\";\n\nexport namespace ClaudeSchemaComposer {\n  /**\n   * @internal\n   */\n  export const IS_DEFS = true;\n\n  export const parameters = (props: {\n    config: IClaudeSchema.IConfig;\n    components: OpenApi.IComponents;\n    schema: OpenApi.IJsonSchema.IObject | OpenApi.IJsonSchema.IReference;\n    accessor?: string;\n    refAccessor?: string;\n  }): IResult<IClaudeSchema.IParameters, IOpenApiSchemaError> =>\n    LlmSchemaV3_1Composer.parameters({\n      ...props,\n      config: {\n        reference: props.config.reference,\n        constraint: true,\n      },\n    });\n\n  export const schema = (props: {\n    config: IClaudeSchema.IConfig;\n    components: OpenApi.IComponents;\n    $defs: Record<string, IClaudeSchema>;\n    schema: OpenApi.IJsonSchema;\n    accessor?: string;\n    refAccessor?: string;\n  }): IResult<IClaudeSchema, IOpenApiSchemaError> =>\n    LlmSchemaV3_1Composer.schema({\n      ...props,\n      config: {\n        reference: props.config.reference,\n        constraint: true,\n      },\n    });\n\n  export const separateParameters = (props: {\n    parameters: IClaudeSchema.IParameters;\n    predicate: (schema: IClaudeSchema) => boolean;\n    convention?: (key: string, type: \"llm\" | \"human\") => string;\n  }): ILlmFunction.ISeparated<\"claude\"> => {\n    const separated: ILlmFunction.ISeparated<\"3.1\"> =\n      LlmSchemaV3_1Composer.separateParameters(props);\n    return separated as any as ILlmFunction.ISeparated<\"claude\">;\n  };\n\n  export const invert = (props: {\n    components: OpenApi.IComponents;\n    schema: IClaudeSchema;\n    $defs: Record<string, IClaudeSchema>;\n  }): OpenApi.IJsonSchema => LlmSchemaV3_1Composer.invert(props);\n}\n"],"names":["ClaudeSchemaComposer","IS_DEFS","parameters","props","LlmSchemaV3_1Composer","config","reference","constraint","schema","separateParameters","separated","invert"],"mappings":";;AAOM,IAAWA;;CAAjB,SAAiBA;IAIFA,qBAAOC,UAAG;IAEVD,qBAAUE,aAAIC,SAOzBC,sBAAsBF,WAAW;WAC5BC;QACHE,QAAQ;YACNC,WAAWH,MAAME,OAAOC;YACxBC,YAAY;;;IAILP,qBAAMQ,SAAIL,SAQrBC,sBAAsBI,OAAO;WACxBL;QACHE,QAAQ;YACNC,WAAWH,MAAME,OAAOC;YACxBC,YAAY;;;IAILP,qBAAAS,qBAAsBN;QAKjC,MAAMO,YACJN,sBAAsBK,mBAAmBN;QAC3C,OAAOO;AAAqD;IAGjDV,qBAAAW,SAAUR,SAIIC,sBAAsBO,OAAOR;AACzD,EApDD,CAAiBH,yBAAAA,uBAoDhB,CAAA;;"}