crossws 0.4.4 → 0.4.6

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.
Files changed (57) hide show
  1. package/adapters/bunny.d.ts +2 -0
  2. package/adapters/vercel.d.ts +2 -0
  3. package/dist/THIRD-PARTY-LICENSES.md +33 -0
  4. package/dist/_chunks/_request.mjs +1 -4
  5. package/dist/_chunks/_types.d.mts +9 -10
  6. package/dist/_chunks/adapter.d.mts +7 -15
  7. package/dist/_chunks/adapter.mjs +6 -7
  8. package/dist/_chunks/bun.d.mts +2 -5
  9. package/dist/_chunks/bunny.d.mts +22 -0
  10. package/dist/_chunks/cloudflare.d.mts +3 -6
  11. package/dist/_chunks/deno.d.mts +2 -5
  12. package/dist/_chunks/error.mjs +1 -4
  13. package/dist/_chunks/libs/ws.mjs +96 -1171
  14. package/dist/_chunks/node.d.mts +36 -7
  15. package/dist/_chunks/node.mjs +129 -0
  16. package/dist/_chunks/peer.mjs +2 -60
  17. package/dist/_chunks/rolldown-runtime.mjs +8 -16
  18. package/dist/_chunks/sse.d.mts +2 -5
  19. package/dist/_chunks/web.d.mts +1 -3
  20. package/dist/adapters/bun.d.mts +1 -1
  21. package/dist/adapters/bun.mjs +3 -8
  22. package/dist/adapters/bunny.d.mts +2 -0
  23. package/dist/adapters/bunny.mjs +68 -0
  24. package/dist/adapters/cloudflare.d.mts +1 -1
  25. package/dist/adapters/cloudflare.mjs +11 -15
  26. package/dist/adapters/deno.d.mts +1 -1
  27. package/dist/adapters/deno.mjs +4 -9
  28. package/dist/adapters/node.d.mts +2 -2
  29. package/dist/adapters/node.mjs +2 -125
  30. package/dist/adapters/sse.d.mts +1 -1
  31. package/dist/adapters/sse.mjs +3 -8
  32. package/dist/adapters/uws.d.mts +2 -7
  33. package/dist/adapters/uws.mjs +6 -10
  34. package/dist/adapters/vercel.d.mts +25 -0
  35. package/dist/adapters/vercel.mjs +48 -0
  36. package/dist/index.d.mts +97 -2
  37. package/dist/index.mjs +178 -3
  38. package/dist/server/bun.d.mts +1 -7
  39. package/dist/server/bun.mjs +3 -7
  40. package/dist/server/bunny.d.mts +5 -0
  41. package/dist/server/bunny.mjs +23 -0
  42. package/dist/server/cloudflare.d.mts +1 -7
  43. package/dist/server/cloudflare.mjs +3 -7
  44. package/dist/server/default.d.mts +1 -7
  45. package/dist/server/default.mjs +3 -7
  46. package/dist/server/deno.d.mts +1 -7
  47. package/dist/server/deno.mjs +3 -7
  48. package/dist/server/node.d.mts +1 -7
  49. package/dist/server/node.mjs +3 -9
  50. package/dist/websocket/native.d.mts +0 -2
  51. package/dist/websocket/native.mjs +1 -5
  52. package/dist/websocket/node.d.mts +0 -2
  53. package/dist/websocket/node.mjs +2 -8
  54. package/dist/websocket/sse.d.mts +1 -4
  55. package/dist/websocket/sse.mjs +1 -4
  56. package/package.json +45 -42
  57. package/server/bunny.d.ts +2 -0
@@ -1,10 +1,8 @@
1
- import cloudflare_default from "../adapters/cloudflare.mjs";
1
+ import cloudflareAdapter from "../adapters/cloudflare.mjs";
2
2
  import { serve as serve$1 } from "srvx/cloudflare";
3
-
4
- //#region src/server/cloudflare.ts
5
3
  function plugin(wsOpts) {
6
4
  return (server) => {
7
- const ws = cloudflare_default({
5
+ const ws = cloudflareAdapter({
8
6
  hooks: wsOpts,
9
7
  resolve: wsOpts.resolve,
10
8
  ...wsOpts.options?.cloudflare
@@ -22,6 +20,4 @@ function serve(options) {
22
20
  }
23
21
  return serve$1(options);
24
22
  }
25
-
26
- //#endregion
27
- export { plugin, serve };
23
+ export { plugin, serve };
@@ -1,11 +1,5 @@
1
- import "../_chunks/bun.mjs";
2
- import "../_chunks/cloudflare.mjs";
3
- import "../_chunks/node.mjs";
4
- import { n as WSOptions, t as ServerWithWSOptions } from "../_chunks/_types.mjs";
1
+ import { ServerWithWSOptions, WSOptions } from "../_chunks/_types.mjs";
5
2
  import { Server, ServerPlugin } from "srvx";
6
-
7
- //#region src/server/default.d.ts
8
3
  declare function plugin(wsOpts: WSOptions): ServerPlugin;
9
4
  declare function serve(options: ServerWithWSOptions): Server;
10
- //#endregion
11
5
  export { plugin, serve };
@@ -1,9 +1,7 @@
1
- import sse_default from "../adapters/sse.mjs";
1
+ import sseAdapter from "../adapters/sse.mjs";
2
2
  import { serve as serve$1 } from "srvx";
3
-
4
- //#region src/server/default.ts
5
3
  function plugin(wsOpts) {
6
- const ws = sse_default({
4
+ const ws = sseAdapter({
7
5
  hooks: wsOpts,
8
6
  resolve: wsOpts.resolve,
9
7
  ...wsOpts.options?.sse
@@ -23,6 +21,4 @@ function serve(options) {
23
21
  }
24
22
  return serve$1(options);
25
23
  }
26
-
27
- //#endregion
28
- export { plugin, serve };
24
+ export { plugin, serve };
@@ -1,11 +1,5 @@
1
- import "../_chunks/bun.mjs";
2
- import "../_chunks/cloudflare.mjs";
3
- import "../_chunks/node.mjs";
4
- import { n as WSOptions, t as ServerWithWSOptions } from "../_chunks/_types.mjs";
1
+ import { ServerWithWSOptions, WSOptions } from "../_chunks/_types.mjs";
5
2
  import { Server, ServerPlugin } from "srvx";
6
-
7
- //#region src/server/deno.d.ts
8
3
  declare function plugin(wsOpts: WSOptions): ServerPlugin;
9
4
  declare function serve(options: ServerWithWSOptions): Server;
10
- //#endregion
11
5
  export { plugin, serve };
@@ -1,10 +1,8 @@
1
- import deno_default from "../adapters/deno.mjs";
1
+ import denoAdapter from "../adapters/deno.mjs";
2
2
  import { serve as serve$1 } from "srvx/deno";
3
-
4
- //#region src/server/deno.ts
5
3
  function plugin(wsOpts) {
6
4
  return (server) => {
7
- const ws = deno_default({
5
+ const ws = denoAdapter({
8
6
  hooks: wsOpts,
9
7
  resolve: wsOpts.resolve,
10
8
  ...wsOpts.options?.deno
@@ -22,6 +20,4 @@ function serve(options) {
22
20
  }
23
21
  return serve$1(options);
24
22
  }
25
-
26
- //#endregion
27
- export { plugin, serve };
23
+ export { plugin, serve };
@@ -1,11 +1,5 @@
1
- import "../_chunks/bun.mjs";
2
- import "../_chunks/cloudflare.mjs";
3
- import "../_chunks/node.mjs";
4
- import { n as WSOptions, t as ServerWithWSOptions } from "../_chunks/_types.mjs";
1
+ import { ServerWithWSOptions, WSOptions } from "../_chunks/_types.mjs";
5
2
  import { Server, ServerPlugin } from "srvx";
6
-
7
- //#region src/server/node.d.ts
8
3
  declare function plugin(wsOpts: WSOptions): ServerPlugin;
9
4
  declare function serve(options: ServerWithWSOptions): Server;
10
- //#endregion
11
5
  export { plugin, serve };
@@ -1,12 +1,8 @@
1
- import "../_chunks/rolldown-runtime.mjs";
2
- import "../_chunks/libs/ws.mjs";
3
- import node_default from "../adapters/node.mjs";
1
+ import { nodeAdapter } from "../_chunks/node.mjs";
4
2
  import { NodeRequest, serve as serve$1 } from "srvx/node";
5
-
6
- //#region src/server/node.ts
7
3
  function plugin(wsOpts) {
8
4
  return (server) => {
9
- const ws = node_default({
5
+ const ws = nodeAdapter({
10
6
  hooks: wsOpts,
11
7
  resolve: wsOpts.resolve,
12
8
  ...wsOpts.options?.deno
@@ -33,6 +29,4 @@ function serve(options) {
33
29
  }
34
30
  return serve$1(options);
35
31
  }
36
-
37
- //#endregion
38
- export { plugin, serve };
32
+ export { plugin, serve };
@@ -1,4 +1,2 @@
1
- //#region src/websocket/native.d.ts
2
1
  declare const WebSocket: typeof globalThis.WebSocket;
3
- //#endregion
4
2
  export { WebSocket as default };
@@ -1,6 +1,2 @@
1
- //#region src/websocket/native.ts
2
1
  const WebSocket = globalThis.WebSocket;
3
- var native_default = WebSocket;
4
-
5
- //#endregion
6
- export { native_default as default };
2
+ export { WebSocket as default };
@@ -1,4 +1,2 @@
1
- //#region src/websocket/node.d.ts
2
1
  declare const Websocket: typeof globalThis.WebSocket;
3
- //#endregion
4
2
  export { Websocket as default };
@@ -1,9 +1,3 @@
1
- import "../_chunks/rolldown-runtime.mjs";
2
- import { t as import_websocket } from "../_chunks/libs/ws.mjs";
3
-
4
- //#region src/websocket/node.ts
1
+ import { import_websocket } from "../_chunks/libs/ws.mjs";
5
2
  const Websocket = globalThis.WebSocket || import_websocket.default;
6
- var node_default = Websocket;
7
-
8
- //#endregion
9
- export { node_default as default };
3
+ export { Websocket as default };
@@ -1,6 +1,4 @@
1
- import { a as WebSocket, i as MessageEvent, n as Event, r as EventTarget, t as CloseEvent } from "../_chunks/web.mjs";
2
-
3
- //#region src/websocket/sse.d.ts
1
+ import { CloseEvent, Event, EventTarget, MessageEvent, WebSocket } from "../_chunks/web.mjs";
4
2
  type Ctor<T> = {
5
3
  prototype: T;
6
4
  new (): T;
@@ -38,5 +36,4 @@ declare class WebSocketSSE extends _EventTarget implements WebSocket {
38
36
  close(_code?: number, _reason?: string): void;
39
37
  send(data: any): Promise<void>;
40
38
  }
41
- //#endregion
42
39
  export { WebSocketSSE, WebSocketSSEOptions };
@@ -1,4 +1,3 @@
1
- //#region src/websocket/sse.ts
2
1
  const _EventTarget = EventTarget;
3
2
  const defaultOptions = Object.freeze({
4
3
  bidir: true,
@@ -111,6 +110,4 @@ var WebSocketSSE = class WebSocketSSE extends _EventTarget {
111
110
  });
112
111
  }
113
112
  };
114
-
115
- //#endregion
116
- export { WebSocketSSE };
113
+ export { WebSocketSSE };
package/package.json CHANGED
@@ -1,21 +1,34 @@
1
1
  {
2
2
  "name": "crossws",
3
- "version": "0.4.4",
3
+ "version": "0.4.6",
4
4
  "description": "Cross-platform WebSocket Servers for Node.js, Deno, Bun and Cloudflare Workers",
5
5
  "homepage": "https://crossws.h3.dev",
6
- "repository": "h3js/crossws",
7
6
  "license": "MIT",
8
- "sideEffects": false,
7
+ "repository": "h3js/crossws",
8
+ "files": [
9
+ "dist",
10
+ "adapters",
11
+ "websocket",
12
+ "server",
13
+ "*.d.ts"
14
+ ],
9
15
  "type": "module",
16
+ "sideEffects": false,
17
+ "main": "./dist/index.mjs",
18
+ "module": "./dist/index.mjs",
19
+ "types": "./dist/index.d.mts",
10
20
  "exports": {
11
21
  ".": "./dist/index.mjs",
12
22
  "./adapters/bun": "./dist/adapters/bun.mjs",
23
+ "./adapters/bunny": "./dist/adapters/bunny.mjs",
13
24
  "./adapters/deno": "./dist/adapters/deno.mjs",
14
25
  "./adapters/cloudflare": "./dist/adapters/cloudflare.mjs",
15
26
  "./adapters/sse": "./dist/adapters/sse.mjs",
16
27
  "./adapters/node": "./dist/adapters/node.mjs",
28
+ "./adapters/vercel": "./dist/adapters/vercel.mjs",
17
29
  "./adapters/uws": "./dist/adapters/uws.mjs",
18
30
  "./server/bun": "./dist/server/bun.mjs",
31
+ "./server/bunny": "./dist/server/bunny.mjs",
19
32
  "./server/deno": "./dist/server/deno.mjs",
20
33
  "./server/node": "./dist/server/node.mjs",
21
34
  "./server": {
@@ -37,21 +50,11 @@
37
50
  "default": "./dist/websocket/native.mjs"
38
51
  }
39
52
  },
40
- "main": "./dist/index.mjs",
41
- "module": "./dist/index.mjs",
42
- "types": "./dist/index.d.mts",
43
- "files": [
44
- "dist",
45
- "adapters",
46
- "websocket",
47
- "server",
48
- "*.d.ts"
49
- ],
50
53
  "scripts": {
51
54
  "build": "obuild",
52
55
  "dev": "vitest",
53
- "lint": "eslint --cache . && prettier -c src test",
54
- "lint:fix": "eslint --cache . --fix && prettier -w src test",
56
+ "lint": "oxlint . && oxfmt --check src test",
57
+ "fmt": "oxlint . --fix && oxfmt src test",
55
58
  "prepack": "pnpm run build",
56
59
  "play:bun": "bun --watch test/fixture/bun.ts",
57
60
  "play:cf": "wrangler dev --port 3001 -c test/fixture/wrangler.toml",
@@ -61,52 +64,52 @@
61
64
  "play:sse": "deno run --unstable-byonm -A --watch test/fixture/sse.ts",
62
65
  "play:uws": "jiti test/fixture/uws.ts",
63
66
  "release": "pnpm test && pnpm build && changelogen --release && npm publish && git push --follow-tags",
64
- "test": "pnpm lint && pnpm test:types && vitest run --coverage",
65
- "test:types": "tsgo --noEmit --skipLibCheck"
66
- },
67
- "resolutions": {
68
- "crossws": "workspace:*"
67
+ "test": "pnpm lint && pnpm typecheck && vitest run --coverage",
68
+ "typecheck": "tsgo --noEmit --skipLibCheck"
69
69
  },
70
70
  "devDependencies": {
71
- "@cloudflare/workers-types": "^4.20260127.0",
72
- "@types/bun": "^1.3.6",
73
- "@types/deno": "^2.5.0",
74
- "@types/node": "^25.0.10",
75
- "@types/web": "^0.0.323",
71
+ "@cloudflare/workers-types": "^4.20260608.1",
72
+ "@types/bun": "^1.3.14",
73
+ "@types/deno": "^2.7.0",
74
+ "@types/node": "^25.9.2",
75
+ "@types/web": "^0.0.350",
76
76
  "@types/ws": "^8.18.1",
77
- "@typescript/native-preview": "^7.0.0-dev.20260127.1",
78
- "@vitest/coverage-v8": "^4.0.18",
79
- "automd": "^0.4.2",
77
+ "@typescript/native-preview": "7.0.0-dev.20260608.1",
78
+ "@vitest/coverage-v8": "^4.1.8",
79
+ "automd": "^0.4.3",
80
80
  "changelogen": "^0.6.2",
81
81
  "consola": "^3.4.2",
82
- "eslint": "^9.39.2",
83
82
  "eslint-config-unjs": "^0.6.2",
84
83
  "eventsource": "^4.1.0",
85
84
  "execa": "^9.6.1",
86
85
  "get-port-please": "^3.2.0",
87
- "h3": "^2.0.1-rc.11",
88
- "jiti": "^2.6.1",
89
- "listhen": "^1.9.0",
90
- "obuild": "^0.4.20",
91
- "prettier": "^3.8.1",
92
- "srvx": "^0.10.1",
93
- "typescript": "^5.9.3",
86
+ "h3": "2.0.1-rc.22",
87
+ "jiti": "^2.7.0",
88
+ "listhen": "^1.10.0",
89
+ "obuild": "^0.4.36",
90
+ "oxfmt": "^0.53.0",
91
+ "oxlint": "^1.68.0",
92
+ "srvx": "^0.11.16",
93
+ "typescript": "^6.0.3",
94
94
  "uWebSockets.js": "github:uNetworking/uWebSockets.js#v20.57.0",
95
95
  "unbuild": "^3.6.1",
96
- "undici": "^7.19.1",
97
- "vitest": "^4.0.18",
98
- "wrangler": "^4.60.0",
99
- "ws": "^8.19.0"
96
+ "undici": "^8.4.1",
97
+ "vitest": "^4.1.8",
98
+ "wrangler": "^4.98.0",
99
+ "ws": "^8.21.0"
100
100
  },
101
101
  "peerDependencies": {
102
- "srvx": ">=0.7.1"
102
+ "srvx": ">=0.11.5"
103
103
  },
104
104
  "peerDependenciesMeta": {
105
105
  "srvx": {
106
106
  "optional": true
107
107
  }
108
108
  },
109
- "packageManager": "pnpm@10.28.2",
109
+ "resolutions": {
110
+ "crossws": "workspace:*"
111
+ },
112
+ "packageManager": "pnpm@11.5.2",
110
113
  "pnpm": {
111
114
  "ignoredBuiltDependencies": [
112
115
  "@parcel/watcher",
@@ -0,0 +1,2 @@
1
+ export * from "../dist/server/bunny.mjs";
2
+ export { default } from "../dist/server/bunny.mjs";