UNPKG

tdesign-vue-next

Version:
1 lines 4.21 kB
{"version":3,"file":"useCollapseAnimation.mjs","sources":["../../../components/hooks/useCollapseAnimation.ts"],"sourcesContent":["export default function useCollapseAnimation() {\n const beforeEnter = (el: HTMLElement) => {\n el.dataset.oldPaddingTop = el.style.paddingTop;\n el.dataset.oldPaddingBottom = el.style.paddingBottom;\n\n el.style.height = '0';\n el.style.paddingTop = '0';\n el.style.paddingBottom = '0';\n };\n const enter = (el: HTMLElement) => {\n el.dataset.oldOverflow = el.style.overflow;\n el.style.height = `${el.scrollHeight}px`;\n el.style.paddingTop = el.dataset.oldPaddingTop;\n el.style.paddingBottom = el.dataset.oldPaddingBottom;\n el.style.overflow = 'hidden';\n };\n const afterEnter = (el: HTMLElement) => {\n el.style.height = '';\n el.style.overflow = el.dataset.oldOverflow;\n };\n const beforeLeave = (el: HTMLElement) => {\n el.dataset.oldPaddingTop = el.style.paddingTop;\n el.dataset.oldPaddingBottom = el.style.paddingBottom;\n el.dataset.oldOverflow = el.style.overflow;\n\n el.style.height = `${el.scrollHeight}px`;\n el.style.overflow = 'hidden';\n };\n const leave = (el: HTMLElement) => {\n if (el.scrollHeight !== 0) {\n el.style.height = '0';\n el.style.paddingTop = '0';\n el.style.paddingBottom = '0';\n }\n };\n const afterLeave = (el: HTMLElement) => {\n el.style.height = '';\n el.style.overflow = el.dataset.oldOverflow;\n el.style.paddingTop = el.dataset.oldPaddingTop;\n el.style.paddingBottom = el.dataset.oldPaddingBottom;\n };\n\n return {\n beforeEnter,\n enter,\n afterEnter,\n beforeLeave,\n leave,\n afterLeave,\n };\n}\n"],"names":["useCollapseAnimation","beforeEnter","el","dataset","oldPaddingTop","style","paddingTop","oldPaddingBottom","paddingBottom","height","enter","oldOverflow","overflow","concat","scrollHeight","afterEnter","beforeLeave","leave","afterLeave"],"mappings":"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"}