getTransitionInfo() — vue Function Reference
Architecture documentation for the getTransitionInfo() function in transition-util.ts from the vue codebase.
Entity Profile
Dependency Diagram
graph TD 37071741_ccab_90b6_f6d5_400706dc8ca0["getTransitionInfo()"] 09de2133_5913_40ae_d30e_b3f99608f41b["transition-util.ts"] 37071741_ccab_90b6_f6d5_400706dc8ca0 -->|defined in| 09de2133_5913_40ae_d30e_b3f99608f41b e0b7b972_87d1_2608_0aad_7c5f68d209d5["whenTransitionEnds()"] e0b7b972_87d1_2608_0aad_7c5f68d209d5 -->|calls| 37071741_ccab_90b6_f6d5_400706dc8ca0 0467d21e_42d5_84ab_135c_01301aa392f3["getTimeout()"] 37071741_ccab_90b6_f6d5_400706dc8ca0 -->|calls| 0467d21e_42d5_84ab_135c_01301aa392f3 style 37071741_ccab_90b6_f6d5_400706dc8ca0 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
src/platforms/web/runtime/transition-util.ts lines 123–193
export function getTransitionInfo(
el: Element,
expectedType?: string
): {
type?: string | null
propCount: number
timeout: number
hasTransform: boolean
} {
const styles: any = window.getComputedStyle(el)
// JSDOM may return undefined for transition properties
const transitionDelays: Array<string> = (
styles[transitionProp + 'Delay'] || ''
).split(', ')
const transitionDurations: Array<string> = (
styles[transitionProp + 'Duration'] || ''
).split(', ')
const transitionTimeout: number = getTimeout(
transitionDelays,
transitionDurations
)
const animationDelays: Array<string> = (
styles[animationProp + 'Delay'] || ''
).split(', ')
const animationDurations: Array<string> = (
styles[animationProp + 'Duration'] || ''
).split(', ')
const animationTimeout: number = getTimeout(
animationDelays,
animationDurations
)
let type: string | undefined | null
let timeout = 0
let propCount = 0
/* istanbul ignore if */
if (expectedType === TRANSITION) {
if (transitionTimeout > 0) {
type = TRANSITION
timeout = transitionTimeout
propCount = transitionDurations.length
}
} else if (expectedType === ANIMATION) {
if (animationTimeout > 0) {
type = ANIMATION
timeout = animationTimeout
propCount = animationDurations.length
}
} else {
timeout = Math.max(transitionTimeout, animationTimeout)
type =
timeout > 0
? transitionTimeout > animationTimeout
? TRANSITION
: ANIMATION
: null
propCount = type
? type === TRANSITION
? transitionDurations.length
: animationDurations.length
: 0
}
const hasTransform: boolean =
type === TRANSITION && transformRE.test(styles[transitionProp + 'Property'])
return {
type,
timeout,
propCount,
hasTransform
}
}
Domain
Subdomains
Defined In
Calls
Called By
Source
Frequently Asked Questions
What does getTransitionInfo() do?
getTransitionInfo() is a function in the vue codebase, defined in src/platforms/web/runtime/transition-util.ts.
Where is getTransitionInfo() defined?
getTransitionInfo() is defined in src/platforms/web/runtime/transition-util.ts at line 123.
What does getTransitionInfo() call?
getTransitionInfo() calls 1 function(s): getTimeout.
What calls getTransitionInfo()?
getTransitionInfo() is called by 1 function(s): whenTransitionEnds.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free