@lvce-editor/pty-host 0.22.1 → 0.22.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lvce-editor/pty-host",
3
- "version": "0.22.1",
3
+ "version": "0.22.3",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "type": "module",
@@ -17,10 +17,10 @@
17
17
  },
18
18
  "dependencies": {
19
19
  "@lvce-editor/json-rpc": "^1.0.0",
20
- "@lvce-editor/pretty-error": "^1.3.0",
20
+ "@lvce-editor/pretty-error": "^1.4.0",
21
21
  "@lvce-editor/verror": "^1.1.2",
22
- "debug": "^4.3.4",
23
- "ws": "^8.16.0"
22
+ "@lvce-editor/web-socket-server": "1.1.0",
23
+ "debug": "^4.3.4"
24
24
  },
25
25
  "optionalDependencies": {
26
26
  "node-pty": "^1.0.0"
@@ -10,5 +10,4 @@ export const handleElectronMessagePort = async (messagePort) => {
10
10
  messagePort,
11
11
  })
12
12
  HandleIpc.handleIpc(ipc)
13
- messagePort.start()
14
13
  }
@@ -18,4 +18,7 @@ export const handleIpc = (ipc) => {
18
18
  return JsonRpc.handleJsonRpcMessage(ipc, message, Command.execute, Callback.resolve, preparePrettyError, logError, RequiresSocket.requiresSocket)
19
19
  }
20
20
  ipc.on('message', handleMessage)
21
+ if (ipc.start) {
22
+ ipc.start()
23
+ }
21
24
  }
@@ -8,5 +8,4 @@ export const handleNodeMessagePort = async (messagePort) => {
8
8
  messagePort,
9
9
  })
10
10
  HandleIpc.handleIpc(ipc)
11
- messagePort.start()
12
11
  }
@@ -6,13 +6,10 @@ import * as IpcChildType from '../IpcChildType/IpcChildType.js'
6
6
  export const handleWebSocket = async (request, handle) => {
7
7
  Assert.object(request)
8
8
  Assert.object(handle)
9
- const WebSocketServer = await import('../WebSocketServer/WebSocketServer.js')
10
- const webSocket = await WebSocketServer.handleUpgrade(request, handle)
11
- webSocket.pause()
12
9
  const ipc = await IpcChild.listen({
13
10
  method: IpcChildType.WebSocket,
14
- webSocket,
11
+ request,
12
+ handle,
15
13
  })
16
14
  HandleIpc.handleIpc(ipc)
17
- webSocket.resume()
18
15
  }
@@ -42,5 +42,8 @@ export const wrap = (messagePort) => {
42
42
  dispose() {
43
43
  this.messagePort.close()
44
44
  },
45
+ start() {
46
+ this.messagePort.start()
47
+ },
45
48
  }
46
49
  }
@@ -23,5 +23,8 @@ export const wrap = (port) => {
23
23
  dispose() {
24
24
  this.port.close()
25
25
  },
26
+ start() {
27
+ this.port.start()
28
+ },
26
29
  }
27
30
  }
@@ -1,19 +1,20 @@
1
1
  import * as GetFirstWebSocketEvent from '../GetFirstWebSocketEvent/GetFirstWebSocketEvent.js'
2
2
  import { IpcError } from '../IpcError/IpcError.js'
3
- import * as IsWebSocket from '../IsWebSocket/IsWebSocket.js'
4
3
  import * as IsWebSocketOpen from '../IsWebSocketOpen/IsWebSocketOpen.js'
5
4
  import * as WebSocketSerialization from '../WebSocketSerialization/WebSocketSerialization.js'
5
+ import * as WebSocketServer from '../WebSocketServer/WebSocketServer.js'
6
6
 
7
- export const listen = async ({ webSocket }) => {
8
- if (!webSocket) {
9
- throw new IpcError('webSocket must be defined')
7
+ export const listen = async ({ request, handle }) => {
8
+ if (!request) {
9
+ throw new IpcError('request must be defined')
10
10
  }
11
- if (!IsWebSocket.isWebSocket(webSocket)) {
12
- throw new IpcError(`webSocket must be of type WebSocket`)
11
+ if (!handle) {
12
+ throw new IpcError('handle must be defined')
13
13
  }
14
+ const webSocket = await WebSocketServer.handleUpgrade(request, handle)
15
+ webSocket.pause()
14
16
  if (!IsWebSocketOpen.isWebSocketOpen(webSocket)) {
15
17
  const { type, event } = await GetFirstWebSocketEvent.getFirstWebSocketEvent(webSocket)
16
- console.log({ type, event })
17
18
  }
18
19
  return webSocket
19
20
  }
@@ -48,5 +49,8 @@ export const wrap = (webSocket) => {
48
49
  dispose() {
49
50
  this.webSocket.close()
50
51
  },
52
+ start() {
53
+ this.webSocket.resume()
54
+ },
51
55
  }
52
56
  }
@@ -1,24 +1 @@
1
- import { Buffer } from 'node:buffer'
2
- import * as _ws from 'ws'
3
-
4
- // workaround for jest or node bug
5
- const WebSocketServer = _ws.WebSocketServer
6
- ? _ws.WebSocketServer
7
- : // @ts-ignore
8
- _ws.default.WebSocketServer
9
-
10
- const webSocketServer = new WebSocketServer({
11
- noServer: true,
12
-
13
- // TODO not sure if ws compress is working at all
14
- // perMessageDeflate: true
15
- })
16
-
17
- export const handleUpgrade = (request, socket) => {
18
- return new Promise((resolve, reject) => {
19
- const upgradeCallback = (ws) => {
20
- resolve(ws)
21
- }
22
- webSocketServer.handleUpgrade(request, socket, Buffer.alloc(0), upgradeCallback)
23
- })
24
- }
1
+ export * from '@lvce-editor/web-socket-server'