@jay-framework/editor-client 0.11.0 → 0.13.0
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/index.d.ts +5 -3
- package/dist/index.js +14 -7
- package/package.json +5 -4
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _jay_framework_editor_protocol from '@jay-framework/editor-protocol';
|
|
2
|
-
import { ConnectionState, EditorProtocolMessageTypes, PublishMessage, PublishResponse, SaveImageMessage, SaveImageResponse, HasImageMessage, HasImageResponse, GetProjectInfoMessage, GetProjectInfoResponse, EditorProtocol, EditorProtocolResponseTypes } from '@jay-framework/editor-protocol';
|
|
2
|
+
import { ConnectionState, EditorProtocolMessageTypes, PublishMessage, PublishResponse, SaveImageMessage, SaveImageResponse, HasImageMessage, HasImageResponse, GetProjectInfoMessage, GetProjectInfoResponse, ExportMessage, ExportResponse, ImportMessage, ImportResponse, EditorProtocol, EditorProtocolResponseTypes } from '@jay-framework/editor-protocol';
|
|
3
3
|
|
|
4
4
|
interface ConnectionManagerOptions {
|
|
5
5
|
portRange?: [number, number];
|
|
@@ -29,7 +29,7 @@ declare class ConnectionManager {
|
|
|
29
29
|
disconnect(): Promise<void>;
|
|
30
30
|
getConnectionState(): ConnectionState;
|
|
31
31
|
onConnectionStateChange(callback: ConnectionStateCallback): () => void;
|
|
32
|
-
sendMessage<T extends EditorProtocolMessageTypes
|
|
32
|
+
sendMessage<T extends EditorProtocolMessageTypes<any>>(message: T): Promise<T extends PublishMessage ? PublishResponse : T extends SaveImageMessage ? SaveImageResponse : T extends HasImageMessage ? HasImageResponse : T extends GetProjectInfoMessage ? GetProjectInfoResponse : T extends ExportMessage<any> ? ExportResponse : T extends ImportMessage<any> ? ImportResponse<any> : never>;
|
|
33
33
|
private updateConnectionState;
|
|
34
34
|
private scheduleReconnect;
|
|
35
35
|
private discoverServer;
|
|
@@ -53,7 +53,9 @@ declare class EditorClient implements EditorProtocol {
|
|
|
53
53
|
saveImage(params: SaveImageMessage): Promise<SaveImageResponse>;
|
|
54
54
|
hasImage(params: HasImageMessage): Promise<HasImageResponse>;
|
|
55
55
|
getProjectInfo(params: GetProjectInfoMessage): Promise<GetProjectInfoResponse>;
|
|
56
|
-
|
|
56
|
+
export<TVendorDoc>(params: ExportMessage<TVendorDoc>): Promise<ExportResponse>;
|
|
57
|
+
import<TVendorDoc>(params: ImportMessage<TVendorDoc>): Promise<ImportResponse<TVendorDoc>>;
|
|
58
|
+
send(params: EditorProtocolMessageTypes<any>): Promise<EditorProtocolResponseTypes<any>>;
|
|
57
59
|
getConnectionManager(): ConnectionManager;
|
|
58
60
|
}
|
|
59
61
|
declare function createEditorClient(options?: EditorClientOptions): EditorClient;
|
package/dist/index.js
CHANGED
|
@@ -6,6 +6,7 @@ var __publicField = (obj, key, value) => {
|
|
|
6
6
|
};
|
|
7
7
|
import { io } from "socket.io-client";
|
|
8
8
|
import { v4 } from "uuid";
|
|
9
|
+
import { getLogger } from "@jay-framework/logger";
|
|
9
10
|
import { createProtocolMessage } from "@jay-framework/editor-protocol";
|
|
10
11
|
class ConnectionManager {
|
|
11
12
|
constructor(options = {}) {
|
|
@@ -96,7 +97,7 @@ class ConnectionManager {
|
|
|
96
97
|
try {
|
|
97
98
|
callback(newState);
|
|
98
99
|
} catch (error) {
|
|
99
|
-
|
|
100
|
+
getLogger().error(`Error in connection state callback: ${error}`);
|
|
100
101
|
}
|
|
101
102
|
});
|
|
102
103
|
if (newState === "disconnected" && this.autoReconnect && !this.isManualDisconnect) {
|
|
@@ -177,16 +178,16 @@ ${errors.join("\n")}`
|
|
|
177
178
|
forceNew: true
|
|
178
179
|
});
|
|
179
180
|
this.socket.on("connect", () => {
|
|
180
|
-
|
|
181
|
+
getLogger().info("Connected to editor server");
|
|
181
182
|
this.setupSocketHandlers();
|
|
182
183
|
resolve();
|
|
183
184
|
});
|
|
184
185
|
this.socket.on("connect_error", (error) => {
|
|
185
|
-
|
|
186
|
+
getLogger().error(`Connection error: ${error}`);
|
|
186
187
|
reject(error);
|
|
187
188
|
});
|
|
188
189
|
this.socket.on("disconnect", () => {
|
|
189
|
-
|
|
190
|
+
getLogger().info("Disconnected from editor server");
|
|
190
191
|
this.updateConnectionState("disconnected");
|
|
191
192
|
});
|
|
192
193
|
});
|
|
@@ -210,12 +211,12 @@ ${errors.join("\n")}`
|
|
|
210
211
|
if (this.isManualDisconnect || this.isConnecting) {
|
|
211
212
|
return;
|
|
212
213
|
}
|
|
213
|
-
|
|
214
|
+
getLogger().info("Attempting to reconnect...");
|
|
214
215
|
try {
|
|
215
216
|
await this.connect();
|
|
216
|
-
|
|
217
|
+
getLogger().info("Reconnected successfully");
|
|
217
218
|
} catch (error) {
|
|
218
|
-
|
|
219
|
+
getLogger().error(`Reconnection failed: ${error}`);
|
|
219
220
|
this.scheduleReconnect();
|
|
220
221
|
}
|
|
221
222
|
}
|
|
@@ -254,6 +255,12 @@ class EditorClient {
|
|
|
254
255
|
async getProjectInfo(params) {
|
|
255
256
|
return this.connectionManager.sendMessage(params);
|
|
256
257
|
}
|
|
258
|
+
async export(params) {
|
|
259
|
+
return this.connectionManager.sendMessage(params);
|
|
260
|
+
}
|
|
261
|
+
async import(params) {
|
|
262
|
+
return this.connectionManager.sendMessage(params);
|
|
263
|
+
}
|
|
257
264
|
async send(params) {
|
|
258
265
|
return this.connectionManager.sendMessage(params);
|
|
259
266
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jay-framework/editor-client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.13.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -24,14 +24,15 @@
|
|
|
24
24
|
"test:watch": "vitest"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@jay-framework/editor-protocol": "^0.
|
|
27
|
+
"@jay-framework/editor-protocol": "^0.13.0",
|
|
28
|
+
"@jay-framework/logger": "^0.13.0",
|
|
28
29
|
"get-port": "^7.0.0",
|
|
29
30
|
"socket.io-client": "^4.7.4",
|
|
30
31
|
"uuid": "^9.0.1"
|
|
31
32
|
},
|
|
32
33
|
"devDependencies": {
|
|
33
|
-
"@jay-framework/dev-environment": "^0.
|
|
34
|
-
"@jay-framework/jay-cli": "^0.
|
|
34
|
+
"@jay-framework/dev-environment": "^0.13.0",
|
|
35
|
+
"@jay-framework/jay-cli": "^0.13.0",
|
|
35
36
|
"@types/node": "^22.15.21",
|
|
36
37
|
"@types/uuid": "^9.0.7",
|
|
37
38
|
"rimraf": "^5.0.5",
|