Browse Source

refactor(runtime-vapor): re-organize

三咲智子 Kevin Deng 2 years ago
parent
commit
7e0f15fa7c

+ 1 - 1
packages/runtime-vapor/__tests__/dom/prop.spec.ts

@@ -13,7 +13,7 @@ import {
   createComponentInstance,
   setCurrentInstance,
 } from '../../src/component'
-import { getMetadata, recordPropMetadata } from '../../src/metadata'
+import { getMetadata, recordPropMetadata } from '../../src/componentMetadata'
 
 let removeComponentInstance = NOOP
 beforeEach(() => {

+ 0 - 0
packages/runtime-vapor/src/for.ts → packages/runtime-vapor/src/apiCreateFor.ts


+ 0 - 0
packages/runtime-vapor/src/if.ts → packages/runtime-vapor/src/apiCreateIf.ts


+ 19 - 3
packages/runtime-vapor/src/apiLifecycle.ts

@@ -7,9 +7,25 @@ import { warn } from './warning'
 import { pauseTracking, resetTracking } from '@vue/reactivity'
 import { ErrorTypeStrings, callWithAsyncErrorHandling } from './errorHandling'
 import { toHandlerKey } from '@vue/shared'
-import { VaporLifecycleHooks } from './enums'
 
-export const injectHook = (
+export enum VaporLifecycleHooks {
+  BEFORE_CREATE = 'bc',
+  CREATED = 'c',
+  BEFORE_MOUNT = 'bm',
+  MOUNTED = 'm',
+  BEFORE_UPDATE = 'bu',
+  UPDATED = 'u',
+  BEFORE_UNMOUNT = 'bum',
+  UNMOUNTED = 'um',
+  DEACTIVATED = 'da',
+  ACTIVATED = 'a',
+  RENDER_TRIGGERED = 'rtg',
+  RENDER_TRACKED = 'rtc',
+  ERROR_CAPTURED = 'ec',
+  // SERVER_PREFETCH = 'sp',
+}
+
+const injectHook = (
   type: VaporLifecycleHooks,
   hook: Function & { __weh?: Function },
   target: ComponentInternalInstance | null = currentInstance,
@@ -49,7 +65,7 @@ export const injectHook = (
     )
   }
 }
-export const createHook =
+const createHook =
   <T extends Function = () => any>(lifecycle: VaporLifecycleHooks) =>
   (hook: T, target: ComponentInternalInstance | null = currentInstance) =>
     injectHook(lifecycle, (...args: unknown[]) => hook(...args), target)

+ 1 - 1
packages/runtime-vapor/src/component.ts

@@ -15,9 +15,9 @@ import {
   emit,
   normalizeEmitsOptions,
 } from './componentEmits'
+import { VaporLifecycleHooks } from './apiLifecycle'
 
 import type { Data } from '@vue/shared'
-import { VaporLifecycleHooks } from './enums'
 
 export type Component = FunctionalComponent | ObjectComponent
 

+ 3 - 3
packages/runtime-vapor/src/metadata.ts → packages/runtime-vapor/src/componentMetadata.ts

@@ -6,14 +6,14 @@ export enum MetadataKind {
   event,
 }
 
-export type ElementMetadata = [
+export type ComponentMetadata = [
   props: Data,
   events: Record<string, DelegatedHandler[]>,
 ]
 
 export function getMetadata(
-  el: Node & { $$metadata?: ElementMetadata },
-): ElementMetadata {
+  el: Node & { $$metadata?: ComponentMetadata },
+): ComponentMetadata {
   return el.$$metadata || (el.$$metadata = [{}, {}])
 }
 

+ 1 - 1
packages/runtime-vapor/src/directives/vModel.ts

@@ -15,7 +15,7 @@ import type {
 import { addEventListener } from '../dom/event'
 import { nextTick } from '../scheduler'
 import { warn } from '../warning'
-import { MetadataKind, getMetadata } from '../metadata'
+import { MetadataKind, getMetadata } from '../componentMetadata'
 
 type AssignerFn = (value: any) => void
 function getModelAssigner(el: Element): AssignerFn {

+ 5 - 1
packages/runtime-vapor/src/dom/event.ts

@@ -3,7 +3,11 @@ import {
   onEffectCleanup,
   onScopeDispose,
 } from '@vue/reactivity'
-import { MetadataKind, getMetadata, recordEventMetadata } from '../metadata'
+import {
+  MetadataKind,
+  getMetadata,
+  recordEventMetadata,
+} from '../componentMetadata'
 import { withKeys, withModifiers } from '@vue/runtime-dom'
 import { queuePostRenderEffect } from '../scheduler'
 

+ 5 - 1
packages/runtime-vapor/src/dom/prop.ts

@@ -12,7 +12,11 @@ import {
 } from '@vue/shared'
 import { warn } from '../warning'
 import { setStyle } from './style'
-import { MetadataKind, getMetadata, recordPropMetadata } from '../metadata'
+import {
+  MetadataKind,
+  getMetadata,
+  recordPropMetadata,
+} from '../componentMetadata'
 import { on } from './event'
 
 export function setClass(el: Element, value: any) {

+ 1 - 1
packages/runtime-vapor/src/dom/style.ts

@@ -7,7 +7,7 @@ import {
   normalizeStyle,
 } from '@vue/shared'
 import { warn } from '../warning'
-import { recordPropMetadata } from '../metadata'
+import { recordPropMetadata } from '../componentMetadata'
 
 export function setStyle(el: HTMLElement, value: any) {
   const prev = recordPropMetadata(el, 'style', (value = normalizeStyle(value)))

+ 0 - 16
packages/runtime-vapor/src/enums.ts

@@ -1,16 +0,0 @@
-export enum VaporLifecycleHooks {
-  BEFORE_CREATE = 'bc',
-  CREATED = 'c',
-  BEFORE_MOUNT = 'bm',
-  MOUNTED = 'm',
-  BEFORE_UPDATE = 'bu',
-  UPDATED = 'u',
-  BEFORE_UNMOUNT = 'bum',
-  UNMOUNTED = 'um',
-  DEACTIVATED = 'da',
-  ACTIVATED = 'a',
-  RENDER_TRIGGERED = 'rtg',
-  RENDER_TRACKED = 'rtc',
-  ERROR_CAPTURED = 'ec',
-  // SERVER_PREFETCH = 'sp',
-}

+ 1 - 1
packages/runtime-vapor/src/errorHandling.ts

@@ -6,7 +6,7 @@
 import type { ComponentInternalInstance } from './component'
 import { isFunction, isPromise } from '@vue/shared'
 import { warn } from './warning'
-import { VaporLifecycleHooks } from './enums'
+import { VaporLifecycleHooks } from './apiLifecycle'
 import { BaseWatchErrorCodes } from '@vue/reactivity'
 
 // contexts where user provided function may be executed, in addition to

+ 2 - 2
packages/runtime-vapor/src/index.ts

@@ -102,8 +102,8 @@ export {
   onErrorCaptured,
   // onServerPrefetch,
 } from './apiLifecycle'
-export { createIf } from './if'
-export { createFor } from './for'
+export { createIf } from './apiCreateIf'
+export { createFor } from './apiCreateFor'
 
 // **Internal** DOM-only runtime directive helpers
 export {