@opensig/opendesign
Version:
19 lines (18 loc) • 730 B
JavaScript
;
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const core = require("@vueuse/core");
const vue = require("vue");
const dom = require("../_utils/dom.js");
function useResponseCssVar(prop, target, options) {
const { debounce = 100, transform, ...cssVarOptions } = options ?? {};
const cssVar = core.useCssVar(prop, target, cssVarOptions);
core.useEventListener("resize", core.useDebounceFn(() => {
const el = vue.toValue(target) ?? document.documentElement;
cssVar.value = dom.getCssVariable(vue.toValue(prop), el);
}, debounce));
if (transform) {
return vue.computed(() => transform(cssVar.value));
}
return cssVar;
}
exports.useResponseCssVar = useResponseCssVar;