From d17ee0dd3e835a4b2d932efd66a127932193ebb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8C=E8=B4=A7=E6=9C=BA=E5=99=A8=E4=BA=BA?= Date: Wed, 23 Nov 2022 11:32:44 +0800 Subject: [PATCH] fix: Tabs missing slide motion def --- components/tabs/style/motion.tsx | 52 ++++++++++++++++++-------------- 1 file changed, 29 insertions(+), 23 deletions(-) diff --git a/components/tabs/style/motion.tsx b/components/tabs/style/motion.tsx index fe41e195f459..06c79f8bd011 100644 --- a/components/tabs/style/motion.tsx +++ b/components/tabs/style/motion.tsx @@ -1,40 +1,46 @@ import type { TabsToken } from '.'; import type { GenerateStyle } from '../../theme'; +import { initSlideMotion } from '../../style/motion'; const genMotionStyle: GenerateStyle = (token) => { const { componentCls, motionDurationSlow } = token; - return { - [componentCls]: { - [`${componentCls}-switch`]: { - '&-appear, &-enter': { - transition: 'none', + return [ + { + [componentCls]: { + [`${componentCls}-switch`]: { + '&-appear, &-enter': { + transition: 'none', - '&-start': { - opacity: 0, + '&-start': { + opacity: 0, + }, + '&-active': { + opacity: 1, + transition: `opacity ${motionDurationSlow}`, + }, }, - '&-active': { - opacity: 1, - transition: `opacity ${motionDurationSlow}`, - }, - }, - '&-leave': { - position: 'absolute', - transition: 'none', - inset: 0, + '&-leave': { + position: 'absolute', + transition: 'none', + inset: 0, - '&-start': { - opacity: 1, - }, - '&-active': { - opacity: 0, - transition: `opacity ${motionDurationSlow}`, + '&-start': { + opacity: 1, + }, + '&-active': { + opacity: 0, + transition: `opacity ${motionDurationSlow}`, + }, }, }, }, }, - }; + + // Follow code may reuse in other components + [initSlideMotion(token, 'slide-up'), initSlideMotion(token, 'slide-down')], + ]; }; export default genMotionStyle;