UNPKG

@authduo/authduo

Version:

Free User-sovereign Authentication for the World

33 lines (25 loc) 679 B
import {PostMessenger} from "renraku" import {AppFns} from "./app-fns.js" import {Purpose} from "../logic/purpose.js" import {makePopupFns, PopupState} from "./popup-fns.js" export function setupInPopup( appWindow: WindowProxy, popupWindow: Window, setLoginPurpose: (purpose: Purpose.Login) => void ) { const state: PopupState = {parentOrigin: "*"} const peer = new PostMessenger<AppFns>({ local: { window: popupWindow, getFns: (event, app) => makePopupFns(event, state, app, setLoginPurpose), }, remote: { window: appWindow, getOrigin: () => state.parentOrigin, }, }) return { dispose: peer.dispose, appFns: peer.remote as AppFns, } }