Skip to content

Commit 2069e68

Browse files
committedNov 7, 2020
[fix] Fix the enumerability of some properties
Make the `CONNECTING`, `OPEN`, `CLOSING`, `CLOSED`, `binaryType`, `bufferedAmount`, `extensions`, `onclose`, `onerror`, `onmessage`, `onopen`, `protocol`, `readyState`, and `url` properties enumerable.
1 parent eabed8f commit 2069e68

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed
 

‎lib/websocket.js

+17-17
Original file line numberDiff line numberDiff line change
@@ -74,19 +74,6 @@ class WebSocket extends EventEmitter {
7474
}
7575
}
7676

77-
get CONNECTING() {
78-
return WebSocket.CONNECTING;
79-
}
80-
get CLOSING() {
81-
return WebSocket.CLOSING;
82-
}
83-
get CLOSED() {
84-
return WebSocket.CLOSED;
85-
}
86-
get OPEN() {
87-
return WebSocket.OPEN;
88-
}
89-
9077
/**
9178
* This deviates from the WHATWG interface since ws doesn't support the
9279
* required default "blob" type (instead we define a custom "nodebuffer"
@@ -394,10 +381,21 @@ class WebSocket extends EventEmitter {
394381
}
395382

396383
readyStates.forEach((readyState, i) => {
397-
Object.defineProperty(WebSocket, readyState, {
398-
enumerable: true,
399-
value: i
400-
});
384+
const descriptor = { enumerable: true, value: i };
385+
386+
Object.defineProperty(WebSocket.prototype, readyState, descriptor);
387+
Object.defineProperty(WebSocket, readyState, descriptor);
388+
});
389+
390+
[
391+
'binaryType',
392+
'bufferedAmount',
393+
'extensions',
394+
'protocol',
395+
'readyState',
396+
'url'
397+
].forEach((property) => {
398+
Object.defineProperty(WebSocket.prototype, property, { enumerable: true });
401399
});
402400

403401
//
@@ -406,6 +404,8 @@ readyStates.forEach((readyState, i) => {
406404
//
407405
['open', 'error', 'close', 'message'].forEach((method) => {
408406
Object.defineProperty(WebSocket.prototype, `on${method}`, {
407+
configurable: true,
408+
enumerable: true,
409409
/**
410410
* Return the listener of the event.
411411
*

0 commit comments

Comments
 (0)
Please sign in to comment.