@lvce-editor/ipc 3.7.0 → 4.0.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/browser.js +7 -0
- package/dist/index.d.ts +11 -2
- package/dist/index.js +67 -11
- package/package.json +1 -1
package/dist/browser.js
CHANGED
|
@@ -41,6 +41,11 @@ const wrap$3 = global => {
|
|
|
41
41
|
};
|
|
42
42
|
this.listener = listener;
|
|
43
43
|
this.global.onmessage = wrappedListener;
|
|
44
|
+
},
|
|
45
|
+
dispose() {
|
|
46
|
+
// @ts-ignore
|
|
47
|
+
this.listener = null;
|
|
48
|
+
this.global.onmessage = null;
|
|
44
49
|
}
|
|
45
50
|
};
|
|
46
51
|
};
|
|
@@ -284,6 +289,7 @@ const waitForFirstMessage = async port => {
|
|
|
284
289
|
|
|
285
290
|
const listen$1 = async () => {
|
|
286
291
|
const parentIpcRaw = listen$2();
|
|
292
|
+
signal$1(parentIpcRaw);
|
|
287
293
|
const parentIpc = wrap$3(parentIpcRaw);
|
|
288
294
|
const firstMessage = await waitForFirstMessage(parentIpc);
|
|
289
295
|
if (firstMessage.method !== 'initialize') {
|
|
@@ -291,6 +297,7 @@ const listen$1 = async () => {
|
|
|
291
297
|
}
|
|
292
298
|
const type = firstMessage.params[0];
|
|
293
299
|
if (type === 'message-port') {
|
|
300
|
+
parentIpc.dispose();
|
|
294
301
|
const port = firstMessage.params[1];
|
|
295
302
|
return port;
|
|
296
303
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,15 @@
|
|
|
1
|
+
interface Ipc {
|
|
2
|
+
readonly send: (message: any) => void
|
|
3
|
+
readonly sendAndTransfer: (message: any, transfer: any) => void
|
|
4
|
+
readonly on: any
|
|
5
|
+
readonly onmessage: any
|
|
6
|
+
readonly dispose: () => void
|
|
7
|
+
readonly isDisposed: () => void
|
|
8
|
+
}
|
|
9
|
+
|
|
1
10
|
interface IpcChild {
|
|
2
11
|
readonly listen: any
|
|
3
|
-
readonly wrap:
|
|
12
|
+
readonly wrap: Ipc
|
|
4
13
|
}
|
|
5
14
|
|
|
6
15
|
export const IpcChildWithElectronMessagePort: IpcChild
|
|
@@ -11,7 +20,7 @@ export const IpcChildWithNodeWorker: IpcChild
|
|
|
11
20
|
|
|
12
21
|
interface IpcParent {
|
|
13
22
|
readonly create: any
|
|
14
|
-
readonly wrap:
|
|
23
|
+
readonly wrap: Ipc
|
|
15
24
|
}
|
|
16
25
|
|
|
17
26
|
export const IpcParentWithElectronUtilityProcess: IpcParent
|
package/dist/index.js
CHANGED
|
@@ -185,7 +185,11 @@ const wrap$a = messagePort => {
|
|
|
185
185
|
// @ts-ignore
|
|
186
186
|
const wrappedListener = event => {
|
|
187
187
|
const actualData = getActualData$1(event);
|
|
188
|
-
|
|
188
|
+
const syntheticEvent = {
|
|
189
|
+
data: actualData,
|
|
190
|
+
target: this
|
|
191
|
+
};
|
|
192
|
+
listener(syntheticEvent);
|
|
189
193
|
};
|
|
190
194
|
this.messagePort.on(event, wrappedListener);
|
|
191
195
|
} else if (event === 'close') {
|
|
@@ -260,7 +264,11 @@ const wrap$9 = parentPort => {
|
|
|
260
264
|
// @ts-ignore
|
|
261
265
|
const wrappedListener = event => {
|
|
262
266
|
const actualData = getUtilityProcessPortData(event);
|
|
263
|
-
|
|
267
|
+
const syntheticEvent = {
|
|
268
|
+
data: actualData,
|
|
269
|
+
target: this
|
|
270
|
+
};
|
|
271
|
+
listener(syntheticEvent);
|
|
264
272
|
};
|
|
265
273
|
this.parentPort.on(event, wrappedListener);
|
|
266
274
|
} else if (event === 'close') {
|
|
@@ -335,6 +343,11 @@ const wrap$8 = global => {
|
|
|
335
343
|
};
|
|
336
344
|
this.listener = listener;
|
|
337
345
|
this.global.onmessage = wrappedListener;
|
|
346
|
+
},
|
|
347
|
+
dispose() {
|
|
348
|
+
// @ts-ignore
|
|
349
|
+
this.listener = null;
|
|
350
|
+
this.global.onmessage = null;
|
|
338
351
|
}
|
|
339
352
|
};
|
|
340
353
|
};
|
|
@@ -377,6 +390,7 @@ const waitForFirstMessage = async port => {
|
|
|
377
390
|
|
|
378
391
|
const listen$4 = async () => {
|
|
379
392
|
const parentIpcRaw = listen$5();
|
|
393
|
+
signal$2(parentIpcRaw);
|
|
380
394
|
const parentIpc = wrap$8(parentIpcRaw);
|
|
381
395
|
const firstMessage = await waitForFirstMessage(parentIpc);
|
|
382
396
|
if (firstMessage.method !== 'initialize') {
|
|
@@ -384,6 +398,7 @@ const listen$4 = async () => {
|
|
|
384
398
|
}
|
|
385
399
|
const type = firstMessage.params[0];
|
|
386
400
|
if (type === 'message-port') {
|
|
401
|
+
parentIpc.dispose();
|
|
387
402
|
const port = firstMessage.params[1];
|
|
388
403
|
return port;
|
|
389
404
|
}
|
|
@@ -463,7 +478,11 @@ const wrap$6 = process => {
|
|
|
463
478
|
// @ts-ignore
|
|
464
479
|
const wrappedListener = (event, handle) => {
|
|
465
480
|
const actualData = getActualData(event, handle);
|
|
466
|
-
|
|
481
|
+
const syntheticEvent = {
|
|
482
|
+
data: actualData,
|
|
483
|
+
target: this
|
|
484
|
+
};
|
|
485
|
+
listener(syntheticEvent);
|
|
467
486
|
};
|
|
468
487
|
this.process.on(event, wrappedListener);
|
|
469
488
|
} else if (event === 'close') {
|
|
@@ -507,7 +526,14 @@ const wrap$5 = port => {
|
|
|
507
526
|
return {
|
|
508
527
|
port,
|
|
509
528
|
on(event, listener) {
|
|
510
|
-
|
|
529
|
+
const wrappedListener = message => {
|
|
530
|
+
const event = {
|
|
531
|
+
data: message,
|
|
532
|
+
target: this
|
|
533
|
+
};
|
|
534
|
+
listener(event);
|
|
535
|
+
};
|
|
536
|
+
this.port.on(event, wrappedListener);
|
|
511
537
|
},
|
|
512
538
|
off(event, listener) {
|
|
513
539
|
this.port.off(event, listener);
|
|
@@ -546,7 +572,14 @@ const wrap$4 = parentPort => {
|
|
|
546
572
|
return {
|
|
547
573
|
parentPort,
|
|
548
574
|
on(event, listener) {
|
|
549
|
-
|
|
575
|
+
const wrappedListener = message => {
|
|
576
|
+
const event = {
|
|
577
|
+
data: message,
|
|
578
|
+
target: this
|
|
579
|
+
};
|
|
580
|
+
listener(event);
|
|
581
|
+
};
|
|
582
|
+
this.parentPort.on(event, wrappedListener);
|
|
550
583
|
},
|
|
551
584
|
off(event, listener) {
|
|
552
585
|
this.parentPort.off(event, listener);
|
|
@@ -690,7 +723,11 @@ const wrap$3 = webSocket => {
|
|
|
690
723
|
// @ts-ignore
|
|
691
724
|
const wrappedListener = message => {
|
|
692
725
|
const data = deserialize(message);
|
|
693
|
-
|
|
726
|
+
const event = {
|
|
727
|
+
data,
|
|
728
|
+
target: this
|
|
729
|
+
};
|
|
730
|
+
listener(event);
|
|
694
731
|
};
|
|
695
732
|
webSocket.on('message', wrappedListener);
|
|
696
733
|
break;
|
|
@@ -822,7 +859,6 @@ const create$2 = async ({
|
|
|
822
859
|
childProcess.stdout.pipe(process.stdout);
|
|
823
860
|
const {
|
|
824
861
|
type,
|
|
825
|
-
event,
|
|
826
862
|
stdout,
|
|
827
863
|
stderr
|
|
828
864
|
} = await getFirstUtilityProcessEvent(childProcess);
|
|
@@ -840,7 +876,14 @@ const wrap$2 = process => {
|
|
|
840
876
|
process,
|
|
841
877
|
// @ts-ignore
|
|
842
878
|
on(event, listener) {
|
|
843
|
-
|
|
879
|
+
const wrappedListener = message => {
|
|
880
|
+
const syntheticEvent = {
|
|
881
|
+
data: message,
|
|
882
|
+
target: this
|
|
883
|
+
};
|
|
884
|
+
listener(syntheticEvent);
|
|
885
|
+
};
|
|
886
|
+
this.process.on(event, wrappedListener);
|
|
844
887
|
},
|
|
845
888
|
// @ts-ignore
|
|
846
889
|
send(message) {
|
|
@@ -986,7 +1029,6 @@ const create$1 = async ({
|
|
|
986
1029
|
const {
|
|
987
1030
|
type,
|
|
988
1031
|
event,
|
|
989
|
-
stdout,
|
|
990
1032
|
stderr
|
|
991
1033
|
} = await getFirstNodeChildProcessEvent(childProcess);
|
|
992
1034
|
if (type === Exit) {
|
|
@@ -1011,7 +1053,14 @@ const wrap$1 = childProcess => {
|
|
|
1011
1053
|
childProcess,
|
|
1012
1054
|
// @ts-ignore
|
|
1013
1055
|
on(event, listener) {
|
|
1014
|
-
|
|
1056
|
+
const wrappedListener = message => {
|
|
1057
|
+
const syntheticEvent = {
|
|
1058
|
+
data: message,
|
|
1059
|
+
target: this
|
|
1060
|
+
};
|
|
1061
|
+
listener(syntheticEvent);
|
|
1062
|
+
};
|
|
1063
|
+
this.childProcess.on(event, wrappedListener);
|
|
1015
1064
|
},
|
|
1016
1065
|
// @ts-ignore
|
|
1017
1066
|
off(event, listener) {
|
|
@@ -1091,7 +1140,14 @@ const wrap = worker => {
|
|
|
1091
1140
|
worker,
|
|
1092
1141
|
// @ts-ignore
|
|
1093
1142
|
on(event, listener) {
|
|
1094
|
-
|
|
1143
|
+
const wrappedListener = message => {
|
|
1144
|
+
const syntheticEvent = {
|
|
1145
|
+
data: message,
|
|
1146
|
+
target: this
|
|
1147
|
+
};
|
|
1148
|
+
listener(syntheticEvent);
|
|
1149
|
+
};
|
|
1150
|
+
this.worker.on(event, wrappedListener);
|
|
1095
1151
|
},
|
|
1096
1152
|
// @ts-ignore
|
|
1097
1153
|
send(message) {
|