UNPKG

wxt

Version:

⚡ Next-gen Web Extension Framework

44 lines (43 loc) 1.48 kB
//#region src/core/utils/i18n.ts const predefinedMessages = { "@@extension_id": { message: "<browser.runtime.id>", description: "The extension or app ID; you might use this string to construct URLs for resources inside the extension. Even non-localized extensions can use this message.\nNote: You can't use this message in a manifest file." }, "@@ui_locale": { message: "<browser.i18n.getUiLocale()>", description: "" }, "@@bidi_dir": { message: "<ltr|rtl>", description: "The text direction for the current locale, either \"ltr\" for left-to-right languages such as English or \"rtl\" for right-to-left languages such as Japanese." }, "@@bidi_reversed_dir": { message: "<rtl|ltr>", description: "If the @@bidi_dir is \"ltr\", then this is \"rtl\"; otherwise, it's \"ltr\"." }, "@@bidi_start_edge": { message: "<left|right>", description: "If the @@bidi_dir is \"ltr\", then this is \"left\"; otherwise, it's \"right\"." }, "@@bidi_end_edge": { message: "<right|left>", description: "If the @@bidi_dir is \"ltr\", then this is \"right\"; otherwise, it's \"left\"." } }; /** * Get a list of all messages and their metadata from JSON file contents. * * @param messagesJson The contents of a `_locales/en/messages.json` file. */ function parseI18nMessages(messagesJson) { return Object.entries({ ...predefinedMessages, ...messagesJson }).map(([name, details]) => ({ name, ...details })); } //#endregion export { parseI18nMessages };