File tree Expand file tree Collapse file tree 2 files changed +18
-4
lines changed
Expand file tree Collapse file tree 2 files changed +18
-4
lines changed Original file line number Diff line number Diff line change @@ -107,10 +107,17 @@ type Jiti = ReturnType<(typeof import('jiti', {
107107
108108// To avoid a dependency on typescript for users with no TS checks, we need to dynamically import jiti
109109let jiti : Jiti
110+ let haveJiti = false
110111async function getJiti ( ) : Promise < Jiti | undefined > {
111- if ( jiti ) return jiti
112+ if ( haveJiti ) return jiti
112113 try {
113- jiti = ( await import ( 'jiti' ) ) . createJiti ( __filename )
114+ const maybeJiti = await import ( 'jiti' )
115+ // Jiti 1x does not have createJiti().
116+ if ( typeof maybeJiti . createJiti !== 'function' ) {
117+ return
118+ }
119+ jiti = maybeJiti . createJiti ( __filename )
120+ haveJiti = true
114121 } catch ( err : any ) {
115122 if ( err . code === 'ERR_MODULE_NOT_FOUND' || err . code === 'MODULE_NOT_FOUND' ) {
116123 return undefined
Original file line number Diff line number Diff line change @@ -56,10 +56,17 @@ type Jiti = ReturnType<(typeof import('jiti', {
5656
5757// To avoid a dependency on typescript for users with no TS checks, we need to dynamically import jiti
5858let jiti : Jiti
59+ let haveJiti = false
5960async function getJiti ( ) : Promise < Jiti | undefined > {
60- if ( jiti ) return jiti
61+ if ( haveJiti ) return jiti
6162 try {
62- jiti = ( await import ( 'jiti' ) ) . createJiti ( __filename )
63+ const maybeJiti = await import ( 'jiti' )
64+ // Jiti 1x does not have createJiti().
65+ if ( typeof maybeJiti . createJiti !== 'function' ) {
66+ return
67+ }
68+ jiti = maybeJiti . createJiti ( __filename )
69+ haveJiti = true
6370 } catch ( err : any ) {
6471 if ( err . code === 'ERR_MODULE_NOT_FOUND' || err . code === 'MODULE_NOT_FOUND' ) {
6572 return undefined
You can’t perform that action at this time.
0 commit comments