2 lines
5.5 KiB
JavaScript
2 lines
5.5 KiB
JavaScript
import{M as w,d as G,v as L,r as V,a as Y,G as J,g as p,z as M,k as T,w as o,e as n,c as U,H as K,b as _,t as g,l as q,I as Q,U as W,x as X,V as I,D as P,E as Z,_ as h}from"./index-C-IfdMnF.js";const C="/admin/business/danye";function ie(){return w({url:C,method:"get"})}function ue(f){return w({url:`${C}/${f}`,method:"get"})}function ee(f,v){return w({url:`${C}/${f}`,method:"put",data:v})}function de(f,v){return w({url:`${C}/${f}/image-optimizer`,method:"put",data:v})}const te={key:0,class:"form-tip"},le={class:"editor-container"},ne={class:"editor-toolbar"},oe=["innerHTML"],ae=G({__name:"DanyeFormDialog",props:{modelValue:{type:Boolean},danye:{}},emits:["update:modelValue","success"],setup(f,{emit:v}){const m=f,E=v,D=L({get:()=>m.modelValue,set:t=>E("update:modelValue",t)}),b=V(),x=V(),B=V(!1),d=V(!1),S=L(()=>{var t;return((t=m.danye)==null?void 0:t.isTitleEditable)??!0}),l=Y({title:"",content:""}),F={title:[{required:!0,message:"请输入标题",trigger:"blur"},{max:100,message:"标题不能超过100个字符",trigger:"blur"}],content:[{required:!0,message:"请输入内容",trigger:"blur"}]};J(()=>m.modelValue,t=>{t&&m.danye&&(l.title=m.danye.title,l.content=m.danye.content||"",d.value=!1)});const y=(t,e=!1)=>{var k,$;if(d.value)return;const s=($=(k=x.value)==null?void 0:k.$el)==null?void 0:$.querySelector("textarea");if(!s)return;const r=s.selectionStart,a=s.selectionEnd,u=l.content.substring(r,a);let c;e?c=`<${t} />`:c=`<${t}>${u}</${t}>`,l.content=l.content.substring(0,r)+c+l.content.substring(a),I(()=>{const i=e?r+c.length:r+t.length+2+u.length;s.setSelectionRange(i,i),s.focus()})},N=async()=>{if(!d.value)try{const{value:t}=await P.prompt("请输入图片URL","插入图片",{confirmButtonText:"确定",cancelButtonText:"取消",inputPlaceholder:"https://example.com/image.jpg"});if(t){const e=`<img src="${t}" alt="图片" style="max-width: 100%;" />`;R(e)}}catch{}},H=async()=>{var t,e;if(!d.value)try{const{value:s}=await P.prompt("请输入链接URL","插入链接",{confirmButtonText:"确定",cancelButtonText:"取消",inputPlaceholder:"https://example.com"});if(s){const r=(e=(t=x.value)==null?void 0:t.$el)==null?void 0:e.querySelector("textarea"),a=r&&l.content.substring(r.selectionStart,r.selectionEnd)||"链接文字",u=`<a href="${s}" target="_blank">${a}</a>`;R(u)}}catch{}},R=t=>{var a,u;const e=(u=(a=x.value)==null?void 0:a.$el)==null?void 0:u.querySelector("textarea");if(!e){l.content+=t;return}const s=e.selectionStart,r=e.selectionEnd;l.content=l.content.substring(0,s)+t+l.content.substring(r),I(()=>{const c=s+t.length;e.setSelectionRange(c,c),e.focus()})},j=()=>{d.value=!d.value},A=()=>{var t;l.title="",l.content="",d.value=!1,(t=b.value)==null||t.resetFields()},z=()=>{D.value=!1,A()},O=async()=>{if(!(!b.value||!m.danye)){try{await b.value.validate()}catch{return}B.value=!0;try{const t={content:l.content};S.value&&(t.title=l.title),await ee(m.danye.id,t),Z.success("保存成功"),E("success"),z()}finally{B.value=!1}}};return(t,e)=>{const s=p("el-input"),r=p("el-form-item"),a=p("el-button"),u=p("el-button-group"),c=p("el-icon"),k=p("el-form"),$=p("el-dialog");return T(),M($,{modelValue:D.value,"onUpdate:modelValue":e[7]||(e[7]=i=>D.value=i),title:"编辑单页",width:"800px","close-on-click-modal":!1,onClose:z},{footer:o(()=>[n(a,{onClick:z},{default:o(()=>[...e[15]||(e[15]=[g("取消",-1)])]),_:1}),n(a,{type:"primary",loading:B.value,onClick:O},{default:o(()=>[...e[16]||(e[16]=[g(" 保存 ",-1)])]),_:1},8,["loading"])]),default:o(()=>[n(k,{ref_key:"formRef",ref:b,model:l,rules:F,"label-width":"100px"},{default:o(()=>[n(r,{label:"标题",prop:"title"},{default:o(()=>[n(s,{modelValue:l.title,"onUpdate:modelValue":e[0]||(e[0]=i=>l.title=i),placeholder:"请输入标题",maxlength:"100",disabled:!S.value},null,8,["modelValue","disabled"]),S.value?K("",!0):(T(),U("div",te," 系统预设单页标题不可编辑 "))]),_:1}),n(r,{label:"内容",prop:"content"},{default:o(()=>[_("div",le,[_("div",ne,[n(u,null,{default:o(()=>[n(a,{size:"small",onClick:e[1]||(e[1]=i=>y("b"))},{default:o(()=>[...e[8]||(e[8]=[_("strong",null,"B",-1)])]),_:1}),n(a,{size:"small",onClick:e[2]||(e[2]=i=>y("i"))},{default:o(()=>[...e[9]||(e[9]=[_("em",null,"I",-1)])]),_:1}),n(a,{size:"small",onClick:e[3]||(e[3]=i=>y("u"))},{default:o(()=>[...e[10]||(e[10]=[_("u",null,"U",-1)])]),_:1}),n(a,{size:"small",onClick:e[4]||(e[4]=i=>y("p"))},{default:o(()=>[...e[11]||(e[11]=[g(" 段落 ",-1)])]),_:1}),n(a,{size:"small",onClick:e[5]||(e[5]=i=>y("br",!0))},{default:o(()=>[...e[12]||(e[12]=[g(" 换行 ",-1)])]),_:1})]),_:1}),n(u,{style:{"margin-left":"8px"}},{default:o(()=>[n(a,{size:"small",onClick:N},{default:o(()=>[n(c,null,{default:o(()=>[n(q(Q))]),_:1}),e[13]||(e[13]=g(" 图片 ",-1))]),_:1}),n(a,{size:"small",onClick:H},{default:o(()=>[n(c,null,{default:o(()=>[n(q(W))]),_:1}),e[14]||(e[14]=g(" 链接 ",-1))]),_:1})]),_:1}),n(u,{style:{"margin-left":"8px"}},{default:o(()=>[n(a,{size:"small",type:d.value?"primary":"default",onClick:j},{default:o(()=>[g(X(d.value?"编辑":"预览"),1)]),_:1},8,["type"])]),_:1})]),d.value?(T(),U("div",{key:1,class:"editor-preview",innerHTML:l.content},null,8,oe)):(T(),M(s,{key:0,ref_key:"textareaRef",ref:x,modelValue:l.content,"onUpdate:modelValue":e[6]||(e[6]=i=>l.content=i),type:"textarea",rows:15,placeholder:"请输入内容(支持HTML格式)",class:"editor-textarea"},null,8,["modelValue"]))])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])}}}),se=h(ae,[["__scopeId","data-v-a99f3b28"]]),ce=Object.freeze(Object.defineProperty({__proto__:null,default:se},Symbol.toStringTag,{value:"Module"}));export{se as D,ue as a,ce as b,ie as g,de as t};
|