ant-design-x-vue
Version:
Craft AI-driven interfaces effortlessly
2 lines (1 loc) • 1.82 kB
JavaScript
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("vue"),i=o.defineComponent({name:"AXTransitionCollapse",__name:"TransitionCollapse",props:{prefixCls:{default:"ax"}},setup(d){const s=d,a=o.useSlots(),n=o.computed(()=>s.prefixCls+"-transition-collapse"),e={beforeEnter(t){t.dataset||(t.dataset={}),t.dataset.oldPaddingTop=t.style.paddingTop,t.dataset.oldPaddingBottom=t.style.paddingBottom,t.style.maxHeight="0",t.style.paddingTop="0",t.style.paddingBottom="0"},enter(t){t.dataset.oldOverflow=t.style.overflow,t.scrollHeight!==0?(t.style.maxHeight=`${t.scrollHeight}px`,t.style.paddingTop=t.dataset.oldPaddingTop,t.style.paddingBottom=t.dataset.oldPaddingBottom):(t.style.maxHeight=`${t.dataset.oldMaxHeight||"999"}px`,t.style.paddingTop=t.dataset.oldPaddingTop,t.style.paddingBottom=t.dataset.oldPaddingBottom),t.style.overflow="hidden"},afterEnter(t){t.style.maxHeight="",t.style.overflow=t.dataset.oldOverflow},beforeLeave(t){t.dataset||(t.dataset={}),t.dataset.oldMaxHeight=t.scrollHeight,t.dataset.oldPaddingTop=t.style.paddingTop,t.dataset.oldPaddingBottom=t.style.paddingBottom,t.dataset.oldOverflow=t.style.overflow,t.style.overflow="hidden",t.style.maxHeight=`${t.scrollHeight}px`},leave(t){t.scrollHeight!==0&&(t.style.maxHeight="0",t.style.paddingTop="0",t.style.paddingBottom="0")},afterLeave(t){t.style.maxHeight="",t.style.overflow=t.dataset.oldOverflow,t.style.paddingTop=t.dataset.oldPaddingTop,t.style.paddingBottom=t.dataset.oldPaddingBottom}};return()=>o.createVNode(o.Transition,{name:n.value,onBeforeEnter:e.beforeEnter,onEnter:e.enter,onAfterEnter:e.afterEnter,onBeforeLeave:e.beforeLeave,onLeave:e.leave,onAfterLeave:e.afterLeave},{default:()=>{var t;return[(t=a.default)==null?void 0:t.call(a)]}})}});exports.default=i;
;