UNPKG

@adv-ui/boros-tcf-stub

Version:

Adevinta GDPR - Transparency and Consent Framework - Stub for Boros TCF

53 lines (42 loc) 1.27 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PostMessageHandler = void 0; var PostMessageHandler = /*#__PURE__*/function () { function PostMessageHandler() {} var _proto = PostMessageHandler.prototype; _proto.handle = function handle(event) { if (event === void 0) { event = {}; } var payload = this._toPayload(event.data); payload && window.__tcfapi(payload.command, payload.version, function (retValue, success) { var returnMsg = { __tcfapiReturn: { returnValue: retValue, success: success, callId: payload.callId } }; if (typeof event.data === 'string') { event.source.postMessage(JSON.stringify(returnMsg), '*'); } else { event.source.postMessage(returnMsg, '*'); } }, payload.parameter); }; _proto._toPayload = function _toPayload(message) { if (message === void 0) { message = {}; } try { var json = typeof message === 'string' ? JSON.parse(message) : message; return json == null ? void 0 : json.__tcfapiCall; } catch (error) { return undefined; } }; return PostMessageHandler; }(); exports.PostMessageHandler = PostMessageHandler;