Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | 3x 3x 7640x 7640x 7640x 7640x 165x 165x 7640x 3x 3x 3x 3x 3x 3x 7475x 7475x 187x 7640x 3x 3x 7472x 7472x 2813x 2x 2x 2x 2x 2x 7640x 2x 2x 7470x 7470x | import { isFunction, isObject } from '@vue/shared' import type { Component, ComponentInternalInstance } from '../component' import { DeprecationTypes, checkCompatEnabled, softAssertCompatEnabled, } from './compatConfig' import { convertLegacyAsyncComponent } from './componentAsync' import { convertLegacyFunctionalComponent } from './componentFunctional' export function convertLegacyComponent( comp: any, instance: ComponentInternalInstance | null, ): Component { if (comp.__isBuiltIn) { return comp } // 2.x constructor if (isFunction(comp) && comp.cid) { // #7766 if (comp.render) { // only necessary when compiled from SFC comp.options.render = comp.render } // copy over internal properties set by the SFC compiler comp.options.__file = comp.__file comp.options.__hmrId = comp.__hmrId comp.options.__scopeId = comp.__scopeId comp = comp.options } // 2.x async component if ( isFunction(comp) && checkCompatEnabled(DeprecationTypes.COMPONENT_ASYNC, instance, comp) ) { // since after disabling this, plain functions are still valid usage, do not // use softAssert here. return convertLegacyAsyncComponent(comp) } // 2.x functional component if ( isObject(comp) && comp.functional && softAssertCompatEnabled( DeprecationTypes.COMPONENT_FUNCTIONAL, instance, comp, ) ) { return convertLegacyFunctionalComponent(comp) } return comp } |