import{I as j,ax as C,G as K,H as w}from"./index.17037962789732.js";import"./index.170379627897334.js";import"./index.1703796278973300.js";import"./index.170379627897315.js";import"./index.170379627897317.js";import"./index.1703796278973301.js";import"./index.1703796278973302.js";import"./index.170379627897332.js";import"./index.1703796278973303.js";import"./index.170379627897339.js";import"./index.170379627897316.js";import"./index.170379627897314.js";import"./index.1703796278973304.js";import"./index.1703796278973305.js";import"./index.1703796278973306.js";import{s as I}from"./index.1703796278973307.js";import N from"./InputCard.1703796278973.js";import{f as k,g as x}from"./utils.17037962789732.js";import{d as E,a3 as L,v as g,l as O,p as z,m as T,o as v,x as f,z as t,A as y,u as a,b as p,B as S,a as A,F as V,h as $,c as F,G,H}from"./vue.1703796278973.js";import{_ as J}from"./_plugin-vue_export-helper.1703796278973.js";import"./index.17037962789733.js";import"./dayjs.min.1703796278973.js";import"./isArray.1703796278973.js";import"./editor.api.1703796278973.js";import"./preload-helper.1703796278973.js";import"./monaco.contribution.1703796278973.js";const m=b=>(G("data-v-3c873777"),b=b(),H(),b),M={class:"api-does-container"},P={class:"top"},R={class:"input"},U=m(()=>t("span",{class:"label"},"请求数据类型",-1)),Q=m(()=>t("span",{class:"label"},"响应数据类型",-1)),W=m(()=>t("span",null,y('["/"]'),-1)),X={key:0,class:"api-card"},Y=m(()=>t("h5",null,"接口描述",-1)),Z={key:1,class:"api-card"},ee=m(()=>t("h5",null,"请求示例",-1)),te={class:"api-card"},ae=m(()=>t("h5",null,"请求参数",-1)),se={class:"content"},oe={class:"api-card"},ce=m(()=>t("h5",null,"响应状态",-1)),ne={class:"content"},ie={class:"api-card"},le=m(()=>t("h5",null,"响应参数",-1)),de={class:"content"},re=E({__name:"ApiDoes",props:{selectApi:{type:Object,required:!0},schemas:{type:Object,required:!0}},setup(b){const s=b,{selectApi:D}=L(s),r=g({columns:[{title:"参数名",dataIndex:"name",key:"name"},{title:"参数说明",dataIndex:"description",key:"description"},{title:"请求类型",dataIndex:"in",key:"in"},{title:"是否必须",dataIndex:"required",key:"required",scopedSlots:!0},{title:"参数类型",dataIndex:"type",key:"type",scopedSlots:!0}],tableData:[],codeText:void 0,getData:()=>{var u;if(!s.selectApi.requestBody)return r.tableData=s.selectApi.parameters;const e=s.selectApi.requestBody.content["application/json"].schema,n=e.$ref||((u=e==null?void 0:e.items)==null?void 0:u.$ref);if(!n)return;const o=n==null?void 0:n.split("/").pop(),i=e.type||"",l=k(s.schemas,o);r.codeText=i==="array"?[x(s.schemas,l,3)]:x(s.schemas,l,3),r.tableData=[{name:o[0].toLowerCase()+o.substring(1),description:o,in:"body",required:!0,schema:{type:i||o},children:l.map(h=>({name:h.paramsName,description:h.desc,required:!1,schema:{type:h.paramsType}}))}]}}),c=g({activeKey:"",columns:[{title:"状态码",dataIndex:"code",key:"code"},{title:"说明",dataIndex:"desc",key:"desc"},{title:"schema",dataIndex:"schema",key:"schema"}],tableData:[],getData:()=>{var n;if(!Object.keys(s.selectApi.responses).length)return c.tableData=[];const e=[];Object.entries(s.selectApi.responses||{}).forEach(o=>{var u;const i=o[1].description,l=((u=o[1].content["*/*"].schema.$ref)==null?void 0:u.split("/"))||"";e.push({code:o[0],desc:i,schema:l&&l.pop()})}),c.activeKey=(n=e[0])==null?void 0:n.code,c.tableData=e}}),q=O(()=>c.tableData.map(e=>e.code+"").filter(e=>e!=="400")),_=g({columns:[{title:"参数名称",dataIndex:"paramsName"},{title:"参数说明",dataIndex:"desc"},{title:"类型",dataIndex:"paramsType"}],tableData:[],codeText:"",getData:e=>{var i;const n=(i=c.tableData.find(l=>l.code===e))==null?void 0:i.schema,o=k(s.schemas,n);_.codeText=x(s.schemas,o,3),_.tableData=o}}),B=e=>e&&e.content?Object.keys(e.content||{})[0]:"";return z(()=>{r.getData(),c.getData(),T(()=>s.selectApi,()=>{r.getData(),c.getData()}),T([()=>c.activeKey,()=>s.selectApi],e=>{e[0]&&_.getData(e[0])})}),(e,n)=>{var h;const o=j,i=C,l=K,u=w;return v(),f("div",M,[t("div",P,[t("h5",null,y(a(D).summary),1),t("div",R,[p(N,{value:a(D).method},null,8,["value"]),p(o,{value:(h=a(D))==null?void 0:h.url,disabled:""},null,8,["value"])])]),t("p",null,[U,t("span",null,y(B(a(D).requestBody)||"application/x-www-form-urlencoded"),1),Q,W]),s.selectApi.description?(v(),f("div",X,[Y,t("div",null,y(s.selectApi.description),1)])):S("",!0),a(r).codeText?(v(),f("div",Z,[ee,p(a(I),{value:a(r).codeText,copyable:""},null,8,["value"])])):S("",!0),t("div",te,[ae,t("div",se,[p(i,{columns:a(r).columns,dataSource:a(r).tableData,noPagination:"",model:"TABLE",size:"small"},{required:A(d=>[t("span",null,y(Boolean(d.required)+""),1)]),type:A(d=>[t("span",null,y(d==null?void 0:d.schema.type),1)]),_:1},8,["columns","dataSource"])])]),t("div",oe,[ce,t("div",ne,[p(i,{columns:a(c).columns,dataSource:a(c).tableData,noPagination:"",model:"TABLE",size:"small"},null,8,["columns","dataSource"]),p(u,{activeKey:a(c).activeKey,"onUpdate:activeKey":n[0]||(n[0]=d=>a(c).activeKey=d)},{default:A(()=>[(v(!0),f(V,null,$(a(q),d=>(v(),F(l,{key:d,tab:d},null,8,["tab"]))),128))]),_:1},8,["activeKey"])])]),t("div",ie,[le,t("div",de,[p(i,{columns:a(_).columns,dataSource:a(_).tableData,noPagination:"",model:"TABLE",size:"small"},null,8,["columns","dataSource"])]),p(a(I),{value:a(_).codeText,copyable:""},null,8,["value"])])])}}});const Oe=J(re,[["__scopeId","data-v-3c873777"]]);export{Oe as default};