All files / src/send-message-to-channel allow-communication-listener.injectable.ts

100% Statements 21/21
100% Branches 3/3
100% Functions 2/2
100% Lines 21/21

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 221x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 2x 2x 2x 4x 4x 2x 1x 1x 1x  
import { getMessageChannel, getMessageChannelListenerInjectable } from "@k8slens/messaging";
import frameIdsInjectable from "./frameIds.injectable";
 
const frameCommunicationAdminChannel = getMessageChannel<undefined>(
  "frame-communication-admin-channel",
);
 
const allowCommunicationListenerInjectable = getMessageChannelListenerInjectable({
  id: "allow-communication",
  channel: frameCommunicationAdminChannel,
 
  getHandler: (di) => {
    const frameIds = di.inject(frameIdsInjectable);
 
    return (_, { frameId, processId }) => {
      frameIds.add({ frameId, processId });
    };
  },
});
 
export default allowCommunicationListenerInjectable;