mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Re-enable communicating from main to cluster frames
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
This commit is contained in:
11 files changed
+211
-54
No files matched your search
+3
-1
@@ -6,8 +6,10 @@ export interface MessageChannel<Message> {
|
||||
_messageSignature?: Message;
|
||||
}
|
||||
|
||||
export type ExtraData = { processId: number; frameId: number };
|
||||
|
||||
export type MessageChannelHandler<Channel> = Channel extends MessageChannel<infer Message>
|
||||
? (message: Message) => void
|
||||
? (message: Message, data: ExtraData) => void
|
||||
: never;
|
||||
|
||||
export interface MessageChannelListener<Channel> {
|
||||
|
||||
+24
-4
@@ -162,6 +162,10 @@ const someRequestChannelWithoutListeners: SomeRequestChannel = {
|
||||
it("the response gets handled in di-1", () => {
|
||||
expect(someHandler1MockInDi1).toHaveBeenCalledWith(
|
||||
"some-response-to: some-message",
|
||||
{
|
||||
frameId: 42,
|
||||
processId: 42,
|
||||
},
|
||||
);
|
||||
});
|
||||
|
||||
@@ -188,6 +192,10 @@ const someRequestChannelWithoutListeners: SomeRequestChannel = {
|
||||
it("the response gets handled in di-1", () => {
|
||||
expect(someHandler1MockInDi1).toHaveBeenCalledWith(
|
||||
"some-response-to: some-message",
|
||||
{
|
||||
frameId: 42,
|
||||
processId: 42,
|
||||
},
|
||||
);
|
||||
});
|
||||
});
|
||||
@@ -224,9 +232,15 @@ const someRequestChannelWithoutListeners: SomeRequestChannel = {
|
||||
});
|
||||
|
||||
it("listeners in other than sending DIs handle the message", () => {
|
||||
expect(someHandler1MockInDi2).toHaveBeenCalledWith("some-message");
|
||||
expect(someHandler1MockInDi2).toHaveBeenCalledWith("some-message", {
|
||||
frameId: 42,
|
||||
processId: 42,
|
||||
});
|
||||
|
||||
expect(someHandler2MockInDi2).toHaveBeenCalledWith("some-message");
|
||||
expect(someHandler2MockInDi2).toHaveBeenCalledWith("some-message", {
|
||||
frameId: 42,
|
||||
processId: 42,
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -245,9 +259,15 @@ const someRequestChannelWithoutListeners: SomeRequestChannel = {
|
||||
});
|
||||
|
||||
it("listeners still handle the message", () => {
|
||||
expect(someHandler1MockInDi2).toHaveBeenCalledWith("some-message");
|
||||
expect(someHandler1MockInDi2).toHaveBeenCalledWith("some-message", {
|
||||
frameId: 42,
|
||||
processId: 42,
|
||||
});
|
||||
|
||||
expect(someHandler2MockInDi2).toHaveBeenCalledWith("some-message");
|
||||
expect(someHandler2MockInDi2).toHaveBeenCalledWith("some-message", {
|
||||
frameId: 42,
|
||||
processId: 42,
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
+3
-3
@@ -54,12 +54,12 @@ const overrideMessaging = ({
|
||||
const resolvableHandlePromise = asyncFn();
|
||||
|
||||
resolvableHandlePromise().then(() => {
|
||||
handlersForChannel.forEach((handler) => handler(message));
|
||||
handlersForChannel.forEach((handler) => handler(message, { frameId: 42, processId: 42 }));
|
||||
});
|
||||
|
||||
messagePropagationBuffer.add(resolvableHandlePromise);
|
||||
} else {
|
||||
handlersForChannel.forEach((handler) => handler(message));
|
||||
handlersForChannel.forEach((handler) => handler(message, { frameId: 42, processId: 42 }));
|
||||
}
|
||||
});
|
||||
});
|
||||
@@ -85,7 +85,7 @@ const overrideRequesting = ({
|
||||
}: {
|
||||
di: DiContainer;
|
||||
|
||||
requestListenersByDi: Map<DiContainer, Map<string, Set<MessageChannelHandler<Channel>>>>;
|
||||
requestListenersByDi: Map<DiContainer, Map<string, Set<RequestChannelHandler<Channel>>>>;
|
||||
}) => {
|
||||
const requestHandlersByChannel = new Map<string, Set<RequestChannelHandler<Channel>>>();
|
||||
|
||||
|
||||
Reference in new issue
Block a user