cojson-transport-ws 0.9.12 → 0.9.18
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/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +15 -0
- package/dist/index.js +6 -8
- package/dist/index.js.map +1 -1
- package/dist/serialization.js +5 -1
- package/dist/serialization.js.map +1 -1
- package/package.json +2 -2
- package/src/index.ts +7 -10
- package/src/serialization.ts +6 -2
package/.turbo/turbo-build.log
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# cojson-transport-nodejs-ws
|
|
2
2
|
|
|
3
|
+
## 0.9.18
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies [8898b10]
|
|
8
|
+
- cojson@0.9.18
|
|
9
|
+
|
|
10
|
+
## 0.9.13
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- 8d29e50: Restore the logger wrapper and adapt the API to pino
|
|
15
|
+
- Updated dependencies [8d29e50]
|
|
16
|
+
- cojson@0.9.13
|
|
17
|
+
|
|
3
18
|
## 0.9.12
|
|
4
19
|
|
|
5
20
|
### Patch Changes
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { cojsonInternals, } from "cojson";
|
|
1
|
+
import { cojsonInternals, logger, } from "cojson";
|
|
2
2
|
import { BatchedOutgoingMessages } from "./BatchedOutgoingMessages.js";
|
|
3
|
-
import { deserializeMessages } from "./serialization.js";
|
|
3
|
+
import { deserializeMessages, getErrorMessage } from "./serialization.js";
|
|
4
4
|
export const BUFFER_LIMIT = 100000;
|
|
5
5
|
export const BUFFER_LIMIT_POLLING_INTERVAL = 10;
|
|
6
6
|
function createPingTimeoutListener(enabled, callback) {
|
|
@@ -88,25 +88,24 @@ export function createWebSocketPeer({ id, websocket, role, expectPings = true, b
|
|
|
88
88
|
function handleClose() {
|
|
89
89
|
incoming
|
|
90
90
|
.push("Disconnected")
|
|
91
|
-
.catch((e) =>
|
|
91
|
+
.catch((e) => logger.error("Error while pushing disconnect msg", e));
|
|
92
92
|
emitClosedEvent();
|
|
93
93
|
}
|
|
94
94
|
websocket.addEventListener("close", handleClose);
|
|
95
95
|
const pingTimeout = createPingTimeoutListener(expectPings, () => {
|
|
96
96
|
incoming
|
|
97
97
|
.push("PingTimeout")
|
|
98
|
-
.catch((e) =>
|
|
98
|
+
.catch((e) => logger.error("Error while pushing ping timeout", e));
|
|
99
99
|
emitClosedEvent();
|
|
100
100
|
});
|
|
101
101
|
const outgoingMessages = createOutgoingMessagesManager(websocket, batchingByDefault);
|
|
102
102
|
function handleIncomingMsg(event) {
|
|
103
103
|
if (event.data === "") {
|
|
104
|
-
console.log("client", id, "sent empty message");
|
|
105
104
|
return;
|
|
106
105
|
}
|
|
107
106
|
const result = deserializeMessages(event.data);
|
|
108
107
|
if (!result.ok) {
|
|
109
|
-
|
|
108
|
+
logger.warn("Error while deserializing messages: " + getErrorMessage(result.error));
|
|
110
109
|
return;
|
|
111
110
|
}
|
|
112
111
|
const { messages } = result;
|
|
@@ -119,7 +118,7 @@ export function createWebSocketPeer({ id, websocket, role, expectPings = true, b
|
|
|
119
118
|
if (msg && "action" in msg) {
|
|
120
119
|
incoming
|
|
121
120
|
.push(msg)
|
|
122
|
-
.catch((e) =>
|
|
121
|
+
.catch((e) => logger.error("Error while pushing incoming msg", e));
|
|
123
122
|
}
|
|
124
123
|
}
|
|
125
124
|
}
|
|
@@ -130,7 +129,6 @@ export function createWebSocketPeer({ id, websocket, role, expectPings = true, b
|
|
|
130
129
|
outgoing: {
|
|
131
130
|
push: outgoingMessages.sendMessage,
|
|
132
131
|
close() {
|
|
133
|
-
console.log("Trying to close", id, websocket.readyState);
|
|
134
132
|
outgoingMessages.close();
|
|
135
133
|
websocket.removeEventListener("message", handleIncomingMsg);
|
|
136
134
|
websocket.removeEventListener("close", handleClose);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,eAAe,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/serialization.js
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import { logger } from "cojson";
|
|
2
|
+
export function getErrorMessage(error) {
|
|
3
|
+
return error instanceof Error ? error.message : "Unknown error";
|
|
4
|
+
}
|
|
1
5
|
export function addMessageToBacklog(backlog, message) {
|
|
2
6
|
if (!backlog) {
|
|
3
7
|
return JSON.stringify(message);
|
|
@@ -18,7 +22,7 @@ export function deserializeMessages(messages) {
|
|
|
18
22
|
};
|
|
19
23
|
}
|
|
20
24
|
catch (e) {
|
|
21
|
-
|
|
25
|
+
logger.error("Error while deserializing messages: " + getErrorMessage(e));
|
|
22
26
|
return {
|
|
23
27
|
ok: false,
|
|
24
28
|
error: e,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serialization.js","sourceRoot":"","sources":["../src/serialization.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"serialization.js","sourceRoot":"","sources":["../src/serialization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,EAAE,MAAM,QAAQ,CAAC;AAG7C,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,OAAoB;IACvE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,GAAG,OAAO,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAiB;IACnD,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,IAAI,KAAK,CAAC,mBAAmB,CAAC;SAC7B,CAAC;IACb,CAAC;IAED,IAAI,CAAC;QACH,OAAO;YACL,EAAE,EAAE,IAAI;YACR,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAE9C;SACL,CAAC;IACb,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,KAAK,CAAC,sCAAsC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,CAAC;SACA,CAAC;IACb,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cojson-transport-ws",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.9.
|
|
4
|
+
"version": "0.9.18",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "src/index.ts",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"dependencies": {
|
|
9
|
-
"cojson": "0.9.
|
|
9
|
+
"cojson": "0.9.18",
|
|
10
10
|
"typescript": "~5.6.2"
|
|
11
11
|
},
|
|
12
12
|
"devDependencies": {
|
package/src/index.ts
CHANGED
|
@@ -4,9 +4,10 @@ import {
|
|
|
4
4
|
PingTimeoutError,
|
|
5
5
|
SyncMessage,
|
|
6
6
|
cojsonInternals,
|
|
7
|
+
logger,
|
|
7
8
|
} from "cojson";
|
|
8
9
|
import { BatchedOutgoingMessages } from "./BatchedOutgoingMessages.js";
|
|
9
|
-
import { deserializeMessages } from "./serialization.js";
|
|
10
|
+
import { deserializeMessages, getErrorMessage } from "./serialization.js";
|
|
10
11
|
import { AnyWebSocket } from "./types.js";
|
|
11
12
|
|
|
12
13
|
export const BUFFER_LIMIT = 100_000;
|
|
@@ -136,7 +137,7 @@ export function createWebSocketPeer({
|
|
|
136
137
|
function handleClose() {
|
|
137
138
|
incoming
|
|
138
139
|
.push("Disconnected")
|
|
139
|
-
.catch((e) =>
|
|
140
|
+
.catch((e) => logger.error("Error while pushing disconnect msg", e));
|
|
140
141
|
emitClosedEvent();
|
|
141
142
|
}
|
|
142
143
|
|
|
@@ -145,7 +146,7 @@ export function createWebSocketPeer({
|
|
|
145
146
|
const pingTimeout = createPingTimeoutListener(expectPings, () => {
|
|
146
147
|
incoming
|
|
147
148
|
.push("PingTimeout")
|
|
148
|
-
.catch((e) =>
|
|
149
|
+
.catch((e) => logger.error("Error while pushing ping timeout", e));
|
|
149
150
|
emitClosedEvent();
|
|
150
151
|
});
|
|
151
152
|
|
|
@@ -156,17 +157,14 @@ export function createWebSocketPeer({
|
|
|
156
157
|
|
|
157
158
|
function handleIncomingMsg(event: { data: unknown }) {
|
|
158
159
|
if (event.data === "") {
|
|
159
|
-
console.log("client", id, "sent empty message");
|
|
160
160
|
return;
|
|
161
161
|
}
|
|
162
162
|
|
|
163
163
|
const result = deserializeMessages(event.data);
|
|
164
164
|
|
|
165
165
|
if (!result.ok) {
|
|
166
|
-
|
|
167
|
-
"Error while deserializing messages",
|
|
168
|
-
event.data,
|
|
169
|
-
result.error,
|
|
166
|
+
logger.warn(
|
|
167
|
+
"Error while deserializing messages: " + getErrorMessage(result.error),
|
|
170
168
|
);
|
|
171
169
|
return;
|
|
172
170
|
}
|
|
@@ -184,7 +182,7 @@ export function createWebSocketPeer({
|
|
|
184
182
|
if (msg && "action" in msg) {
|
|
185
183
|
incoming
|
|
186
184
|
.push(msg)
|
|
187
|
-
.catch((e) =>
|
|
185
|
+
.catch((e) => logger.error("Error while pushing incoming msg", e));
|
|
188
186
|
}
|
|
189
187
|
}
|
|
190
188
|
}
|
|
@@ -197,7 +195,6 @@ export function createWebSocketPeer({
|
|
|
197
195
|
outgoing: {
|
|
198
196
|
push: outgoingMessages.sendMessage,
|
|
199
197
|
close() {
|
|
200
|
-
console.log("Trying to close", id, websocket.readyState);
|
|
201
198
|
outgoingMessages.close();
|
|
202
199
|
|
|
203
200
|
websocket.removeEventListener("message", handleIncomingMsg);
|
package/src/serialization.ts
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
import { SyncMessage } from "cojson";
|
|
1
|
+
import { SyncMessage, logger } from "cojson";
|
|
2
2
|
import { PingMsg } from "./types.js";
|
|
3
3
|
|
|
4
|
+
export function getErrorMessage(error: unknown) {
|
|
5
|
+
return error instanceof Error ? error.message : "Unknown error";
|
|
6
|
+
}
|
|
7
|
+
|
|
4
8
|
export function addMessageToBacklog(backlog: string, message: SyncMessage) {
|
|
5
9
|
if (!backlog) {
|
|
6
10
|
return JSON.stringify(message);
|
|
@@ -24,7 +28,7 @@ export function deserializeMessages(messages: unknown) {
|
|
|
24
28
|
| PingMsg[],
|
|
25
29
|
} as const;
|
|
26
30
|
} catch (e) {
|
|
27
|
-
|
|
31
|
+
logger.error("Error while deserializing messages: " + getErrorMessage(e));
|
|
28
32
|
return {
|
|
29
33
|
ok: false,
|
|
30
34
|
error: e,
|