useClipboard-BueC_kVL.js 1.6 KB

1
  1. import{_ as y}from"./ContentWrap.vue_vue_type_script_setup_true_lang-BQQVoJIW.js";import{r as i,v as C,x as r,J as x,K as m,M as v,u as a,y as d,B as f,a3 as b,P as B,ad as k}from"./vue-chunks-COp0tDkU.js";import"./index-XQEkcq4y.js";import{F as V}from"./element-plus-B-YefleC.js";/* empty css *//* empty css */const g=()=>{const n=i(!1),s=i(""),l=i(!1);!navigator.clipboard&&!document.execCommand?l.value=!1:l.value=!0;const p=e=>{if(navigator.clipboard){navigator.clipboard.writeText(e).then(()=>{s.value=e,n.value=!0,u()});return}const t=document.createElement("input");t.setAttribute("readonly","readonly"),t.setAttribute("value",e),document.body.appendChild(t),t.select(),t.setSelectionRange(0,9999),document.execCommand("copy")&&(s.value=e,document.execCommand("copy"),n.value=!0,u()),document.body.removeChild(t)},u=()=>{setTimeout(()=>{n.value=!1},1500)};return{copy:p,text:s,copied:n,isSupported:l}},h={key:0},S={key:0},A={key:1},E={key:1},D=C({__name:"useClipboard",setup(n){const{copy:s,copied:l,text:p,isSupported:u}=g(),e=i("");return(t,o)=>{const _=k("BaseButton");return r(),x(a(y),{title:"useClipboard"},{default:m(()=>[v(a(V),{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=c=>e.value=c),placeholder:"请输入要复制的内容"},null,8,["modelValue"]),a(u)?(r(),d("div",h,[v(_,{onClick:o[1]||(o[1]=c=>a(s)(e.value)),type:"primary",class:"mt-20px"},{default:m(()=>[a(l)?(r(),d("span",A,"已复制")):(r(),d("span",S,"复制"))]),_:1}),f("p",null,[o[2]||(o[2]=b(" 当前已复制: ")),f("code",null,B(a(p)||"none"),1)])])):(r(),d("p",E," 你的浏览器不支持 Clipboard API "))]),_:1})}}});export{D as default};