1.0.4 • Published 4 years ago

chrome-intl-code-gen v1.0.4

Weekly downloads
4
License
ISC
Repository
github
Last release
4 years ago

Chrome intl Code Gen

npm GitHub issues

It provide a webpack plugin for watching chrome extesion's _locales directory, if locale file changed, A typescript file which contains a type-safe version of chrome.i18n.getMessage will be generated at the output path. the file contents includes a default export and multiple exports like this. Also you can customize your own generated content with the template option.

/* eslint-disable */
// This file is generated by chrome-i18n-code-gen, do not edit it

export type ChromeI18nKeys = "extName" | "extDescription"

export default function i18n(key: ChromeI18nKeys): string {
    return chrome.i18n.getMessage(key)
}
        
/**
* extension name
*/
export function extName(): string {
    return chrome.i18n.getMessage('extName')
}
            
/**
* extension description
*/
export function extDescription(): string {
    return chrome.i18n.getMessage('extDescription')
}

Usage

const ChromeIntlCodeGenPlguin = require('chrome-intl-code-gen').default;

[
    new ChromeIntlCodeGenPlguin({
      input: "public/_locales",
      output: "src/shared/locale.ts"
    })
]

Options

interface Options {
    /**
     * path of `_locales` directory 
     */
    input: string;
    /**
     * output typescript file path
     */
    output: string;
    /**
     * base language, defaults to en
     */
    base?: string;
    /**
     * optional custom template function to generate your own output file
     * interface Message { [keyName: string]: { "message": string;  "description": string; } }
     */
    template?: ((data: Message) => string);
}
1.0.4

4 years ago

1.0.3

4 years ago

1.0.2

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago