bootstrap-vue-next
Version:
BootstrapVueNext is an early and lovely component library for Vue 3 & Nuxt 3 based on Bootstrap 5 and Typescript.
3 lines (2 loc) • 865 B
JavaScript
;const e=require("./index-CnY1um_J.js"),u=require("vue");exports.useCountdown=(a,t,s={})=>{const o=u.readonly(u.toRef(a)),r=u.ref(!1),l=u.ref(Date.now()+o.value),{isActive:v,pause:n,resume:i,timestamp:c}=e.useTimestamp({interval:t,controls:!0,callback:e=>{e>=l.value&&(r.value=!1,n())},...s}),m=u.computed((()=>l.value-c.value)),p=()=>{l.value=Date.now()+o.value,i()};u.watch(o,(()=>{p()}));return{isActive:u.readonly(v),isPaused:u.readonly(r),stop:()=>{n(),c.value=l.value,r.value=!1},pause:()=>{r.value=!0,n()},resume:()=>{r.value=!1;const e=l.value-c.value;l.value=Date.now()+e,i()},restart:p,value:m}},exports.useCountdownHover=(a,t,s)=>{const o=e.useElementHover(a);return u.watch(o,(e=>{e?u.toValue(t).noHoverPause||s.pause():u.toValue(t).noResumeOnHoverLeave||s.resume()})),{isHovering:o}};
//# sourceMappingURL=useCountdownHover-pVk1zcyl.js.map