(() => { const { pageHelper, constants, utils, EventManager } = ShopbySkin; if (utils.isSignedIn()) { if (!document.referrer || location.href === document.referrer) { history.back(); return; } utils.moveTo({ url: document.referrer, }); } const signUpMethodHelper = pageHelper.signUpMethodHelper(); signUpMethodHelper.initialize({ helperKey: 'sign-up-method', }); const containerEl = document.querySelector('open-id-sign-in'); const clickEventListener = ({ target }) => { const action = target.closest('[shopby-action]')?.getAttribute('shopby-action'); if (action === 'OPEN_ID_CLICK') { const provider = target.closest('[shopby-provider]')?.getAttribute('shopby-provider'); if (provider === 'app-card') { EventManager.fire('OPEN_LAYER_MODAL', { name: 'app-card-authenticate', modalAddClass: 'app-card-authenticate-modal', isFull: true, data: { nextPath: constants.PAGE.MAIN, previousPath: location.href, provider, redirectUri: `${location.origin}${constants.PAGE.AUTH_CALLBACK}`, }, }); return; } signUpMethodHelper.openIdSignIn({ nextPath: constants.PAGE.MAIN, provider, redirectUri: `${location.origin}${constants.PAGE.AUTH_CALLBACK}`, }); } }; containerEl.addEventListener('click', clickEventListener); ShopbySkin.utils.myappProxyRegistry.applyToSignUpMethod = (proxyFn) => { if (typeof proxyFn === 'function') { const url = new URL(location.href); url.searchParams.append('from', location.origin + ShopbySkin.constants.PAGE.MAIN); history.pushState(null, '', url); containerEl.removeEventListener('click', clickEventListener); containerEl.addEventListener('click', proxyFn(clickEventListener)); } }; ShopbySkin.utils.myappProxyRegistry.applyToSignUpMethod.proxyFnKey = 'openIdAuthorizationWithCustomTabProxy'; })();