@tojestproste/caplab-locale-info
v1.0.1
Published
Capacitor plugin - odczyt locale na Androidzie (język, strefa czasowa, dark mode, format daty/liczb) bez uprawnień.
Maintainers
Readme
@tojestproste/caplab-locale-info
Capacitor plugin (Android) zwracający stan locale: język, region, strefę czasową, tryb ciemny/jasny systemowy, format daty/liczb i kierunek pisma.
Część zestawu CapLab — narzędzi diagnostycznych dla Androida.
Instalacja
npm install @tojestproste/caplab-locale-info
npx cap syncUprawnienia
Brak. Wszystkie dane są odczytywane przez Resources.getConfiguration() i standardowe klasy java.util/java.text, bez żadnej deklaracji w AndroidManifest.xml.
Użycie
import { LocaleInfo } from '@tojestproste/caplab-locale-info';
const data = await LocaleInfo.get();
console.log(data.locale.toLanguageTag); // "pl-PL"
console.log(data.timezone.id); // "Europe/Warsaw"
console.log(data.uiMode.isDarkModeActive); // falseAPI
get()
get() => Promise<LocaleInfoResult>Zwraca stan locale.
Returns: Promise<LocaleInfoResult>
Interfaces
LocaleInfoResult
| Prop | Type |
| -------------------- | -------------------------------------------------------------------------- |
| timestamp | number |
| locale | LocaleInfoLocale |
| timezone | LocaleInfoTimezone |
| uiMode | LocaleInfoUiMode |
| formatting | LocaleInfoFormatting |
| layoutDirection | LocaleInfoLayoutDirection |
Przykładowy response
Realny output (Poco X7 Pro, pl-PL, motyw jasny):
{
"locale": {
"language": "pl",
"country": "PL",
"displayName": "polski (Polska)",
"toLanguageTag": "pl-PL",
"allSystemLocales": ["pl-PL"]
},
"timezone": {
"id": "Europe/Warsaw",
"rawOffsetHours": 1,
"currentlyInDST": true
},
"uiMode": {
"nightMode": "light",
"isDarkModeActive": false,
"uiModeTypeName": "vendor_extension_15"
},
"formatting": {
"sampleDateFormatted": "niedziela, 2 sierpnia 2026, 21:53",
"decimalSeparator": ",",
"currencySymbol": "zł",
"is24HourFormat": true
},
"layoutDirection": { "isRtl": false }
}Uwaga o uiModeTypeName: wartości spoza standardowej puli Androida (np. na nakładkach producentów typu HyperOS) są opisane jako "vendor_extension_<kod>" zamiast rzucać błąd.
Licencja
MIT
