export default {}

@@ -1,18 +1,1427 @@
-export default %7B
+import %7B warn %7D from 'core/util/index'%0A%0A// Because the vdom's children update algorithm is %22unstable%22 - i.e.%0A// it doesn't guarantee the relative positioning of removed elements,%0A// we force transition-group to update its children into two passes:%0A// in the first pass, we remove all nodes that need to be removed,%0A// triggering their leaving transition; in the second pass, we insert/move%0A// into the final disired state. This way in the second pass removed%0A// nodes will remain where they should be.%0A%0Aexport default %7B%0A  props: %5B'tag'%5D,%0A%0A  beforeUpdate () %7B%0A    this.__patch__(this._vnode, this.kept)%0A    this._vnode = this.kept%0A  %7D,%0A%0A  render (h) %7B%0A    const prevMap = this.prevChildrenMap%0A    const children = this.$slots.default %7C%7C %5B%5D%0A    const map = this.prevChildrenMap = %7B%7D%0A    const kept = %5B%5D%0A%0A    for (let i = 0; i %3C children.length; i++) %7B%0A      const c = children%5Bi%5D%0A      if (c.tag) %7B%0A        if (c.key == null) %7B%0A          process.env.NODE_ENV !== 'production' && warn(%0A            'transition-group children must be keyed.'%0A          )%0A          c.key = i%0A        %7D%0A        map%5Bc.key%5D = c%0A        ;(c.data %7C%7C (c.data = %7B%7D)).transition = %7B name: 'fade' %7D%0A        if (prevMap && prevMap%5Bc.key%5D) %7B%0A          kept.push(c)%0A        %7D%0A      %7D%0A    %7D%0A%0A    const tag = this.tag %7C%7C this.$vnode.data.tag %7C%7C 'span'%0A    if (this._isMounted) %7B%0A      this.kept = h(tag, null, kept)%0A    %7D%0A%0A    return h(tag, null, children)%0A  %7D%0A
 %7D%0A

implement transition-group