tscratch 0.7.0 → 0.7.2
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/dist/client/index.cjs +1 -1
- package/dist/client/index.cjs.map +1 -1
- package/dist/client/index.d.cts +100 -18
- package/dist/client/index.d.ts +100 -18
- package/dist/client/index.js +1 -1
- package/dist/client/index.js.map +1 -1
- package/dist/server/index.cjs +1 -1
- package/dist/server/index.cjs.map +1 -1
- package/dist/server/index.d.cts +5 -5
- package/dist/server/index.d.ts +5 -5
- package/dist/server/index.js +1 -1
- package/dist/server/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/server/index.ts","../../src/server/server.ts"],"sourcesContent":["export { default as Server } from './server.ts';\r\nexport type { Socket } from 'socket.io';","import { Socket, Server as SocketIOServer } from 'socket.io';\r\n\r\ninterface ServerOptions {\r\n port: number;\r\n corsOrigin?: string;\r\n}\r\n\r\ntype DataEventHandler<T> = (data: T,
|
|
1
|
+
{"version":3,"sources":["../../src/server/index.ts","../../src/server/server.ts"],"sourcesContent":["export { default as Server } from './server.ts';\r\nexport type { Socket as Client } from 'socket.io';","import { Socket as Client, Server as SocketIOServer } from 'socket.io';\r\n\r\ninterface ServerOptions {\r\n port: number;\r\n corsOrigin?: string;\r\n}\r\n\r\ntype DataEventHandler<T> = (data: T, client: Client) => void;\r\ntype ClientEventHandler = (client: Client) => void;\r\n\r\nexport default class Server {\r\n\r\n public readonly port: number;\r\n public readonly corsOrigin: string;\r\n public readonly clients: Set<Client> = new Set();\r\n private io: SocketIOServer;\r\n\r\n constructor(options: ServerOptions) {\r\n this.port = options.port;\r\n this.corsOrigin = options.corsOrigin ?? '*';\r\n this.io = new SocketIOServer(this.port, { cors: { origin: this.corsOrigin }});\r\n\r\n this.io.on('connection', (client: Client) => {\r\n\r\n this.clients.add(client);\r\n client.on('disconnect', () => this.clients.delete(client));\r\n });\r\n }\r\n\r\n // Methods\r\n\r\n public broadcast<T = unknown>(eventName: string, data: T, clients?: Client[]) {\r\n if (!clients) {\r\n this.io.emit(eventName, data);\r\n return;\r\n }\r\n\r\n clients.forEach(c => c.emit(eventName, data));\r\n }\r\n\r\n public broadcastExcept<T = unknown>(eventName: string, data: T, except: Client[]) {\r\n \r\n const exclude = new Set(except);\r\n const targets = this.clients.difference(exclude);\r\n\r\n for (const client of targets)\r\n client.emit(eventName, data);\r\n }\r\n\r\n public on<T = unknown>(eventName: string, callback: DataEventHandler<T>) {\r\n this.clients.forEach(client => client.on(eventName, (data: T) => callback(data, client)));\r\n\r\n this.io.on('connection', (client: Client) => {\r\n client.on(eventName, (data: T) => callback(data, client));\r\n });\r\n }\r\n\r\n public onJoin(callback: ClientEventHandler) {\r\n this.clients.forEach(callback);\r\n this.io.on('connection', callback);\r\n }\r\n\r\n public onLeave(callback: ClientEventHandler) {\r\n this.io.on('connection', client => {\r\n client.on('disconnect', () => callback(client));\r\n });\r\n }\r\n}"],"mappings":"yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,YAAAE,IAAA,eAAAC,EAAAH,GCAA,IAAAI,EAA2D,qBAUtCC,EAArB,KAA4B,CAER,KACA,WACA,QAAuB,IAAI,IACnC,GAER,YAAYC,EAAwB,CAChC,KAAK,KAAOA,EAAQ,KACpB,KAAK,WAAaA,EAAQ,YAAc,IACxC,KAAK,GAAK,IAAI,EAAAC,OAAe,KAAK,KAAM,CAAE,KAAM,CAAE,OAAQ,KAAK,UAAW,CAAC,CAAC,EAE5E,KAAK,GAAG,GAAG,aAAeC,GAAmB,CAEzC,KAAK,QAAQ,IAAIA,CAAM,EACvBA,EAAO,GAAG,aAAc,IAAM,KAAK,QAAQ,OAAOA,CAAM,CAAC,CAC7D,CAAC,CACL,CAIO,UAAuBC,EAAmBC,EAASC,EAAoB,CAC1E,GAAI,CAACA,EAAS,CACV,KAAK,GAAG,KAAKF,EAAWC,CAAI,EAC5B,MACJ,CAEAC,EAAQ,QAAQC,GAAKA,EAAE,KAAKH,EAAWC,CAAI,CAAC,CAChD,CAEO,gBAA6BD,EAAmBC,EAASG,EAAkB,CAE9E,IAAMC,EAAU,IAAI,IAAID,CAAM,EACxBE,EAAU,KAAK,QAAQ,WAAWD,CAAO,EAE/C,QAAWN,KAAUO,EACjBP,EAAO,KAAKC,EAAWC,CAAI,CACnC,CAEO,GAAgBD,EAAmBO,EAA+B,CACrE,KAAK,QAAQ,QAAQR,GAAUA,EAAO,GAAGC,EAAYC,GAAYM,EAASN,EAAMF,CAAM,CAAC,CAAC,EAExF,KAAK,GAAG,GAAG,aAAeA,GAAmB,CACzCA,EAAO,GAAGC,EAAYC,GAAYM,EAASN,EAAMF,CAAM,CAAC,CAC5D,CAAC,CACL,CAEO,OAAOQ,EAA8B,CACxC,KAAK,QAAQ,QAAQA,CAAQ,EAC7B,KAAK,GAAG,GAAG,aAAcA,CAAQ,CACrC,CAEO,QAAQA,EAA8B,CACzC,KAAK,GAAG,GAAG,aAAcR,GAAU,CAC/BA,EAAO,GAAG,aAAc,IAAMQ,EAASR,CAAM,CAAC,CAClD,CAAC,CACL,CACJ","names":["server_exports","__export","Server","__toCommonJS","import_socket","Server","options","SocketIOServer","client","eventName","data","clients","c","except","exclude","targets","callback"]}
|
package/dist/server/index.d.cts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Socket } from 'socket.io';
|
|
2
|
-
export { Socket } from 'socket.io';
|
|
2
|
+
export { Socket as Client } from 'socket.io';
|
|
3
3
|
|
|
4
4
|
interface ServerOptions {
|
|
5
5
|
port: number;
|
|
6
6
|
corsOrigin?: string;
|
|
7
7
|
}
|
|
8
|
-
type DataEventHandler<T> = (data: T,
|
|
9
|
-
type
|
|
8
|
+
type DataEventHandler<T> = (data: T, client: Socket) => void;
|
|
9
|
+
type ClientEventHandler = (client: Socket) => void;
|
|
10
10
|
declare class Server {
|
|
11
11
|
readonly port: number;
|
|
12
12
|
readonly corsOrigin: string;
|
|
@@ -16,8 +16,8 @@ declare class Server {
|
|
|
16
16
|
broadcast<T = unknown>(eventName: string, data: T, clients?: Socket[]): void;
|
|
17
17
|
broadcastExcept<T = unknown>(eventName: string, data: T, except: Socket[]): void;
|
|
18
18
|
on<T = unknown>(eventName: string, callback: DataEventHandler<T>): void;
|
|
19
|
-
onJoin(callback:
|
|
20
|
-
onLeave(callback:
|
|
19
|
+
onJoin(callback: ClientEventHandler): void;
|
|
20
|
+
onLeave(callback: ClientEventHandler): void;
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
export { Server };
|
package/dist/server/index.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Socket } from 'socket.io';
|
|
2
|
-
export { Socket } from 'socket.io';
|
|
2
|
+
export { Socket as Client } from 'socket.io';
|
|
3
3
|
|
|
4
4
|
interface ServerOptions {
|
|
5
5
|
port: number;
|
|
6
6
|
corsOrigin?: string;
|
|
7
7
|
}
|
|
8
|
-
type DataEventHandler<T> = (data: T,
|
|
9
|
-
type
|
|
8
|
+
type DataEventHandler<T> = (data: T, client: Socket) => void;
|
|
9
|
+
type ClientEventHandler = (client: Socket) => void;
|
|
10
10
|
declare class Server {
|
|
11
11
|
readonly port: number;
|
|
12
12
|
readonly corsOrigin: string;
|
|
@@ -16,8 +16,8 @@ declare class Server {
|
|
|
16
16
|
broadcast<T = unknown>(eventName: string, data: T, clients?: Socket[]): void;
|
|
17
17
|
broadcastExcept<T = unknown>(eventName: string, data: T, except: Socket[]): void;
|
|
18
18
|
on<T = unknown>(eventName: string, callback: DataEventHandler<T>): void;
|
|
19
|
-
onJoin(callback:
|
|
20
|
-
onLeave(callback:
|
|
19
|
+
onJoin(callback: ClientEventHandler): void;
|
|
20
|
+
onLeave(callback: ClientEventHandler): void;
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
export { Server };
|
package/dist/server/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Server as
|
|
1
|
+
import{Server as c}from"socket.io";var o=class{port;corsOrigin;clients=new Set;io;constructor(n){this.port=n.port,this.corsOrigin=n.corsOrigin??"*",this.io=new c(this.port,{cors:{origin:this.corsOrigin}}),this.io.on("connection",t=>{this.clients.add(t),t.on("disconnect",()=>this.clients.delete(t))})}broadcast(n,t,i){if(!i){this.io.emit(n,t);return}i.forEach(e=>e.emit(n,t))}broadcastExcept(n,t,i){let e=new Set(i),r=this.clients.difference(e);for(let s of r)s.emit(n,t)}on(n,t){this.clients.forEach(i=>i.on(n,e=>t(e,i))),this.io.on("connection",i=>{i.on(n,e=>t(e,i))})}onJoin(n){this.clients.forEach(n),this.io.on("connection",n)}onLeave(n){this.io.on("connection",t=>{t.on("disconnect",()=>n(t))})}};export{o as Server};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/server/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/server/server.ts"],"sourcesContent":["import { Socket, Server as SocketIOServer } from 'socket.io';\r\n\r\ninterface ServerOptions {\r\n port: number;\r\n corsOrigin?: string;\r\n}\r\n\r\ntype DataEventHandler<T> = (data: T,
|
|
1
|
+
{"version":3,"sources":["../../src/server/server.ts"],"sourcesContent":["import { Socket as Client, Server as SocketIOServer } from 'socket.io';\r\n\r\ninterface ServerOptions {\r\n port: number;\r\n corsOrigin?: string;\r\n}\r\n\r\ntype DataEventHandler<T> = (data: T, client: Client) => void;\r\ntype ClientEventHandler = (client: Client) => void;\r\n\r\nexport default class Server {\r\n\r\n public readonly port: number;\r\n public readonly corsOrigin: string;\r\n public readonly clients: Set<Client> = new Set();\r\n private io: SocketIOServer;\r\n\r\n constructor(options: ServerOptions) {\r\n this.port = options.port;\r\n this.corsOrigin = options.corsOrigin ?? '*';\r\n this.io = new SocketIOServer(this.port, { cors: { origin: this.corsOrigin }});\r\n\r\n this.io.on('connection', (client: Client) => {\r\n\r\n this.clients.add(client);\r\n client.on('disconnect', () => this.clients.delete(client));\r\n });\r\n }\r\n\r\n // Methods\r\n\r\n public broadcast<T = unknown>(eventName: string, data: T, clients?: Client[]) {\r\n if (!clients) {\r\n this.io.emit(eventName, data);\r\n return;\r\n }\r\n\r\n clients.forEach(c => c.emit(eventName, data));\r\n }\r\n\r\n public broadcastExcept<T = unknown>(eventName: string, data: T, except: Client[]) {\r\n \r\n const exclude = new Set(except);\r\n const targets = this.clients.difference(exclude);\r\n\r\n for (const client of targets)\r\n client.emit(eventName, data);\r\n }\r\n\r\n public on<T = unknown>(eventName: string, callback: DataEventHandler<T>) {\r\n this.clients.forEach(client => client.on(eventName, (data: T) => callback(data, client)));\r\n\r\n this.io.on('connection', (client: Client) => {\r\n client.on(eventName, (data: T) => callback(data, client));\r\n });\r\n }\r\n\r\n public onJoin(callback: ClientEventHandler) {\r\n this.clients.forEach(callback);\r\n this.io.on('connection', callback);\r\n }\r\n\r\n public onLeave(callback: ClientEventHandler) {\r\n this.io.on('connection', client => {\r\n client.on('disconnect', () => callback(client));\r\n });\r\n }\r\n}"],"mappings":"AAAA,OAA2B,UAAUA,MAAsB,YAU3D,IAAqBC,EAArB,KAA4B,CAER,KACA,WACA,QAAuB,IAAI,IACnC,GAER,YAAYC,EAAwB,CAChC,KAAK,KAAOA,EAAQ,KACpB,KAAK,WAAaA,EAAQ,YAAc,IACxC,KAAK,GAAK,IAAIF,EAAe,KAAK,KAAM,CAAE,KAAM,CAAE,OAAQ,KAAK,UAAW,CAAC,CAAC,EAE5E,KAAK,GAAG,GAAG,aAAeG,GAAmB,CAEzC,KAAK,QAAQ,IAAIA,CAAM,EACvBA,EAAO,GAAG,aAAc,IAAM,KAAK,QAAQ,OAAOA,CAAM,CAAC,CAC7D,CAAC,CACL,CAIO,UAAuBC,EAAmBC,EAASC,EAAoB,CAC1E,GAAI,CAACA,EAAS,CACV,KAAK,GAAG,KAAKF,EAAWC,CAAI,EAC5B,MACJ,CAEAC,EAAQ,QAAQC,GAAKA,EAAE,KAAKH,EAAWC,CAAI,CAAC,CAChD,CAEO,gBAA6BD,EAAmBC,EAASG,EAAkB,CAE9E,IAAMC,EAAU,IAAI,IAAID,CAAM,EACxBE,EAAU,KAAK,QAAQ,WAAWD,CAAO,EAE/C,QAAWN,KAAUO,EACjBP,EAAO,KAAKC,EAAWC,CAAI,CACnC,CAEO,GAAgBD,EAAmBO,EAA+B,CACrE,KAAK,QAAQ,QAAQR,GAAUA,EAAO,GAAGC,EAAYC,GAAYM,EAASN,EAAMF,CAAM,CAAC,CAAC,EAExF,KAAK,GAAG,GAAG,aAAeA,GAAmB,CACzCA,EAAO,GAAGC,EAAYC,GAAYM,EAASN,EAAMF,CAAM,CAAC,CAC5D,CAAC,CACL,CAEO,OAAOQ,EAA8B,CACxC,KAAK,QAAQ,QAAQA,CAAQ,EAC7B,KAAK,GAAG,GAAG,aAAcA,CAAQ,CACrC,CAEO,QAAQA,EAA8B,CACzC,KAAK,GAAG,GAAG,aAAcR,GAAU,CAC/BA,EAAO,GAAG,aAAc,IAAMQ,EAASR,CAAM,CAAC,CAClD,CAAC,CACL,CACJ","names":["SocketIOServer","Server","options","client","eventName","data","clients","c","except","exclude","targets","callback"]}
|