UNPKG

@botonic/plugin-contentful

Version:

## What Does This Plugin Do?

74 lines 1.81 kB
import { stemmerFor } from './stemmer'; export const SPANISH = 'es'; export const CATALAN = 'ca'; export const ENGLISH = 'en'; export const PORTUGUESE = 'pt'; export const POLISH = 'pl'; export const RUSSIAN = 'ru'; export const TURKISH = 'tr'; export const ITALIAN = 'it'; export const FRENCH = 'fr'; export const GERMAN = 'de'; export const ROMANIAN = 'ro'; export const GREEK = 'el'; export const CZECH = 'cs'; export const UKRAINIAN = 'uk'; export const CROATIAN = 'hr'; export const SLOVAK = 'sk'; export const SLOVENIAN = 'sl'; export const HUNGARIAN = 'hu'; export const DUTCH = 'nl'; export const BULGARIAN = 'bg'; export const SUPPORTED_LOCALES = [ SPANISH, CATALAN, ENGLISH, PORTUGUESE, POLISH, RUSSIAN, TURKISH, ITALIAN, FRENCH, GERMAN, ROMANIAN, GREEK, CZECH, UKRAINIAN, CROATIAN, SLOVAK, SLOVENIAN, HUNGARIAN, DUTCH, BULGARIAN, ]; export function checkLocale(locale) { // will throw exception if not supported stemmerFor(locale); return locale; } export function languageFromLocale(locale) { return locale.substr(0, 2).toLowerCase(); } /** * @return "" when no country available */ export function countryFromLocale(locale) { return locale.substr(3).toUpperCase(); } export function fixLocale(locale) { return buildLocale(languageFromLocale(locale), countryFromLocale(locale)); } export function buildLocale(lang, country) { if (!country) { return lang.toLowerCase(); } return lang.toLowerCase() + '-' + country.toUpperCase(); } /** * Converts to lowercase, trims and removes accents */ export function preprocess(_locale, text) { text = text.trim().toLowerCase(); return text.normalize('NFD').replace(/[\u0300-\u036f]/g, ''); } //# sourceMappingURL=locales.js.map