mirror of
https://github.com/ksyasuda/SubMiner.git
synced 2026-03-25 00:11:26 -07:00
feat(yomitan): add read-only external profile support for shared dictionaries (#18)
This commit is contained in:
25
src/main/runtime/yomitan-profile-policy.ts
Normal file
25
src/main/runtime/yomitan-profile-policy.ts
Normal file
@@ -0,0 +1,25 @@
|
||||
import {
|
||||
getCharacterDictionaryDisabledReason,
|
||||
isCharacterDictionaryRuntimeEnabled,
|
||||
} from './character-dictionary-availability';
|
||||
|
||||
export function createYomitanProfilePolicy(options: {
|
||||
externalProfilePath: string;
|
||||
logInfo: (message: string) => void;
|
||||
}) {
|
||||
const externalProfilePath = options.externalProfilePath.trim();
|
||||
|
||||
return {
|
||||
externalProfilePath,
|
||||
isExternalReadOnlyMode: (): boolean => externalProfilePath.length > 0,
|
||||
isCharacterDictionaryEnabled: (): boolean =>
|
||||
isCharacterDictionaryRuntimeEnabled(externalProfilePath),
|
||||
getCharacterDictionaryDisabledReason: (): string | null =>
|
||||
getCharacterDictionaryDisabledReason(externalProfilePath),
|
||||
logSkippedWrite: (action: string): void => {
|
||||
options.logInfo(
|
||||
`[yomitan] skipping ${action}: yomitan.externalProfilePath is configured; external profile mode is read-only`,
|
||||
);
|
||||
},
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user