UNPKG

hongluan-ui

Version:
55 lines (50 loc) 1.69 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var vue = require('vue'); require('../../../hooks/index.js'); require('../../../tokens/index.js'); var collapse = require('../../../tokens/collapse.js'); var index = require('../../../hooks/use-namespace/index.js'); var index$1 = require('../../../hooks/use-id/index.js'); const useCollapseItem = (props) => { const collapse$1 = vue.inject(collapse.collapseContextKey); const { namespace } = index.useNamespace("collapse"); const focusing = vue.ref(false); const isClick = vue.ref(false); const idInjection = index$1.useIdInjection(); const id = vue.computed(() => idInjection.current++); const name = vue.computed(() => { var _a; return (_a = props.name) != null ? _a : `${namespace.value}-id-${idInjection.prefix}-${vue.unref(id)}`; }); const isActive = vue.computed(() => collapse$1 == null ? void 0 : collapse$1.activeNames.value.includes(vue.unref(name))); const handleFocus = () => { setTimeout(() => { if (!isClick.value) { focusing.value = true; } else { isClick.value = false; } }, 50); }; const handleHeaderClick = () => { if (props.disabled) return; collapse$1 == null ? void 0 : collapse$1.handleItemClick(vue.unref(name)); focusing.value = false; isClick.value = true; }; const handleEnterClick = () => { collapse$1 == null ? void 0 : collapse$1.handleItemClick(vue.unref(name)); }; return { focusing, id, isActive, handleFocus, handleHeaderClick, handleEnterClick }; }; exports.useCollapseItem = useCollapseItem; //# sourceMappingURL=use-collapse-item.js.map