@cran/vue.use
Version:
Cranberry Vue Use Utilities
16 lines (15 loc) • 705 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.useActiveElement = void 0;
const vue_ref_1 = require("@cran/vue.ref");
const useCounter_1 = require("../state/useCounter");
const useEventListener_1 = require("./useEventListener");
function useActiveElement() {
const { counter, incr, } = (0, useCounter_1.useCounter)(1);
(0, useEventListener_1.useEventListener)(window, "focus", incr, { capture: true, });
(0, useEventListener_1.useEventListener)(window, "blur", incr, { capture: true, });
return (0, vue_ref_1.eager)(function onChange() {
return (counter.value && document.activeElement);
});
}
exports.useActiveElement = useActiveElement;