import{useLocale as L,Message as A}from"@vuepress/helper/client";import{useMediaQuery as C,watchImmediate as M,useClipboard as N,useEventListener as g}from"@vueuse/core";import{computed as _,nextTick as k}from"vue";import{onContentUpdated as z}from"vuepress/client";import"@vuepress/helper/message.css";import"./styles/copy-code.css";import"./styles/vars.css";const I='',R=/language-(shellscript|shell|bash|sh|zsh)/,T=({selector:h,ignoreSelector:i,inlineSelector:u,duration:n=2e3,locales:v,showInMobile:b,transform:p})=>{if(__VUEPRESS_SSR__)return;const f=C("(max-width: 419px)"),s=_(()=>!f.value||b),a=L(v),y=o=>{if(o.hasAttribute("copy-code"))return;const e=document.createElement("button");e.type="button",e.classList.add("vp-copy-code-button"),e.setAttribute("aria-label",a.value.copy),e.setAttribute("data-copied",a.value.copied),o.parentElement?.insertBefore(e,o),o.setAttribute("copy-code","")},d=()=>{document.body.classList.toggle("no-copy-code",!s.value),s.value&&document.querySelectorAll(h).forEach(y)};M(s,()=>k(d),{flush:"post"}),z(o=>{o!=="beforeUnmount"&&d()});const{copy:m}=N({legacy:!0}),l=new WeakMap;let w=null;const S=async(o,e,t)=>{const c=e.cloneNode(!0);i&&c.querySelectorAll(i).forEach(x=>{x.remove()}),p&&p(c);let r=c.textContent||"";if(R.test(o.className)&&(r=r.replace(/^ *(\$|>) /gm,"")),await m(r),n<=0)return;t.classList.add("copied"),clearTimeout(l.get(t));const E=setTimeout(()=>{t.classList.remove("copied"),t.blur(),l.delete(t)},n);l.set(t,E)};g("click",o=>{const e=o.target;if(s.value&&e.matches('div[class*="language-"] > button.vp-copy-code-button')){const t=e.parentElement,c=e.nextElementSibling;if(!t||!c)return;S(t,c,e)}},{passive:!0}),u&&g("dblclick",o=>{const e=o.target;if(s.value&&e.matches(u)){const t=window.getSelection();t&&(e.contains(t.anchorNode)||e.contains(t.focusNode))&&t.removeAllRanges(),m(e.textContent||""),(w??=new A).pop(`${I}${a.value.copied} `,n)}},{passive:!0})};export{T as u};
//# sourceMappingURL=useCopyCode-D3STBXy7.js.map