]> git.ipfire.org Git - thirdparty/vuejs/core.git/commitdiff
chore: update
authordaiwei <daiwei521@126.com>
Wed, 12 Mar 2025 03:47:20 +0000 (11:47 +0800)
committerdaiwei <daiwei521@126.com>
Wed, 12 Mar 2025 07:05:01 +0000 (15:05 +0800)
packages/runtime-core/src/components/BaseTransition.ts
packages/runtime-core/src/index.ts
packages/runtime-vapor/src/block.ts
packages/runtime-vapor/src/components/Transition.ts
packages/runtime-vapor/src/components/TransitionGroup.ts

index fde42148304c160508c731d5b1ab917868baa567..5c51fde1f496de3fb12d5178528baeb7238fc6e5 100644 (file)
@@ -168,15 +168,7 @@ const BaseTransitionImpl: ComponentOptions = {
       const rawProps = toRaw(props)
       const { mode } = rawProps
       // check mode
-      if (
-        __DEV__ &&
-        mode &&
-        mode !== 'in-out' &&
-        mode !== 'out-in' &&
-        mode !== 'default'
-      ) {
-        warn(`invalid <transition> mode: ${mode}`)
-      }
+      __DEV__ && checkTransitionMode(mode)
 
       if (state.isLeaving) {
         return emptyPlaceholder(child)
@@ -622,3 +614,12 @@ export function getTransitionRawChildren(
   }
   return ret
 }
+
+/**
+ * dev-only
+ */
+export function checkTransitionMode(mode: string | undefined): void {
+  if (mode && mode !== 'in-out' && mode !== 'out-in' && mode !== 'default') {
+    warn(`invalid <transition> mode: ${mode}`)
+  }
+}
index 596c31e588380a2b6a2dc0e169be2ca8c8fcb46c..4eddabcff270e5a679344988d37e011224dc022f 100644 (file)
@@ -118,6 +118,7 @@ export { KeepAlive, type KeepAliveProps } from './components/KeepAlive'
 export {
   BaseTransition,
   BaseTransitionPropsValidators,
+  checkTransitionMode,
   type BaseTransitionProps,
 } from './components/BaseTransition'
 // For using custom directives
index 1c6a1e72654e4c80fae4fdd427a2bc5186cc853f..cfe9d5abf52a0bc78f797e804fbc3848a3fa2675 100644 (file)
@@ -28,6 +28,8 @@ export interface TransitionOptions {
 export interface VaporTransitionHooks extends TransitionHooks {
   state: TransitionState
   props: TransitionProps
+  // mark transition hooks as disabled so that it skips during
+  // inserting
   disabled?: boolean
 }
 
index fbba29f3ba94f60d54352d8f2669ec4c204a2cbb..384bac42273349507b6836978e827f744275b535 100644 (file)
@@ -8,6 +8,7 @@ import {
   TransitionPropsValidators,
   type TransitionState,
   baseResolveTransitionHooks,
+  checkTransitionMode,
   currentInstance,
   leaveCbKey,
   resolveTransitionProps,
@@ -36,15 +37,7 @@ export const VaporTransition: FunctionalComponent<TransitionProps> =
     if (!children) return
 
     const { mode } = props
-    if (
-      __DEV__ &&
-      mode &&
-      mode !== 'in-out' &&
-      mode !== 'out-in' &&
-      mode !== 'default'
-    ) {
-      warn(`invalid <transition> mode: ${mode}`)
-    }
+    __DEV__ && checkTransitionMode(mode)
 
     applyTransitionEnterHooks(children, {
       state: useTransitionState(),
@@ -119,13 +112,6 @@ export function resolveTransitionHooks(
   return hooks
 }
 
-export function setTransitionHooks(
-  block: TransitionBlock,
-  hooks: VaporTransitionHooks,
-): void {
-  block.$transition = hooks
-}
-
 export function applyTransitionEnterHooks(
   block: Block,
   hooks: VaporTransitionHooks,
@@ -268,3 +254,10 @@ export function setTransitionHooksToFragment(
     }
   }
 }
+
+export function setTransitionHooks(
+  block: TransitionBlock,
+  hooks: VaporTransitionHooks,
+): void {
+  block.$transition = hooks
+}
index 19e2f6d8d841ec93819517874360fba942d195d2..a9c5c0dac26792ea9392ec5ba9cacf4e71ff43d3 100644 (file)
@@ -66,11 +66,10 @@ export const VaporTransitionGroup: ObjectVaporComponent = decorate({
           const child = children[i]
           if (isValidTransitionBlock(child)) {
             prevChildren.push(child)
-            const hook = (child as TransitionBlock).$transition!
             // disabled transition during enter, so the children will be
             // inserted into the correct position immediately. this prevents
             // `recordPosition` from getting incorrect positions in `onUpdated`
-            hook.disabled = true
+            child.$transition!.disabled = true
             positionMap.set(
               child,
               getTransitionElement(child).getBoundingClientRect(),
@@ -129,12 +128,12 @@ export const VaporTransitionGroup: ObjectVaporComponent = decorate({
     for (let i = 0; i < children.length; i++) {
       const child = children[i]
       if (isValidTransitionBlock(child)) {
-        if ((child as TransitionBlock).$key != null) {
+        if (child.$key != null) {
           setTransitionHooks(
             child,
             resolveTransitionHooks(child, cssTransitionProps, state, instance!),
           )
-        } else if (__DEV__ && (child as TransitionBlock).$key == null) {
+        } else if (__DEV__ && child.$key == null) {
           warn(`<transition-group> children must be keyed`)
         }
       }