Home / File/ transition-group.ts — vue Source File

transition-group.ts — vue Source File

Architecture documentation for transition-group.ts, a typescript file in the vue codebase. 9 imports, 1 dependents.

File typescript WebPlatform WebRuntime 9 imports 1 dependents 6 functions

Entity Profile

Dependency Diagram

graph LR
  f7026368_bf6f_2dd0_00ce_f887a9165898["transition-group.ts"]
  4092d37a_e401_1398_7538_ace18f6c50d5["transition.ts"]
  f7026368_bf6f_2dd0_00ce_f887a9165898 --> 4092d37a_e401_1398_7538_ace18f6c50d5
  085b3402_189f_178a_c080_76b4cbb47ee4["extractTransitionData"]
  f7026368_bf6f_2dd0_00ce_f887a9165898 --> 085b3402_189f_178a_c080_76b4cbb47ee4
  90a2398a_1498_3263_c62e_0c064dd2c9b3["index"]
  f7026368_bf6f_2dd0_00ce_f887a9165898 --> 90a2398a_1498_3263_c62e_0c064dd2c9b3
  b1d7371d_a3c4_fbe8_baf3_01e96e31584f["class-util"]
  f7026368_bf6f_2dd0_00ce_f887a9165898 --> b1d7371d_a3c4_fbe8_baf3_01e96e31584f
  7dd9c364_3c71_bace_8bec_7942694994c8["lifecycle"]
  f7026368_bf6f_2dd0_00ce_f887a9165898 --> 7dd9c364_3c71_bace_8bec_7942694994c8
  d2b9dc3a_c47b_b472_3d1f_741da3f12b30["transition-util"]
  f7026368_bf6f_2dd0_00ce_f887a9165898 --> d2b9dc3a_c47b_b472_3d1f_741da3f12b30
  973389ac_8625_30a3_53ce_b1b48fae58c5["vnode"]
  f7026368_bf6f_2dd0_00ce_f887a9165898 --> 973389ac_8625_30a3_53ce_b1b48fae58c5
  ba925ef2_b0f4_efe3_c23d_fe293c46b2c1["vnode"]
  f7026368_bf6f_2dd0_00ce_f887a9165898 --> ba925ef2_b0f4_efe3_c23d_fe293c46b2c1
  800bf47d_e926_ea5e_e853_f265c156d637["create-component"]
  f7026368_bf6f_2dd0_00ce_f887a9165898 --> 800bf47d_e926_ea5e_e853_f265c156d637
  345cbf26_ec8f_2b4b_f075_66c927a0e755["index.ts"]
  345cbf26_ec8f_2b4b_f075_66c927a0e755 --> f7026368_bf6f_2dd0_00ce_f887a9165898
  style f7026368_bf6f_2dd0_00ce_f887a9165898 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

// Provides transition support for list items.
// supports move transitions using the FLIP technique.

// Because the vdom's children update algorithm is "unstable" - i.e.
// it doesn't guarantee the relative positioning of removed elements,
// we force transition-group to update its children into two passes:
// in the first pass, we remove all nodes that need to be removed,
// triggering their leaving transition; in the second pass, we insert/move
// into the final desired state. This way in the second pass removed
// nodes will remain where they should be.

import { warn, extend } from 'core/util/index'
import { addClass, removeClass } from 'web/runtime/class-util'
import { transitionProps, extractTransitionData } from './transition'
import { setActiveInstance } from 'core/instance/lifecycle'

import {
  hasTransition,
  getTransitionInfo,
  transitionEndEvent,
  addTransitionClass,
  removeTransitionClass
} from 'web/runtime/transition-util'
import VNode from 'core/vdom/vnode'
import { VNodeWithData } from 'types/vnode'
import { getComponentName } from 'core/vdom/create-component'

const props = extend(
  {
    tag: String,
    moveClass: String
  },
  transitionProps
)

delete props.mode

export default {
  props,

  beforeMount() {
    const update = this._update
    this._update = (vnode, hydrating) => {
      const restoreActiveInstance = setActiveInstance(this)
      // force removing pass
      this.__patch__(
        this._vnode,
        this.kept,
        false, // hydrating
        true // removeOnly (!important, avoids unnecessary moves)
      )
      this._vnode = this.kept
      restoreActiveInstance()
      update.call(this, vnode, hydrating)
    }
  },

  render(h: Function) {
    const tag: string = this.tag || this.$vnode.data.tag || 'span'
    const map: Record<string, any> = Object.create(null)
// ... (145 more lines)

Domain

Subdomains

Dependencies

Frequently Asked Questions

What does transition-group.ts do?
transition-group.ts is a source file in the vue codebase, written in typescript. It belongs to the WebPlatform domain, WebRuntime subdomain.
What functions are defined in transition-group.ts?
transition-group.ts defines 6 function(s): applyTranslation, callPendingCbs, default.beforeMount, default.render, default.updated, recordPosition.
What does transition-group.ts depend on?
transition-group.ts imports 9 module(s): class-util, create-component, extractTransitionData, index, lifecycle, transition-util, transition.ts, vnode, and 1 more.
What files import transition-group.ts?
transition-group.ts is imported by 1 file(s): index.ts.
Where is transition-group.ts in the architecture?
transition-group.ts is located at src/platforms/web/runtime/components/transition-group.ts (domain: WebPlatform, subdomain: WebRuntime, directory: src/platforms/web/runtime/components).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free