@@ -39,6 +39,12 @@ struct WebSocketWrapper {
39
39
args.Holder ()->SetAlignedPointerInInternalField (0 , nullptr );
40
40
}
41
41
42
+ /* Takes nothing returns holder (only used to fool TypeScript, as a conversion from WS to UserData) */
43
+ template <bool SSL>
44
+ static void uWS_WebSocket_getUserData (const FunctionCallbackInfo<Value> &args) {
45
+ args.GetReturnValue ().Set (args.Holder ());
46
+ }
47
+
42
48
/* Takes string topic */
43
49
template <bool SSL>
44
50
static void uWS_WebSocket_subscribe (const FunctionCallbackInfo<Value> &args) {
@@ -317,6 +323,7 @@ struct WebSocketWrapper {
317
323
wsTemplateLocal->PrototypeTemplate ()->Set (String::NewFromUtf8 (isolate, " sendFragment" , NewStringType::kNormal ).ToLocalChecked (), FunctionTemplate::New (isolate, uWS_WebSocket_sendFragment<SSL>));
318
324
wsTemplateLocal->PrototypeTemplate ()->Set (String::NewFromUtf8 (isolate, " sendLastFragment" , NewStringType::kNormal ).ToLocalChecked (), FunctionTemplate::New (isolate, uWS_WebSocket_sendLastFragment<SSL>));
319
325
326
+ wsTemplateLocal->PrototypeTemplate ()->Set (String::NewFromUtf8 (isolate, " getUserData" , NewStringType::kNormal ).ToLocalChecked (), FunctionTemplate::New (isolate, uWS_WebSocket_getUserData<SSL>));
320
327
wsTemplateLocal->PrototypeTemplate ()->Set (String::NewFromUtf8 (isolate, " send" , NewStringType::kNormal ).ToLocalChecked (), FunctionTemplate::New (isolate, uWS_WebSocket_send<SSL>));
321
328
wsTemplateLocal->PrototypeTemplate ()->Set (String::NewFromUtf8 (isolate, " end" , NewStringType::kNormal ).ToLocalChecked (), FunctionTemplate::New (isolate, uWS_WebSocket_end<SSL>));
322
329
wsTemplateLocal->PrototypeTemplate ()->Set (String::NewFromUtf8 (isolate, " close" , NewStringType::kNormal ).ToLocalChecked (), FunctionTemplate::New (isolate, uWS_WebSocket_close<SSL>));
0 commit comments