var AlignAuth; (function (context) { var iframe; var _addListener = function (callback,arg) { iframe = context.document.createElement('iframe'); iframe.style.display = "none"; iframe.setAttribute('id', "authex_frame"); iframe.setAttribute('src', "https://auth.alytic.io/api/static?filename=frame&ext=html&app=ApplicationA"); iframe.onload = function () { console.log('main.js frame loaded. Posting token...'); if (!window.localStorage.getItem('ls.authorizationData')) { iframe.contentWindow.postMessage({ status: "domain_token_request" }, "*"); } } document.body.appendChild(iframe); context.addEventListener("message", function (event) { console.log("main.js recv message"); if (event.data.status === "domain_token_response_success") { console.log('main.js: domain_token_response successful'); console.log(event.data.token); window.localStorage.setItem('ls.authorizationData', event.data.token); callback(event, true); } else if (event.data.status === "domain_token_response_failed") { callback(event, false); } else if (event.data.status === "passport_token_response_success") { callback(event, true); } else if (event.data.status === "passport_token_response_failed") { callback(event, false); } }, false); } AlignAuth = function () { return { init: function (token) { iframe.contentWindow.postMessage({ status: "passport_token_request", token: token }, "*"); }, listen: _addListener, removePassport: function (token) { console.log('removing passport token'); iframe.contentWindow.postMessage({ status: "passport_token_remove", token: {} }, "*"); } } } // amd support if (typeof define === "function" && define.amd) { define(AlignAuth); } else { context.AlignAuth = AlignAuth; } })(this);