itty-sockets 0.2.2 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -88,7 +88,7 @@ connect('foo').push('hello world!')
88
88
  | **.close()** | Closes the connection | `channel.close()` |
89
89
  | **.send(message)** | Sends a message to the channel | `channel.send({ type: 'chat', text: 'hello' })` |
90
90
  | **.push(message)** | Sends a message and closes the connection | `channel.push({ type: 'goodbye' })` |
91
- | **.on('message', listener)** | Adds a message listener (multiple allowed) | `channel.on('message', event => console.log(event))` |
91
+ | **.on<MessageType = any>('message', listener)** | Adds a message listener (multiple allowed) | `channel.on('message', event => console.log(event))` |
92
92
  | **.on('open', listener)** | Executes a listener on channel open (one allowed) | `channel.on('open', () => console.log('channel opened'))` |
93
93
  | **.on('close', listener)** | Executes a listener on channel close (one allowed) | `channel.on('close', () => console.log('channel closed'))` |
94
94
 
package/connect.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export type AllowedProperty = 'open' | 'close' | 'send' | 'push' | 'on';
2
+ export type IttySocketEvent = 'open' | 'close' | 'message';
2
3
  export type MessageEvent<MessageType = any> = {
3
4
  date: Date;
4
5
  uid?: string;
@@ -12,7 +13,8 @@ export type IttySocket = {
12
13
  connected: boolean;
13
14
  send: SendMessage;
14
15
  push: SendMessage;
15
- on: <T extends string, MessageType = any>(type: T, listener: T extends 'message' ? (event: MessageEvent<MessageType>) => any : () => any) => IttySocket;
16
+ on<MessageFormat = any>(type: 'message', listener: (event: MessageEvent<MessageFormat>) => any): IttySocket;
17
+ on(type: Exclude<IttySocketEvent, 'message'>, listener: () => any): IttySocket;
16
18
  };
17
19
  export type IttySocketOptions = {
18
20
  as?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "itty-sockets",
3
- "version": "0.2.2",
3
+ "version": "0.2.3",
4
4
  "description": "Tiny realtime messaging client in under 450 bytes. No backend needed.",
5
5
  "main": "./sockets.js",
6
6
  "module": "./sockets.mjs",