@jay-framework/editor-server 0.15.5 → 0.16.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 CHANGED
@@ -1,4 +1,4 @@
1
- import { DevServerProtocol, PublishMessage, PublishResponse, SaveImageMessage, SaveImageResponse, HasImageMessage, HasImageResponse, GetProjectInfoMessage, GetProjectInfoResponse, ExportMessage, ExportResponse, ImportMessage, ImportResponse } from '@jay-framework/editor-protocol';
1
+ import { DevServerProtocol, PublishMessage, PublishResponse, SaveImageMessage, SaveImageResponse, HasImageMessage, HasImageResponse, GetProjectInfoMessage, GetProjectInfoResponse, ExportMessage, ExportResponse, ImportMessage, ImportResponse, ListRoutesMessage, ListRoutesResponse, ListFreezesMessage, ListFreezesResponse, RenameFreezeMessage, RenameFreezeResponse, DeleteFreezeMessage, DeleteFreezeResponse, LoadRouteParamsMessage, LoadRouteParamsResponse, RouteParamsBatchEvent } from '@jay-framework/editor-protocol';
2
2
 
3
3
  interface EditorServerOptions {
4
4
  editorId?: string;
@@ -27,6 +27,13 @@ declare class EditorServer implements DevServerProtocol {
27
27
  onGetProjectInfo(callback: (params: GetProjectInfoMessage) => Promise<GetProjectInfoResponse>): void;
28
28
  onExport<TVendorDoc>(callback: (params: ExportMessage<TVendorDoc>) => Promise<ExportResponse>): void;
29
29
  onImport<TVendorDoc>(callback: (params: ImportMessage<TVendorDoc>) => Promise<ImportResponse<TVendorDoc>>): void;
30
+ onListRoutes(callback: (params: ListRoutesMessage) => Promise<ListRoutesResponse>): void;
31
+ onListFreezes(callback: (params: ListFreezesMessage) => Promise<ListFreezesResponse>): void;
32
+ onRenameFreeze(callback: (params: RenameFreezeMessage) => Promise<RenameFreezeResponse>): void;
33
+ onDeleteFreeze(callback: (params: DeleteFreezeMessage) => Promise<DeleteFreezeResponse>): void;
34
+ emitFreezeChanged(): void;
35
+ onLoadRouteParams(callback: (params: LoadRouteParamsMessage) => Promise<LoadRouteParamsResponse>): void;
36
+ emitRouteParamsBatch(event: RouteParamsBatchEvent): void;
30
37
  private handlePortDiscovery;
31
38
  private setupSocketHandlers;
32
39
  private isLocalhost;
package/dist/index.js CHANGED
@@ -108,6 +108,28 @@ class EditorServer {
108
108
  onImport(callback) {
109
109
  this.handlers.import = callback;
110
110
  }
111
+ // Freeze management (DL#128)
112
+ onListRoutes(callback) {
113
+ this.handlers.listRoutes = callback;
114
+ }
115
+ onListFreezes(callback) {
116
+ this.handlers.listFreezes = callback;
117
+ }
118
+ onRenameFreeze(callback) {
119
+ this.handlers.renameFreeze = callback;
120
+ }
121
+ onDeleteFreeze(callback) {
122
+ this.handlers.deleteFreeze = callback;
123
+ }
124
+ emitFreezeChanged() {
125
+ this.io?.emit("freezeChanged");
126
+ }
127
+ onLoadRouteParams(callback) {
128
+ this.handlers.loadRouteParams = callback;
129
+ }
130
+ emitRouteParamsBatch(event) {
131
+ this.io?.emit("routeParamsBatch", event);
132
+ }
111
133
  handlePortDiscovery(req, res) {
112
134
  const url = new URL(req.url, `http://localhost:${this.port}`);
113
135
  const tabId = url.searchParams.get("id");
@@ -204,6 +226,46 @@ class EditorServer {
204
226
  }
205
227
  const importResult = await this.handlers.import(payload);
206
228
  return createProtocolResponse(id, importResult);
229
+ case "listRoutes":
230
+ if (!this.handlers.listRoutes) {
231
+ throw new Error("List routes handler not registered");
232
+ }
233
+ return createProtocolResponse(
234
+ id,
235
+ await this.handlers.listRoutes(payload)
236
+ );
237
+ case "listFreezes":
238
+ if (!this.handlers.listFreezes) {
239
+ throw new Error("List freezes handler not registered");
240
+ }
241
+ return createProtocolResponse(
242
+ id,
243
+ await this.handlers.listFreezes(payload)
244
+ );
245
+ case "renameFreeze":
246
+ if (!this.handlers.renameFreeze) {
247
+ throw new Error("Rename freeze handler not registered");
248
+ }
249
+ return createProtocolResponse(
250
+ id,
251
+ await this.handlers.renameFreeze(payload)
252
+ );
253
+ case "deleteFreeze":
254
+ if (!this.handlers.deleteFreeze) {
255
+ throw new Error("Delete freeze handler not registered");
256
+ }
257
+ return createProtocolResponse(
258
+ id,
259
+ await this.handlers.deleteFreeze(payload)
260
+ );
261
+ case "loadRouteParams":
262
+ if (!this.handlers.loadRouteParams) {
263
+ throw new Error("Load route params handler not registered");
264
+ }
265
+ return createProtocolResponse(
266
+ id,
267
+ await this.handlers.loadRouteParams(payload)
268
+ );
207
269
  default:
208
270
  throw new Error(`Unknown message type: ${payload.type}`);
209
271
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jay-framework/editor-server",
3
- "version": "0.15.5",
3
+ "version": "0.16.0",
4
4
  "type": "module",
5
5
  "license": "Apache-2.0",
6
6
  "main": "dist/index.js",
@@ -20,17 +20,17 @@
20
20
  "test:watch": "vitest"
21
21
  },
22
22
  "dependencies": {
23
- "@jay-framework/editor-protocol": "^0.15.5",
24
- "@jay-framework/logger": "^0.15.5",
23
+ "@jay-framework/editor-protocol": "^0.16.0",
24
+ "@jay-framework/logger": "^0.16.0",
25
25
  "get-port": "^7.0.0",
26
26
  "socket.io": "^4.7.4",
27
27
  "uuid": "^9.0.1",
28
28
  "yaml": "^2.3.4"
29
29
  },
30
30
  "devDependencies": {
31
- "@jay-framework/dev-environment": "^0.15.5",
32
- "@jay-framework/editor-client": "^0.15.5",
33
- "@jay-framework/jay-cli": "^0.15.5",
31
+ "@jay-framework/dev-environment": "^0.16.0",
32
+ "@jay-framework/editor-client": "^0.16.0",
33
+ "@jay-framework/jay-cli": "^0.16.0",
34
34
  "@types/express": "^5.0.2",
35
35
  "@types/node": "^22.15.21",
36
36
  "@types/uuid": "^9.0.7",