@@ -68,10 +68,7 @@ export interface CodegenResult {
68
68
}
69
69
70
70
export interface CodegenContext
71
- extends Omit <
72
- Required < CodegenOptions > ,
73
- 'bindingMetadata' | 'inline' | 'isTS'
74
- > {
71
+ extends Omit < Required < CodegenOptions > , 'bindingMetadata' | 'inline' > {
75
72
source : string
76
73
code : string
77
74
line : number
@@ -98,7 +95,8 @@ function createCodegenContext(
98
95
optimizeImports = false ,
99
96
runtimeGlobalName = `Vue` ,
100
97
runtimeModuleName = `vue` ,
101
- ssr = false
98
+ ssr = false ,
99
+ isTS = false
102
100
} : CodegenOptions
103
101
) : CodegenContext {
104
102
const context : CodegenContext = {
@@ -111,6 +109,7 @@ function createCodegenContext(
111
109
runtimeGlobalName,
112
110
runtimeModuleName,
113
111
ssr,
112
+ isTS,
114
113
source : ast . loc . source ,
115
114
code : `` ,
116
115
column : 1 ,
@@ -466,7 +465,7 @@ function genModulePreamble(
466
465
function genAssets (
467
466
assets : string [ ] ,
468
467
type : 'component' | 'directive' | 'filter' ,
469
- { helper, push, newline } : CodegenContext
468
+ { helper, push, newline, isTS } : CodegenContext
470
469
) {
471
470
const resolver = helper (
472
471
__COMPAT__ && type === 'filter'
@@ -485,7 +484,7 @@ function genAssets(
485
484
push (
486
485
`const ${ toValidAssetId ( id , type ) } = ${ resolver } (${ JSON . stringify ( id ) } ${
487
486
maybeSelfReference ? `, true` : ``
488
- } )`
487
+ } )${ isTS ? `!` : `` } `
489
488
)
490
489
if ( i < assets . length - 1 ) {
491
490
newline ( )
0 commit comments