@@ -99,37 +99,49 @@ function getWalkSource(
99
99
}
100
100
101
101
if ( isEvent ( value ) ) {
102
+ /**
103
+ * Event-like interface that's usable in browser and node
104
+ */
105
+ interface SimpleEvent {
106
+ [ key : string ] : unknown ;
107
+ type : string ;
108
+ target ?: unknown ;
109
+ currentTarget ?: unknown ;
110
+ }
111
+
112
+ const event = value as SimpleEvent ;
113
+
102
114
const source : {
103
115
[ key : string ] : any ;
104
116
} = { } ;
105
117
106
- source . type = value . type ;
118
+ source . type = event . type ;
107
119
108
120
// Accessing event.target can throw (see getsentry/raven-js#838, #768)
109
121
try {
110
- source . target = isElement ( value . target )
111
- ? htmlTreeAsString ( value . target )
112
- : Object . prototype . toString . call ( value . target ) ;
122
+ source . target = isElement ( event . target )
123
+ ? htmlTreeAsString ( event . target )
124
+ : Object . prototype . toString . call ( event . target ) ;
113
125
} catch ( _oO ) {
114
126
source . target = '<unknown>' ;
115
127
}
116
128
117
129
try {
118
- source . currentTarget = isElement ( value . currentTarget )
119
- ? htmlTreeAsString ( value . currentTarget )
120
- : Object . prototype . toString . call ( value . currentTarget ) ;
130
+ source . currentTarget = isElement ( event . currentTarget )
131
+ ? htmlTreeAsString ( event . currentTarget )
132
+ : Object . prototype . toString . call ( event . currentTarget ) ;
121
133
} catch ( _oO ) {
122
134
source . currentTarget = '<unknown>' ;
123
135
}
124
136
125
137
// tslint:disable-next-line:strict-type-predicates
126
138
if ( typeof CustomEvent !== 'undefined' && value instanceof CustomEvent ) {
127
- source . detail = value . detail ;
139
+ source . detail = event . detail ;
128
140
}
129
141
130
- for ( const i in value ) {
131
- if ( Object . prototype . hasOwnProperty . call ( value , i ) ) {
132
- source [ i ] = ( value as { [ key : string ] : any } ) [ i ] ;
142
+ for ( const i in event ) {
143
+ if ( Object . prototype . hasOwnProperty . call ( event , i ) ) {
144
+ source [ i ] = event ;
133
145
}
134
146
}
135
147
0 commit comments