{"version":3,"file":"info.mjs","sources":["../../../src/assemblers/document/info.ts"],"sourcesContent":["import type { OpenAPIV3_1 } from 'openapi-types';\n\nimport type { DocumentContext } from '../../types';\n\nimport { createDebugger } from '../../utils';\n\nimport type { Assembler } from '..';\n\ninterface StrapiInfoConfig {\n  name: string;\n  version: string;\n}\n\nconst debug = createDebugger('assembler:info');\n\nexport class DocumentInfoAssembler implements Assembler.Document {\n  assemble(context: DocumentContext): void {\n    const { name, version } = context.strapi.config.get<StrapiInfoConfig>('info');\n\n    debug(`assembling document's info for %O...`, { name, version });\n\n    const info: OpenAPIV3_1.InfoObject = {\n      title: this._title(name),\n      description: this._description(name, version),\n      version,\n    };\n\n    debug(`document's info assembled: %O`, info);\n\n    context.output.data.info = info;\n  }\n\n  private _title(name: string) {\n    return `${name}`;\n  }\n\n  private _description(name: string, version: string) {\n    return `API documentation for ${name} v${version}`;\n  }\n}\n"],"names":["debug","createDebugger","DocumentInfoAssembler","assemble","context","name","version","strapi","config","get","info","title","_title","description","_description","output","data"],"mappings":";;;;AAaA,MAAMA,QAAQC,cAAAA,CAAe,gBAAA,CAAA;AAEtB,MAAMC,qBAAAA,CAAAA;AACXC,IAAAA,QAAAA,CAASC,OAAwB,EAAQ;AACvC,QAAA,MAAM,EAAEC,IAAI,EAAEC,OAAO,EAAE,GAAGF,OAAAA,CAAQG,MAAM,CAACC,MAAM,CAACC,GAAG,CAAmB,MAAA,CAAA;QAEtET,KAAAA,CAAM,CAAC,oCAAoC,CAAC,EAAE;AAAEK,YAAAA,IAAAA;AAAMC,YAAAA;AAAQ,SAAA,CAAA;AAE9D,QAAA,MAAMI,IAAAA,GAA+B;YACnCC,KAAAA,EAAO,IAAI,CAACC,MAAM,CAACP,IAAAA,CAAAA;AACnBQ,YAAAA,WAAAA,EAAa,IAAI,CAACC,YAAY,CAACT,IAAAA,EAAMC,OAAAA,CAAAA;AACrCA,YAAAA;AACF,SAAA;QAEAN,KAAAA,CAAM,CAAC,6BAA6B,CAAC,EAAEU,IAAAA,CAAAA;AAEvCN,QAAAA,OAAAA,CAAQW,MAAM,CAACC,IAAI,CAACN,IAAI,GAAGA,IAAAA;AAC7B,IAAA;AAEQE,IAAAA,MAAAA,CAAOP,IAAY,EAAE;AAC3B,QAAA,OAAO,GAAGA,IAAAA,CAAAA,CAAM;AAClB,IAAA;IAEQS,YAAAA,CAAaT,IAAY,EAAEC,OAAe,EAAE;AAClD,QAAA,OAAO,CAAC,sBAAsB,EAAED,IAAAA,CAAK,EAAE,EAAEC,OAAAA,CAAAA,CAAS;AACpD,IAAA;AACF;;;;"}