UNPKG

hono-openapi

Version:
2 lines (1 loc) 608 B
const e=Symbol("openapi");async function s(e,s){const n=await s,o={};if("form"===e||"json"===e){const s="json"===e?"application/json":"multipart/form-data";o.requestBody&&"content"in o.requestBody&&o.requestBody.content?o.requestBody.content[s]={schema:n.schema}:o.requestBody={content:{[s]:{schema:n.schema}}}}else{const s=[];if("$ref"in n.schema)s.push({in:e,name:n.schema.$ref,schema:n.schema});else for(const[o,t]of Object.entries(n.schema.properties??{}))s.push({in:e,name:o,schema:t,required:n.schema.required?.includes(o)});o.parameters=s}return{docs:o,components:n.components}}export{s as g,e as u};