From 3ca05bd5901aa07ca791c9e576abcc9617cc3696 Mon Sep 17 00:00:00 2001 From: Viraj Trivedi Date: Sat, 2 Feb 2019 22:05:08 +0530 Subject: [PATCH] feat: Removed option to pass webSocket to constructor. Only url or websocket config can be passed to the constructor. --- lib/RealTimeAPI.d.ts | 4 ++-- lib/RealTimeAPI.js | 11 +---------- lib/RealTimeAPI.js.map | 2 +- src/RealTimeAPI.ts | 21 +++++++-------------- 4 files changed, 11 insertions(+), 27 deletions(-) diff --git a/lib/RealTimeAPI.d.ts b/lib/RealTimeAPI.d.ts index 345a92d..d7f9d27 100644 --- a/lib/RealTimeAPI.d.ts +++ b/lib/RealTimeAPI.d.ts @@ -1,10 +1,10 @@ /** * Rocket.Chat RealTime API */ -import { WebSocketSubject } from "rxjs/webSocket"; +import { WebSocketSubject, WebSocketSubjectConfig } from "rxjs/webSocket"; export declare class RealTimeAPI { webSocket: WebSocketSubject; - constructor(param: string | WebSocketSubject); + constructor(param: string | WebSocketSubjectConfig); /** * Returns the Observable to the RealTime API Socket */ diff --git a/lib/RealTimeAPI.js b/lib/RealTimeAPI.js index 63ddb93..00a0cfb 100644 --- a/lib/RealTimeAPI.js +++ b/lib/RealTimeAPI.js @@ -9,16 +9,7 @@ var uuid_1 = require("uuid"); var crypto_js_1 = require("crypto-js"); var RealTimeAPI = /** @class */ (function () { function RealTimeAPI(param) { - switch (typeof param) { - case "string": - this.webSocket = webSocket_1.webSocket(param); - break; - case "object": - this.webSocket = param; - break; - default: - throw new Error("Invalid Parameter to the Constructor, Parameter must be of Type WebSocketSubject or URL but was found of type \"" + typeof param + "\""); - } + this.webSocket = webSocket_1.webSocket(param); } /** * Returns the Observable to the RealTime API Socket diff --git a/lib/RealTimeAPI.js.map b/lib/RealTimeAPI.js.map index a244d09..fa62fad 100644 --- a/lib/RealTimeAPI.js.map +++ b/lib/RealTimeAPI.js.map @@ -1 +1 @@ -{"version":3,"file":"RealTimeAPI.js","sourceRoot":"","sources":["../src/RealTimeAPI.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"RealTimeAPI.js","sourceRoot":"","sources":["../src/RealTimeAPI.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/RealTimeAPI.ts b/src/RealTimeAPI.ts index 1e525f9..5866ca1 100644 --- a/src/RealTimeAPI.ts +++ b/src/RealTimeAPI.ts @@ -2,7 +2,11 @@ * Rocket.Chat RealTime API */ -import { webSocket, WebSocketSubject } from "rxjs/webSocket"; +import { + webSocket, + WebSocketSubject, + WebSocketSubjectConfig +} from "rxjs/webSocket"; import { filter, buffer, flatMap, merge, map, tap } from "rxjs/operators"; import { v4 as uuid } from "uuid"; import { SHA256 } from "crypto-js"; @@ -10,19 +14,8 @@ import { SHA256 } from "crypto-js"; export class RealTimeAPI { public webSocket: WebSocketSubject; - constructor(param: string | WebSocketSubject) { - switch (typeof param) { - case "string": - this.webSocket = webSocket(param); - break; - case "object": - this.webSocket = param as WebSocketSubject; - break; - default: - throw new Error( - `Invalid Parameter to the Constructor, Parameter must be of Type WebSocketSubject or URL but was found of type "${typeof param}"` - ); - } + constructor(param: string | WebSocketSubjectConfig) { + this.webSocket = webSocket(param); } /**