UNPKG

2.9 kBSource Map (JSON)View Raw
1{"version":3,"file":"ExpoLocalization.web.js","sourceRoot":"","sources":["../src/ExpoLocalization.web.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC;AAIxC,eAAe;IACb,IAAI,KAAK;QACP,OAAO,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,MAAM;QACR,MAAM,MAAM,GACV,SAAS,CAAC,QAAQ;YAClB,SAAS,CAAC,gBAAgB,CAAC;YAC3B,SAAS,CAAC,iBAAiB,CAAC;YAC5B,SAAS,CAAC,cAAc,CAAC;YACzB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAElB,6BAA6B;QAC7B,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;IACD,IAAI,OAAO;QACT,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,GAAG,SAAS,CAAC;QACrC,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,QAAQ;QACV,MAAM,eAAe,GAAG,SAAS,CAAC;QAClC,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE;YAC/B,OAAO,eAAe,CAAC;SACxB;QACD,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ,IAAI,eAAe,CAAC;IAC7E,CAAC;IACD,IAAI,gBAAgB;QAClB,4CAA4C;QAC5C,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,OAAO;QACT,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACxB,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE;YAC/C,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACrE,OAAO,cAAc,CAAC,WAAW,EAAE,CAAC;SACrC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,KAAK,CAAC,oBAAoB;QACxB,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAC7E,OAAO;YACL,OAAO;YACP,gBAAgB;YAChB,QAAQ;YACR,OAAO;YACP,MAAM;YACN,KAAK;SACN,CAAC;IACJ,CAAC;CACF,CAAC","sourcesContent":["import * as rtlDetect from 'rtl-detect';\n\nimport { Localization } from './Localization.types';\n\nexport default {\n get isRTL(): boolean {\n return rtlDetect.isRtlLang(this.locale);\n },\n get locale(): string {\n const locale =\n navigator.language ||\n navigator['systemLanguage'] ||\n navigator['browserLanguage'] ||\n navigator['userLanguage'] ||\n this.locales[0];\n\n // The native format is en-US\n return locale.replace('_', '-');\n },\n get locales(): string[] {\n const { languages = [] } = navigator;\n return Array.from(languages);\n },\n get timezone(): string {\n const defaultTimeZone = 'Etc/UTC';\n if (typeof Intl === 'undefined') {\n return defaultTimeZone;\n }\n return Intl.DateTimeFormat().resolvedOptions().timeZone || defaultTimeZone;\n },\n get isoCurrencyCodes(): string[] {\n // TODO: Bacon: Add this - very low priority\n return [];\n },\n get country(): string | undefined {\n const { locale } = this;\n if (typeof locale === 'string' && locale.length) {\n const isoCountryCode = locale.substring(locale.lastIndexOf('-') + 1);\n return isoCountryCode.toUpperCase();\n }\n return undefined;\n },\n async getLocalizationAsync(): Promise<Localization> {\n const { country, isoCurrencyCodes, timezone, locales, locale, isRTL } = this;\n return {\n country,\n isoCurrencyCodes,\n timezone,\n locales,\n locale,\n isRTL,\n };\n },\n};\n"]}
\No newline at end of file