element-plus
Version:
> TODO: description
28 lines (27 loc) • 902 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.useTransition = exports.useTransitionProps = void 0;
const vue_1 = require("vue");
exports.useTransitionProps = {
transitionDuration: {
type: Number,
default: 0.3,
},
transitionShow: String,
transitionHide: String,
};
const useTransition = (props, indicator) => {
const transitionState = vue_1.ref(indicator.value);
vue_1.watch(indicator, val => {
vue_1.nextTick(() => transitionState.value = val);
});
return {
transition: vue_1.computed(() => {
return `el-transition--${transitionState.value
? props.transitionShow
: props.transitionHide}`;
}),
transitionStyle: vue_1.computed(() => `--el-transition-duration: ${props.transitionDuration}s`),
};
};
exports.useTransition = useTransition;