{"version":3,"file":"transition.cjs","sources":["../../../../../../packages/vue-components/transition/src/transition.tsx"],"sourcesContent":["import type { BaseTransitionProps, CSSProperties, TransitionGroupProps, TransitionProps } from 'vue';\nimport { tuple } from '@antdv/utils';\nimport { TransitionGroup } from 'vue';\n\nconst SelectPlacements = tuple('bottomLeft', 'bottomRight', 'topLeft', 'topRight');\nexport type SelectCommonPlacement = (typeof SelectPlacements)[number];\n\nfunction getTransitionDirection(placement: SelectCommonPlacement | undefined) {\n  if (placement !== undefined && (placement === 'topLeft' || placement === 'topRight'))\n    return `slide-down`;\n\n  return `slide-up`;\n}\n\nexport function getTransitionProps(transitionName: string, opt: TransitionProps = {}) {\n  const transitionProps: TransitionProps = transitionName\n    ? {\n        name: transitionName,\n        appear: true,\n        // type: 'animation',\n        // appearFromClass: `${transitionName}-appear ${transitionName}-appear-prepare`,\n        // appearActiveClass: `antdv-base-transtion`,\n        // appearToClass: `${transitionName}-appear ${transitionName}-appear-active`,\n        enterFromClass: `${transitionName}-enter ${transitionName}-enter-prepare ${transitionName}-enter-start`,\n        enterActiveClass: `${transitionName}-enter ${transitionName}-enter-prepare`,\n        enterToClass: `${transitionName}-enter ${transitionName}-enter-active`,\n        leaveFromClass: `${transitionName}-leave ${transitionName}-leave-prepare ${transitionName}-leave-start`,\n        leaveActiveClass: `${transitionName}-leave ${transitionName}-leave-prepare`,\n        leaveToClass: `${transitionName}-leave ${transitionName}-leave-active`,\n        ...opt,\n      }\n    : { css: false, ...opt };\n  return transitionProps;\n}\n\nexport function getTransitionGroupProps(transitionName: string, opt: TransitionProps = {}) {\n  const transitionProps: TransitionGroupProps = transitionName\n    ? {\n        name: transitionName,\n        appear: true,\n        // appearFromClass: `${transitionName}-appear ${transitionName}-appear-prepare`,\n        appearActiveClass: `${transitionName}`,\n        appearToClass: `${transitionName}-appear ${transitionName}-appear-active`,\n        enterFromClass: `${transitionName}-appear ${transitionName}-enter ${transitionName}-appear-prepare ${transitionName}-enter-prepare`,\n        enterActiveClass: `${transitionName}`,\n        enterToClass: `${transitionName}-enter ${transitionName}-appear ${transitionName}-appear-active ${transitionName}-enter-active`,\n        leaveActiveClass: `${transitionName} ${transitionName}-leave`,\n        leaveToClass: `${transitionName}-leave-active`,\n        ...opt,\n      }\n    : { css: false, ...opt };\n  return transitionProps;\n}\n\nexport declare type MotionEvent = (TransitionEvent | AnimationEvent) & {\n  deadline?: boolean;\n};\n\nexport declare type MotionEventHandler = (element: Element, done?: () => void) => CSSProperties;\n\nexport declare type MotionEndEventHandler = (element: Element, done?: () => void) => boolean | void;\n\nexport interface CSSMotionProps extends Partial<BaseTransitionProps<Element>> {\n  name?: string;\n  css?: boolean;\n}\n\nfunction getTransitionName(rootPrefixCls: string, motion: string, transitionName?: string) {\n  if (transitionName !== undefined)\n    return transitionName;\n\n  return `${rootPrefixCls}-${motion}`;\n}\n\nexport { getTransitionDirection, getTransitionName, TransitionGroup };\n"],"names":["SelectPlacements","tuple","getTransitionDirection","placement","undefined","getTransitionProps","transitionName","opt","transitionProps","name","appear","enterFromClass","enterActiveClass","enterToClass","leaveFromClass","leaveActiveClass","leaveToClass","css","getTransitionGroupProps","appearActiveClass","appearToClass","getTransitionName","rootPrefixCls","motion"],"mappings":"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"}