(args: RemoteAppServerConnectArgs)
| 278 | } |
| 279 | |
| 280 | static async connect(args: RemoteAppServerConnectArgs): Promise<RemoteAppServerClient> { |
| 281 | if (args.authToken && !websocketUrlSupportsAuthToken(args.websocketUrl)) { |
| 282 | throw new Error( |
| 283 | `remote auth tokens require wss:// or loopback ws:// URLs; got ${args.websocketUrl}`, |
| 284 | ) |
| 285 | } |
| 286 | |
| 287 | const client = new RemoteAppServerClient({ |
| 288 | ...args, |
| 289 | channelCapacity: Math.max(1, args.channelCapacity ?? DEFAULT_CHANNEL_CAPACITY), |
| 290 | connectTimeoutMs: args.connectTimeoutMs ?? DEFAULT_CONNECT_TIMEOUT_MS, |
| 291 | initializeTimeoutMs: |
| 292 | args.initializeTimeoutMs ?? DEFAULT_INITIALIZE_TIMEOUT_MS, |
| 293 | }) |
| 294 | await client.open() |
| 295 | return client |
| 296 | } |
| 297 | |
| 298 | async request<T = JsonRpcResult>(request: ClientRequest): Promise<T> { |
| 299 | this.assertOpen() |
no test coverage detected