UNPKG

element-plus

Version:
94 lines (93 loc) 2.34 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useTransitionFallthrough = exports.useTransitionFallthroughEmits = void 0; /* istanbul ignore file */ const vue_1 = require("vue"); const AFTER_APPEAR = 'after-appear'; const AFTER_ENTER = 'after-enter'; const AFTER_LEAVE = 'after-leave'; const APPEAR = 'appear'; const APPEAR_CANCELLED = 'appear-cancelled'; const BEFORE_ENTER = 'before-enter'; const BEFORE_LEAVE = 'before-leave'; const ENTER = 'enter'; const ENTER_CANCELLED = 'enter-cancelled'; const LEAVE = 'leave'; const LEAVE_CANCELLED = 'leave-cancelled'; exports.useTransitionFallthroughEmits = [ AFTER_APPEAR, AFTER_ENTER, AFTER_LEAVE, APPEAR, APPEAR_CANCELLED, BEFORE_ENTER, BEFORE_LEAVE, ENTER, ENTER_CANCELLED, LEAVE, LEAVE_CANCELLED, ]; // Sometimes we want to delegate the transition emitted event // we have to right the function locally, which is not a good // approach to this, so we created this hook for the event // fallthrough /** * NOTE: * This is only a delegator for delegating transition callbacks. * Use this at your need. */ /** * Simple usage * * In your setups: * * setup() { * const fallthroughMethods = useTransitionFallthrough() * return fallthrough * } * * In your template: * * <template> * <transition name="whatever" v-bind="fallthrough"> * <slot /> * </transition> * </template> * */ const useTransitionFallthrough = () => { const { emit } = vue_1.getCurrentInstance(); return { onAfterAppear: () => { emit(AFTER_APPEAR); }, onAfterEnter: () => { emit(AFTER_ENTER); }, onAfterLeave: () => { emit(AFTER_LEAVE); }, onAppearCancelled: () => { emit(APPEAR_CANCELLED); }, onBeforeEnter: () => { emit(BEFORE_ENTER); }, onBeforeLeave: () => { emit(BEFORE_LEAVE); }, onEnter: () => { emit(ENTER); }, onEnterCancelled: () => { emit(ENTER_CANCELLED); }, onLeave: () => { emit(LEAVE); }, onLeaveCancelled: () => { emit(LEAVE_CANCELLED); }, }; }; exports.useTransitionFallthrough = useTransitionFallthrough;