UNPKG

ll-package

Version:

2 lines (1 loc) 745 B
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const w=require("../StyleContext.js"),x=require("./useHMR.js"),t=require("vue");function y(v,h,p,e){const a=w.useStyleInject(),u=t.shallowRef(""),i=t.shallowRef();t.watchEffect(()=>{u.value=[v,...h.value].join("%")});const d=x.default(),f=s=>{a.value.cache.update(s,l=>{const[n=0,c]=l||[];return n-1===0?(e==null||e(c,!1),null):[n-1,c]})};return t.watch(u,(s,l)=>{l&&f(l),a.value.cache.update(s,n=>{const[c=0,r]=n||[];let o=r;process.env.NODE_ENV!=="production"&&r&&d&&(e==null||e(o,d),o=null);const g=o||p();return[c+1,g]}),i.value=a.value.cache.get(u.value)[1]},{immediate:!0}),t.onBeforeUnmount(()=>{f(u.value)}),i}exports.default=y;