refactor: extract anki jimaku ipc deps runtime service

This commit is contained in:
2026-02-10 01:05:05 -08:00
parent f476c3c205
commit 66008b9e58
5 changed files with 119 additions and 12 deletions

View File

@@ -0,0 +1,32 @@
import {
AnkiJimakuIpcRuntimeOptions,
} from "./anki-jimaku-runtime-service";
export type AnkiJimakuIpcDepsRuntimeOptions = AnkiJimakuIpcRuntimeOptions;
export function createAnkiJimakuIpcDepsRuntimeService(
options: AnkiJimakuIpcDepsRuntimeOptions,
): AnkiJimakuIpcRuntimeOptions {
return {
patchAnkiConnectEnabled: options.patchAnkiConnectEnabled,
getResolvedConfig: options.getResolvedConfig,
getRuntimeOptionsManager: options.getRuntimeOptionsManager,
getSubtitleTimingTracker: options.getSubtitleTimingTracker,
getMpvClient: options.getMpvClient,
getAnkiIntegration: options.getAnkiIntegration,
setAnkiIntegration: options.setAnkiIntegration,
showDesktopNotification: options.showDesktopNotification,
createFieldGroupingCallback: options.createFieldGroupingCallback,
broadcastRuntimeOptionsChanged: options.broadcastRuntimeOptionsChanged,
getFieldGroupingResolver: options.getFieldGroupingResolver,
setFieldGroupingResolver: options.setFieldGroupingResolver,
parseMediaInfo: options.parseMediaInfo,
getCurrentMediaPath: options.getCurrentMediaPath,
jimakuFetchJson: options.jimakuFetchJson,
getJimakuMaxEntryResults: options.getJimakuMaxEntryResults,
getJimakuLanguagePreference: options.getJimakuLanguagePreference,
resolveJimakuApiKey: options.resolveJimakuApiKey,
isRemoteMediaPath: options.isRemoteMediaPath,
downloadToFile: options.downloadToFile,
};
}