export const createBrowserWindow = ({ standalone = false, serviceWorker = undefined, navigatorStandalone = false, } = {}) => { return { matchMedia: (query) => ({ media: query, matches: query === "(display-mode: standalone)" ? standalone : false, addEventListener: () => {}, removeEventListener: () => {}, }), navigator: { standalone: navigatorStandalone, serviceWorker, }, }; }; export const createBeforeInstallPromptEvent = ({ outcome = "accepted", } = {}) => { let promptCalls = 0; return { prompt: async () => { promptCalls += 1; }, userChoice: Promise.resolve({ outcome }), getPromptCalls: () => promptCalls, }; };