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 | 2x 2x 2x 2x 2x 7049x 7049x 7049x 7049x 152x 152x 7049x 3x 3x 3x 3x 3x 3x 6897x 6897x 183x 7049x 3x 3x 6894x 6894x 2548x 2x 2x 2x 2x 2x 7049x 2x 2x 6892x 6892x | 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 } |