2.3.0 • Published 5 months ago

promise-postmessage v2.3.0

Weekly downloads
-
License
ISC
Repository
github
Last release
5 months ago

postmessage-promise

Simple promise based post message / listener.

Uses MessageChannels under the hood.

Usage

import { onMessage, sendMessage } from 'promise-postmessage';

onMessage(
    async (event) => {
        // some async operation
        const resp = await foo(event.data);
        return resp;
    }, 

    // source frame
    window.parent 
);

const resp = await sendMessage(
    // target frame window.
    document.getElementById('iframe')
        .contentWindow

    // Message payload
    { foo: 'bar' }, 
);

Example: Create a simple forwarding bridge

import { onMessage, sendMessage } from 'promise-postmessage';

const frame1 = document.getElementById("frame1").contentWindow;
const frame2 = window.parent; // Or could be another child iframe.

onMessage((event) => {
    return sendMessage(frame2, event.data);
}, frame1);

onMessage((event) => {
    return sendMessage(frame1, event.data);
}, frame2);
2.3.0

5 months ago

2.2.0

5 months ago

2.0.3

5 months ago

2.0.2

5 months ago

2.1.0

5 months ago

2.0.1

5 months ago

2.0.0

5 months ago

1.2.0

7 months ago

1.1.0

7 months ago

1.0.0

7 months ago