penpal
Version:
A promise-based library for communicating with iframes via postMessage.
29 lines (24 loc) • 811 B
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _enums = require("../enums");
/**
* Handles a SYN handshake message.
*/
var _default = (log, serializedMethods, childOrigin, originForSending) => {
return event => {
if (childOrigin !== '*' && event.origin !== childOrigin) {
log("Parent: Handshake - Received SYN message from origin ".concat(event.origin, " which did not match expected origin ").concat(childOrigin));
return;
}
log('Parent: Handshake - Received SYN, responding with SYN-ACK');
const synAckMessage = {
penpal: _enums.MessageType.SynAck,
methodNames: Object.keys(serializedMethods)
};
event.source.postMessage(synAckMessage, originForSending);
};
};
exports.default = _default;
;