feat(core): add Electron runtime, services, and app composition

This commit is contained in:
2026-02-22 21:43:43 -08:00
parent 448ce03fd4
commit d3fd47f0ec
562 changed files with 69719 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
import type { createOpenAnilistSetupWindowHandler } from './anilist-setup-window';
type OpenAnilistSetupWindowMainDeps = Parameters<typeof createOpenAnilistSetupWindowHandler>[0];
export function createBuildOpenAnilistSetupWindowMainDepsHandler(
deps: OpenAnilistSetupWindowMainDeps,
) {
return (): OpenAnilistSetupWindowMainDeps => ({
maybeFocusExistingSetupWindow: () => deps.maybeFocusExistingSetupWindow(),
createSetupWindow: () => deps.createSetupWindow(),
buildAuthorizeUrl: () => deps.buildAuthorizeUrl(),
consumeCallbackUrl: (rawUrl: string) => deps.consumeCallbackUrl(rawUrl),
openSetupInBrowser: (authorizeUrl: string) => deps.openSetupInBrowser(authorizeUrl),
loadManualTokenEntry: (setupWindow, authorizeUrl: string) =>
deps.loadManualTokenEntry(setupWindow, authorizeUrl),
redirectUri: deps.redirectUri,
developerSettingsUrl: deps.developerSettingsUrl,
isAllowedExternalUrl: (url: string) => deps.isAllowedExternalUrl(url),
isAllowedNavigationUrl: (url: string) => deps.isAllowedNavigationUrl(url),
logWarn: (message: string, details?: unknown) => deps.logWarn(message, details),
logError: (message: string, details: unknown) => deps.logError(message, details),
clearSetupWindow: () => deps.clearSetupWindow(),
setSetupPageOpened: (opened: boolean) => deps.setSetupPageOpened(opened),
setSetupWindow: (setupWindow) => deps.setSetupWindow(setupWindow),
openExternal: (url: string) => deps.openExternal(url),
});
}