1.1.3 ⢠Published 3 years ago
locale-parser v1.1.3
DEPRECATED: Use @hammerhq/localization
~barbarbar338
⨠Locale Parser by barbarbar338
- This is a YAML based localisation system that will make your job quite easy
- Just create your language folder and seperate everything in files
- Set your constants in
constants.yaml
and apply to everything
š” Example
import { I18n } from "locale-parser";
/*
options:
directory?: string;
defaultLocale: string;
*/
const parser = new I18n({
defaultLocale: "en"
});
parser.getLocales(); // => [ "en", "tr" ];
parser.getConstant(); // => all constants;
parser.getConstant("owner"); // => "owner" constant;
parser.toJSON(); // => all language data in an object
parser.toJSON({ arg: "this is an argument"}); // => all language data in an object with argument replaced
parser.get("en", "info", "test"); // "test" string in "info" section in "en" folder
parser.get("tr", "messages", "message", { arg: "this is an argument"}); // "message" string in "messages" section in "tr" folder with "arg" argument
š File Structure
locales/constants.yaml
example
owner: barbarbar338
site: "https://barbarbar338.fly.dev/"
anotherConstant: this is a constant
locales/{locale}/{section}.yaml
example
withConstant: this string uses %{owner} constant
withArgs: this string uses %{argument} argument and %{anotherArgument} argument
withConstantsAndArguments: this string uses %{simpleArgument} argument and %{site} constant
š Folder Structure
š locales/
āāāā š constants.yaml
āāāā š en
ā āāāā š info.yaml
ā āāāā š messages.yaml
ā āāāā š test.yaml
āāāā š tr
āāāā š info.yaml
āāāā š messages.yaml
āāāā š test.yaml