@@ -3,32 +3,33 @@ import { performance } from 'perf_hooks'
3
3
import { fetch as fetchPolyfill } from 'whatwg-fetch'
4
4
5
5
Object . defineProperty ( document , 'queryCommandSupported' , {
6
- value : jest . fn ( ) . mockImplementation ( ( ) => true ) ,
7
- } ) ;
6
+ value : jest . fn ( ) . mockImplementation ( ( ) => true )
7
+ } )
8
8
9
9
window . process = undefined
10
10
11
11
Object . defineProperty ( window , 'matchMedia' , {
12
12
writable : true ,
13
- value : jest . fn ( ) . mockImplementation ( query => ( {
13
+ value : jest . fn ( ) . mockImplementation ( ( query ) => ( {
14
14
matches : false ,
15
15
media : query ,
16
16
onchange : null ,
17
17
addListener : jest . fn ( ) , // Deprecated
18
18
removeListener : jest . fn ( ) , // Deprecated
19
19
addEventListener : jest . fn ( ) ,
20
20
removeEventListener : jest . fn ( ) ,
21
- dispatchEvent : jest . fn ( ) ,
22
- } ) ) ,
23
- } ) ;
21
+ dispatchEvent : jest . fn ( )
22
+ } ) )
23
+ } )
24
24
25
25
Object . defineProperty ( window , 'fetch' , {
26
26
value : jest . fn ( async ( url , options ) => {
27
27
if ( url . startsWith ( 'file:' ) ) {
28
28
const content = await fs . readFile ( new URL ( url ) . pathname )
29
29
return {
30
30
json : async ( ) => JSON . stringify ( JSON . parse ( content . toString ( ) ) ) ,
31
- arrayBuffer : async ( ) => content . buffer . slice ( content . byteOffset , content . byteOffset + content . byteLength ) ,
31
+ arrayBuffer : async ( ) =>
32
+ content . buffer . slice ( content . byteOffset , content . byteOffset + content . byteLength ) ,
32
33
status : 200
33
34
}
34
35
} else {
@@ -47,8 +48,8 @@ Object.defineProperty(window, 'Worker', {
47
48
value : class Worker {
48
49
constructor ( stringUrl ) { }
49
50
postMessage ( msg ) { }
50
- terminate ( ) { }
51
- removeEventListener ( ) { }
51
+ terminate ( ) { }
52
+ removeEventListener ( ) { }
52
53
}
53
54
} )
54
55
@@ -62,77 +63,77 @@ Object.defineProperty(window, 'ResizeObserver', {
62
63
// These 2 classes come from https://gist.github.com/Yaffle/5458286
63
64
Object . defineProperty ( window , 'TextEncoder' , {
64
65
value : class TextEncoder {
65
- encode ( string ) {
66
- var octets = [ ] ;
67
- var length = string . length ;
68
- var i = 0 ;
66
+ encode ( string ) {
67
+ var octets = [ ]
68
+ var length = string . length
69
+ var i = 0
69
70
while ( i < length ) {
70
- var codePoint = string . codePointAt ( i ) ;
71
- var c = 0 ;
72
- var bits = 0 ;
73
- if ( codePoint <= 0x0000007F ) {
74
- c = 0 ;
75
- bits = 0x00 ;
76
- } else if ( codePoint <= 0x000007FF ) {
77
- c = 6 ;
78
- bits = 0xC0 ;
79
- } else if ( codePoint <= 0x0000FFFF ) {
80
- c = 12 ;
81
- bits = 0xE0 ;
82
- } else if ( codePoint <= 0x001FFFFF ) {
83
- c = 18 ;
84
- bits = 0xF0 ;
71
+ var codePoint = string . codePointAt ( i )
72
+ var c = 0
73
+ var bits = 0
74
+ if ( codePoint <= 0x0000007f ) {
75
+ c = 0
76
+ bits = 0x00
77
+ } else if ( codePoint <= 0x000007ff ) {
78
+ c = 6
79
+ bits = 0xc0
80
+ } else if ( codePoint <= 0x0000ffff ) {
81
+ c = 12
82
+ bits = 0xe0
83
+ } else if ( codePoint <= 0x001fffff ) {
84
+ c = 18
85
+ bits = 0xf0
85
86
}
86
- octets . push ( bits | ( codePoint >> c ) ) ;
87
- c -= 6 ;
87
+ octets . push ( bits | ( codePoint >> c ) )
88
+ c -= 6
88
89
while ( c >= 0 ) {
89
- octets . push ( 0x80 | ( ( codePoint >> c ) & 0x3F ) ) ;
90
- c -= 6 ;
90
+ octets . push ( 0x80 | ( ( codePoint >> c ) & 0x3f ) )
91
+ c -= 6
91
92
}
92
- i += codePoint >= 0x10000 ? 2 : 1 ;
93
+ i += codePoint >= 0x10000 ? 2 : 1
93
94
}
94
- return Uint8Array . from ( octets ) ;
95
+ return Uint8Array . from ( octets )
95
96
}
96
97
}
97
98
} )
98
99
Object . defineProperty ( window , 'TextDecoder' , {
99
100
value : class TextDecoder {
100
- decode ( octets ) {
101
+ decode ( octets ) {
101
102
if ( octets == null ) {
102
103
return ''
103
104
}
104
- var string = "" ;
105
- var i = 0 ;
105
+ var string = ''
106
+ var i = 0
106
107
while ( i < octets . length ) {
107
- var octet = octets [ i ] ;
108
- var bytesNeeded = 0 ;
109
- var codePoint = 0 ;
110
- if ( octet <= 0x7F ) {
111
- bytesNeeded = 0 ;
112
- codePoint = octet & 0xFF ;
113
- } else if ( octet <= 0xDF ) {
114
- bytesNeeded = 1 ;
115
- codePoint = octet & 0x1F ;
116
- } else if ( octet <= 0xEF ) {
117
- bytesNeeded = 2 ;
118
- codePoint = octet & 0x0F ;
119
- } else if ( octet <= 0xF4 ) {
120
- bytesNeeded = 3 ;
121
- codePoint = octet & 0x07 ;
108
+ var octet = octets [ i ]
109
+ var bytesNeeded = 0
110
+ var codePoint = 0
111
+ if ( octet <= 0x7f ) {
112
+ bytesNeeded = 0
113
+ codePoint = octet & 0xff
114
+ } else if ( octet <= 0xdf ) {
115
+ bytesNeeded = 1
116
+ codePoint = octet & 0x1f
117
+ } else if ( octet <= 0xef ) {
118
+ bytesNeeded = 2
119
+ codePoint = octet & 0x0f
120
+ } else if ( octet <= 0xf4 ) {
121
+ bytesNeeded = 3
122
+ codePoint = octet & 0x07
122
123
}
123
124
if ( octets . length - i - bytesNeeded > 0 ) {
124
- var k = 0 ;
125
+ var k = 0
125
126
while ( k < bytesNeeded ) {
126
- octet = octets [ i + k + 1 ] ;
127
- codePoint = ( codePoint << 6 ) | ( octet & 0x3F ) ;
128
- k += 1 ;
127
+ octet = octets [ i + k + 1 ]
128
+ codePoint = ( codePoint << 6 ) | ( octet & 0x3f )
129
+ k += 1
129
130
}
130
131
} else {
131
- codePoint = 0xFFFD ;
132
- bytesNeeded = octets . length - i ;
132
+ codePoint = 0xfffd
133
+ bytesNeeded = octets . length - i
133
134
}
134
- string += String . fromCodePoint ( codePoint ) ;
135
- i += bytesNeeded + 1 ;
135
+ string += String . fromCodePoint ( codePoint )
136
+ i += bytesNeeded + 1
136
137
}
137
138
return string
138
139
}
@@ -145,15 +146,19 @@ Object.defineProperty(window, 'Buffer', {
145
146
146
147
// Force override performance, for some reason the implementation is empty otherwise
147
148
let _performance = performance
149
+ // remove nodeTiming because otherwise VSCode refuse to detect the env as a browser env, and it also fails to detect a node env (no `process`) so it generates an error
150
+ performance . nodeTiming = undefined
148
151
Object . defineProperty ( global , 'performance' , {
149
- get ( ) { return _performance } ,
150
- set ( v ) {
152
+ get ( ) {
153
+ return _performance
154
+ } ,
155
+ set ( v ) {
151
156
// ignore
152
157
}
153
158
} )
154
159
155
160
global . CSS = {
156
- escape : v => v
161
+ escape : ( v ) => v
157
162
}
158
163
159
- Element . prototype . scrollIntoView = jest . fn ( ) ;
164
+ Element . prototype . scrollIntoView = jest . fn ( )
0 commit comments