| 1 |
- import{d as P,f as g,r as A,ag as m,aB as T,ar as M,aD as f,at as H,k as v,aA as q,ah as z,G as L}from"./vue-vendor-Be68asQ6.js";import{co as U,ac as X,F as Y,j as Q}from"./index-BFfnEkVs.js";import{B as Z}from"./index-CETWS1o0.js";import{f as O,c4 as $}from"./antd-vue-vendor-DcqS7Wvq.js";import"./index-D68l__AG.js";import ee from"./JCodeEditor-CSivhUhT.js";import"./vxe-table-vendor-DHF2TRpV.js";import"./BasicModal-D4gc2R81.js";import"./useTimeout-Ca5eqGu-.js";import"./useWindowSizeFn-BTSGGcie.js";import"./index-BZ_MXCtW.js";import"./index-BIPzXG41.js";import"./index-CXEQnmRq.js";import"./useIntersectionObserver-Bl62RIZ4.js";import"./BasicForm-Cv-dsB-e.js";import"./componentMap-BUTAcOmo.js";import"./useFormItem-CtGMPcLp.js";import"./download-CjoX0_mR.js";import"./base64Conver-24EVOS6V.js";import"./index-D1703ozz.js";import"./index-Bi7PIj53.js";import"./useCountdown-B7iR27pS.js";import"./useFormItemSingle-nLM0QlcI.js";import"./JSelectUser-DCwPqRxp.js";import"./props-BPxWJPuD.js";import"./JSelectBiz-Be8KsC5j.js";import"./JAddInput-BBXQvvpq.js";import"./areaDataUtil-Cik-Rc_P.js";import"./index-BOEzG86y.js";import"./index-BNFwynfr.js";import"./bem-BvvqSl-N.js";import"./props-Cw7AfxGV.js";import"./useContextMenu-BDwmjIwb.js";import"./depart.api-CDwTvdwQ.js";import"./JSelectDept-DT6g7V5M.js";import"./JPopup-DKJW27Yk.js";import"./JEllipsis-C04xKxcI.js";import"./JUpload-cB_Qj2H2.js";import"./index-iuayQczx.js";import"./index-DJQB4_Pr.js";import"./useForm-kcRIHoe0.js";import"./JAreaLinkage-BNOKwn5l.js";import"./EasyCronInput-wCv2YMHn.js";import"./htmlmixed-DNSd26j0.js";import"./vue-DbzutmLn.js";/* empty css */var V=(n,l,p)=>new Promise((C,h)=>{var w=a=>{try{d(p.next(a))}catch(s){h(s)}},x=a=>{try{d(p.throw(a))}catch(s){h(s)}},d=a=>a.done?C(a.value):Promise.resolve(a.value).then(w,x);d((p=p.apply(n,l)).next())});const te=P({name:"CodeFileViewModal",components:{BasicModal:Z,InfoCircleTwoTone:$,JCodeEditor:ee},emits:["download","register","close"],setup(n,{emit:l}){const p=g([]),C=g(""),h=g([]),w=g(!1),x=window.innerHeight-142,d=g("java"),a=g("");let s=A({});const[B,{closeModal:D}]=X(t=>V(this,null,function*(){s=A({}),a.value="",p.value=t.codeList,C.value=t.pathKey,N(),w.value=!0})),{prefixCls:y}=Y("online-codeFileViewModal");function N(){let t=W(),i=t[0];b(i,t);let o=[];const e=function(c){if(c.children){let r=c.children;r.length==1?e(r[0]):r.length>1&&o.push(c)}};e(i),h.value=o,setTimeout(()=>{R(i)},300)}function R(t){return V(this,null,function*(){const i=function(e){if(e.isLeaf===!0)return e;if(e.children)return i(e.children[0])};let o=i(t);if(o&&o.isLeaf===!0){let e=o.path;s[e]||(yield G(e)),d.value=E(e),a.value=s[e]}})}function b(t,i){for(let o of i)t.key==o.pid&&(t.children||(t.children=[]),t.children.push(o),b(o,i))}function S(t,i){let o=0,e="";for(;o<=i;)e+=t[o],o++;return e}function W(){let t=[],i=[],o=p.value;for(let e of o){let c=e.replace(new RegExp("\\\\","g"),"/").replace("生成成功:","").trim();if(c){let r=c.split("/");for(let u=0;u<r.length;u++){let _=r[u],F=S(r,u);if(_){let k={title:_,key:F};if(_!=0){let I=S(r,u-1);I&&(k.pid=I)}u==r.length-1&&(k.isLeaf=!0,k.path=c),(i.indexOf(F)<0||u==r.length-1)&&(t.push(k),i.push(F))}}}}return t}function j(){D(),l("close")}function J(){l("download")}function E(t){return t.endsWith("xml")?"application/xml":t.endsWith("sql")?"text/x-sql":t.endsWith("vue")?"text/x-vue":t.endsWith("ts")?"text/typescript":"text/x-java"}function K(t,i){return V(this,null,function*(){let o=i.node.dataRef;if(o.isLeaf){let e=o.path;s[e]||(yield G(e)),d.value=E(e),a.value=s[e]}})}function G(t){return new Promise(i=>{let o={path:encodeURI(t),pathKey:C.value};Q.get({url:"/online/cgform/api/codeView",params:o},{isTransformResponse:!1}).then(e=>{if(!e||e.size===0){O.warning("文件下载失败");return}else if(e.message){O.warning(e.message);return}let c=new Blob([e]),r=new FileReader;r.readAsText(c,"utf8"),r.onload=function(){let u=this.result;s[t]=u,i(1)}})})}return{registerModal:B,codeList:p,onDownloadGenerateCode:J,handleClose:j,treeData:h,showCodeContent:K,activeCodeContent:a,expandStatus:w,height:x,language:d,prefixCls:y,modalHeight:1e3}}});function oe(n,l,p,C,h,w){const x=m("info-circle-two-tone"),d=m("a-directory-tree"),a=m("a-col"),s=m("JCodeEditor"),B=m("a-empty"),D=m("a-row"),y=m("a-button"),N=m("BasicModal");return M(),T(N,{height:n.modalHeight,onRegister:n.registerModal,okText:"",cancelText:"关闭",width:1200,defaultFullscreen:!0,canFullscreen:!1,onOk:n.onDownloadGenerateCode,wrapClassName:n.prefixCls},{title:f(()=>[v(x),l[1]||(l[1]=L(" 代码在线预览 "))]),footer:f(()=>[v(y,{onClick:n.handleClose},{default:f(()=>l[2]||(l[2]=[L("关闭")])),_:1},8,["onClick"]),v(y,{type:"primary",onClick:n.onDownloadGenerateCode},{default:f(()=>l[3]||(l[3]=[L("下载到本地")])),_:1},8,["onClick"])]),default:f(()=>[H("div",null,[v(D,null,{default:f(()=>[v(a,{span:6,gutter:3,style:{"border-right":"1px solid #eee"}},{default:f(()=>[H("div",{style:q({height:n.height+"px",overflowY:"auto"})},[n.treeData.length?(M(),T(d,{key:0,defaultExpandAll:!0,"tree-data":n.treeData,onSelect:n.showCodeContent},null,8,["tree-data","onSelect"])):z("",!0)],4)]),_:1}),v(a,{span:18,gutter:3},{default:f(()=>[n.activeCodeContent?(M(),T(s,{key:0,value:n.activeCodeContent,"onUpdate:value":l[0]||(l[0]=R=>n.activeCodeContent=R),theme:"idea",language:n.language,fullScreen:!1,lineNumbers:!0,height:n.height+"px",disabled:!0,"language-change":!0},null,8,["value","language","height"])):(M(),T(B,{key:1,style:{"margin-top":"50px"},description:"请选择左侧文件,显示详细代码"}))]),_:1})]),_:1})])]),_:1},8,["height","onRegister","onOk","wrapClassName"])}const Xe=U(te,[["render",oe]]);export{Xe as default};
|