Hyperlinkv0.8.0-beta.28

NodeSocket

NodeSocket.layerWebSocketConstructorconstrepos/effect/packages/platform-node/src/NodeSocket.ts:31
Layer.Layer<Socket.WebSocketConstructor, never, never>

Provides a Socket.WebSocketConstructor, using globalThis.WebSocket when available and falling back to the ws package otherwise.

layers
export const layerWebSocketConstructor: Layer.Layer<
  Socket.WebSocketConstructor
> = Layer.sync(Socket.WebSocketConstructor)(() => {
  if ("WebSocket" in globalThis) {
    return (url, protocols) => new globalThis.WebSocket(url, protocols)
  }
  return (url, protocols) => new WS.WebSocket(url, protocols) as unknown as globalThis.WebSocket
})
Referenced by 2 symbols