fix(adapters): Attach WebSocket peer to typedRouter request localData and add ws dependency
This commit is contained in:
@@ -3,6 +3,6 @@
|
||||
*/
|
||||
export const commitinfo = {
|
||||
name: '@push.rocks/smartserve',
|
||||
version: '1.1.0',
|
||||
version: '1.1.1',
|
||||
description: 'a cross platform server module for Node, Deno and Bun'
|
||||
}
|
||||
|
||||
@@ -137,6 +137,8 @@ export class BunAdapter extends BaseAdapter {
|
||||
if (typedRouter && typeof message === 'string') {
|
||||
try {
|
||||
const requestObj = JSON.parse(message);
|
||||
// Attach peer to localData so TypedHandlers can access the connection
|
||||
requestObj.localData = { ...requestObj.localData, peer };
|
||||
const response = await typedRouter.routeAndAddResponse(requestObj);
|
||||
if (response) {
|
||||
peer.send(JSON.stringify(response));
|
||||
|
||||
@@ -115,6 +115,8 @@ export class DenoAdapter extends BaseAdapter {
|
||||
if (typedRouter && typeof event.data === 'string') {
|
||||
try {
|
||||
const requestObj = JSON.parse(event.data);
|
||||
// Attach peer to localData so TypedHandlers can access the connection
|
||||
requestObj.localData = { ...requestObj.localData, peer };
|
||||
const response = await typedRouter.routeAndAddResponse(requestObj);
|
||||
if (response) {
|
||||
peer.send(JSON.stringify(response));
|
||||
|
||||
@@ -283,6 +283,8 @@ export class NodeAdapter extends BaseAdapter {
|
||||
try {
|
||||
const messageText = typeof data === 'string' ? data : data.toString('utf8');
|
||||
const requestObj = JSON.parse(messageText);
|
||||
// Attach peer to localData so TypedHandlers can access the connection
|
||||
requestObj.localData = { ...requestObj.localData, peer };
|
||||
const response = await typedRouter.routeAndAddResponse(requestObj);
|
||||
if (response) {
|
||||
peer.send(JSON.stringify(response));
|
||||
|
||||
Reference in New Issue
Block a user