UNPKG

@leancodepl/rx-pipe-client

Version:

RxJS-based client for real-time data streaming using @leancodepl/pipe

25 lines (22 loc) 716 B
'use strict'; /** * Creates RxJS-based topic functions for real-time data subscriptions using "@leancodepl/pipe". * * @param pipe - Pipe instance from "@leancodepl/pipe" * @returns Object containing `createTopic` method for creating typed observables * @example * ```typescript * const pipe = createPipe({ url: 'wss://api.example.com/pipe' }); * const pipeClient = mkPipeClient({ pipe }); * * const chatTopic = pipeClient.createTopic('chat'); * const messages$ = chatTopic({ roomId: 'room1' }); * ``` */ function mkPipeClient({ pipe }) { return { createTopic (topicType) { return (topic)=>pipe.topic(topicType, topic); } }; } exports.mkPipeClient = mkPipeClient;