|
@@ -2,7 +2,7 @@ import { type ObjectEmitsOptions, baseEmit } from '@vue/runtime-dom'
|
|
|
import type { VaporComponent, VaporComponentInstance } from './component'
|
|
import type { VaporComponent, VaporComponentInstance } from './component'
|
|
|
import { EMPTY_OBJ, hasOwn, isArray, isFunction, isOn } from '@vue/shared'
|
|
import { EMPTY_OBJ, hasOwn, isArray, isFunction, isOn } from '@vue/shared'
|
|
|
import { type RawProps, resolveSource } from './componentProps'
|
|
import { type RawProps, resolveSource } from './componentProps'
|
|
|
-import { interopKey } from './vdomInterop'
|
|
|
|
|
|
|
+import { interopKey, isInteropEnabled } from './vdomInteropState'
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* The logic from core isn't too reusable so it's better to duplicate here
|
|
* The logic from core isn't too reusable so it's better to duplicate here
|
|
@@ -49,7 +49,7 @@ function propGetter(rawProps: RawProps, key: string) {
|
|
|
const source = resolveSource(dynamicSources[i])
|
|
const source = resolveSource(dynamicSources[i])
|
|
|
if (hasOwn(source, key))
|
|
if (hasOwn(source, key))
|
|
|
// for props passed from VDOM component, no need to resolve
|
|
// for props passed from VDOM component, no need to resolve
|
|
|
- return dynamicSources[interopKey] ||
|
|
|
|
|
|
|
+ return (isInteropEnabled && dynamicSources[interopKey]) ||
|
|
|
(isOn(key) && isFunction(dynamicSources[i]))
|
|
(isOn(key) && isFunction(dynamicSources[i]))
|
|
|
? source[key]
|
|
? source[key]
|
|
|
: resolveSource(source[key])
|
|
: resolveSource(source[key])
|