htmlTextarea-ifQEox_y.js 1.1 KB

1
  1. import{d as c,f as d,w as u,c as i,_ as p,$ as f,a1 as h,a0 as C}from"./vue-B5pbXMv7.js";import{_}from"./entry/index-BOVpYCVt-1731915664217.js";import"./antd-DXvsKA0x.js";const g=c({name:"HtmlTextarea",props:{modelValue:{type:String,required:!0},rows:{type:Number,default:4},maxlength:{type:Number,default:1e3}},emits:["update:modelValue"],setup(e,{emit:s}){const t=d(!1),a=d({messageContent:e.modelValue});u(()=>e.modelValue,o=>{a.value.messageContent=o}),u(()=>a.value.messageContent,o=>{s("update:modelValue",o)});const l=()=>{t.value=!0},r=()=>{t.value=!1},n=()=>{t.value=!0},m=i(()=>a.value.messageContent.replace(/{{(.*?)}}/g,'<span class="highlight">$1</span>'));return{isFocused:t,taskForm:a,handleFocus:l,handleBlur:r,handleClick:n,formattedContent:m}}}),v={class:"html-textarea"},k=["innerHTML"];function V(e,s,t,a,l,r){return p(),f("div",v,[h("div",{innerHTML:e.formattedContent,class:"display-area",onClick:s[0]||(s[0]=(...n)=>e.handleClick&&e.handleClick(...n))},null,8,k),C("",!0)])}const B=_(g,[["render",V],["__scopeId","data-v-c3d5d023"]]);export{B as default};