vuepress-plugin-md-enhance
Version:
Markdown enhancement plugin for vuepress
3 lines (2 loc) • 1.05 kB
JavaScript
import{useToggle as a,useEventListener as r,useResizeObserver as p}from"@vueuse/core";import{defineComponent as u,shallowRef as v,ref as m,h as e}from"vue";import"../styles/md-demo.scss";var c=u({name:"MdDemo",props:{id:{type:String,required:!0},title:String},slots:Object,setup(l,{slots:s}){const[o,i]=a(!1),t=v(),d=m("0");let n=null;return r("beforeprint",()=>{i(!0)}),r("afterprint",()=>{n!==null&&i(n),n=null}),p(t,()=>{o.value&&(d.value=`${t.value.clientHeight+14}px`)}),()=>e("div",{class:"vp-container vp-md-demo",id:l.id},[e("div",{class:"vp-container-header"},[e("button",{type:"button",title:"toggle",class:["vp-md-demo-toggle-button",o.value?"down":"end"],onClick:()=>{d.value=o.value?"0":`${t.value.clientHeight+14}px`,i()}}),l.title?e("div",{class:"vp-container-title"},decodeURIComponent(l.title)):null]),e("div",{class:"vp-md-demo-display"},s.default()),e("div",{class:"vp-md-demo-code-wrapper",style:{height:d.value}},e("div",{ref:t,class:"vp-md-demo-codes"},s.code()))])}});export{c as default};
//# sourceMappingURL=MdDemo.js.map