Skip to content

intellism/translate-manager

Repository files navigation

Used for translate source management. Multiple I translate objects are registered together, and the proxy API realizes the switching of different translation sources.

Installation

Koa requires higher for ES2020 and async function support.

$ npm install translate-manager

How to use it

let translateManager = new TranslateManager(context.workspaceState);
translateManager.onTranslate(e => {
    console.log(e);
});

Registry translate

Register translate source to manager.

export interface ITranslate {
    translate(content: string, options: ITranslateOptions): Promise<string>;
    link(content: string, options: ITranslateOptions): string;
    isSupported?: (src: string) => boolean;
    maxLen: number;
}

/**
 * @param key Registered key
 * @param translate Constructor of ITranslate
 */
translateManager.registry(key, translate);

Switch translate

Switch active translate source

if (translateManager.hasSource(key)) {
    return translateManager.setSource(key);
}

Use

Consistent with ITranslate

translateManager.translate(...);
translateManager.link(...);
translateManager.isSupport(...);
translateManager.maxLen;

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published