{"_id":"@capawesome/capacitor-localization","_rev":"4-d694dda82f92a3d2de2a07a634d8dadf","name":"@capawesome/capacitor-localization","dist-tags":{"latest":"0.1.2"},"versions":{"0.0.1":{"name":"@capawesome/capacitor-localization","version":"0.0.1","keywords":["capacitor","plugin","native"],"author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","_id":"@capawesome/capacitor-localization@0.0.1","maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"homepage":"https://capawesome.io/docs/plugins/localization/","bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"dist":{"shasum":"01c866521869546faf8ea38f6fdca410c3c36189","tarball":"https://registry.npmjs.org/@capawesome/capacitor-localization/-/capacitor-localization-0.0.1.tgz","fileCount":37,"integrity":"sha512-KNlVzXcXEhjtmLH0vPzBLZ5CA0e4U34zKKUD8WpWrJUExByCMkHxsWb9WPrBLgMhJKCn5l+FIYXX/fG597HGvQ==","signatures":[{"sig":"MEYCIQCvqCRGECZNe63VhGaQN0yEa3ydwsD6k728gYtlPoWOLwIhAL12yD282uQIyTrXcotF4LCwv/IY0OFtidwRGnVYIxU7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":85052},"main":"dist/plugin.cjs.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","module":"dist/esm/index.js","funding":[{"url":"https://github.com/sponsors/capawesome-team/","type":"github"},{"url":"https://opencollective.com/capawesome","type":"opencollective"}],"gitHead":"8dd31ce5d3f16f94fb71d033f47512e99908f4e4","scripts":{"fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.mjs","clean":"rimraf ./dist","watch":"tsc --watch","docgen":"docgen --api LocalizationPlugin --output-readme README.md --output-json dist/docs.json","eslint":"eslint . --ext ts","verify":"npm run verify:ios && npm run verify:android && npm run verify:web","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:web":"npm run build","prepublishOnly":"npm run build","verify:android":"cd android && ./gradlew clean build test && cd ..","ios:pod:install":"cd ios && pod install --repo-update && cd ..","ios:spm:install":"cd ios && swift package resolve && cd .."},"_npmUser":{"name":"robingenz","email":"mail@robingenz.dev"},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"repository":{"url":"git+https://github.com/capawesome-team/capacitor-plugins.git","type":"git"},"_npmVersion":"11.13.0","description":"Capacitor plugin to read the user's localization preferences.","directories":{},"_nodeVersion":"24.16.0","eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"8.57.0","rimraf":"6.1.2","rollup":"4.53.3","swiftlint":"2.0.0","typescript":"5.9.3","@capacitor/cli":"8.0.0","@capacitor/ios":"8.0.0","@capacitor/core":"8.0.0","@capacitor/docgen":"0.3.1","@capacitor/android":"8.0.0","@ionic/eslint-config":"0.4.0","prettier-plugin-java":"2.6.7"},"peerDependencies":{"@capacitor/core":">=8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/capacitor-localization_0.0.1_1783405278202_0.28811824836302224","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@capawesome/capacitor-localization","version":"0.1.0","keywords":["capacitor","capacitor-plugin","plugin","native","localization","locale","i18n","internationalization","time zone","text direction","regional settings","measurement system"],"author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","_id":"@capawesome/capacitor-localization@0.1.0","maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"homepage":"https://capawesome.io/docs/sdks/capacitor/localization/","bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"dist":{"shasum":"3845904878437ce1a616202d80bdd3c79ef0fe6b","tarball":"https://registry.npmjs.org/@capawesome/capacitor-localization/-/capacitor-localization-0.1.0.tgz","fileCount":37,"integrity":"sha512-xvY8yOVjumoT7WfubRLzyYL4kwCRXxNDm8oF8yX6D0yT1TzAobqhRk99VUmntBPm2ZxbXP69UjI2oLoqVDhTJA==","signatures":[{"sig":"MEUCIFPRn0Kqtx8S5Tg4gcxCwUBWaX6Bem98DiMBsJH0f9jaAiEAuByQjwSG9zN778l8zeYA2w1+DNc4aM1HbGPvkukMPak=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@capawesome%2fcapacitor-localization@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":89339},"main":"dist/plugin.cjs.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","module":"dist/esm/index.js","funding":[{"url":"https://github.com/sponsors/capawesome-team/","type":"github"},{"url":"https://opencollective.com/capawesome","type":"opencollective"}],"gitHead":"1ce17b1fd14c43b2f1d5d3c2da82221e1d1dca37","scripts":{"fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.mjs","clean":"rimraf ./dist","watch":"tsc --watch","docgen":"docgen --api LocalizationPlugin --output-readme README.md --output-json dist/docs.json","eslint":"eslint . --ext ts","verify":"npm run verify:ios && npm run verify:android && npm run verify:web","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:web":"npm run build","prepublishOnly":"npm run build","verify:android":"cd android && ./gradlew clean build test && cd ..","ios:pod:install":"cd ios && pod install --repo-update && cd ..","ios:spm:install":"cd ios && swift package resolve && cd .."},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0c7e8dfd-a35f-420d-9710-14da09ec0626"}},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"repository":{"url":"git+https://github.com/capawesome-team/capacitor-plugins.git","type":"git"},"_npmVersion":"11.16.0","description":"Capacitor plugin to read the user's localization preferences on Android, iOS, and Web.","directories":{},"_nodeVersion":"24.18.0","eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"8.57.0","rimraf":"6.1.2","rollup":"4.53.3","swiftlint":"2.0.0","typescript":"5.9.3","@capacitor/cli":"8.0.0","@capacitor/ios":"8.0.0","@capacitor/core":"8.0.0","@capacitor/docgen":"0.3.1","@capacitor/android":"8.0.0","@ionic/eslint-config":"0.4.0","prettier-plugin-java":"2.6.7"},"peerDependencies":{"@capacitor/core":">=8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/capacitor-localization_0.1.0_1784015547608_0.40260998875420717","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@capawesome/capacitor-localization","version":"0.1.1","keywords":["capacitor","capacitor-plugin","plugin","native","localization","locale","i18n","internationalization","time zone","text direction","regional settings","measurement system"],"author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","_id":"@capawesome/capacitor-localization@0.1.1","maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"homepage":"https://capawesome.io/docs/sdks/capacitor/localization/","bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"dist":{"shasum":"8c6f5bf581113429cd057c83ad331d9c66000ec4","tarball":"https://registry.npmjs.org/@capawesome/capacitor-localization/-/capacitor-localization-0.1.1.tgz","fileCount":37,"integrity":"sha512-KjqKzGD0rpD6rq0qCppILoBkhPqu3V4SF64yCakSJlkxvUmvfuvceah2LtJKwXrF+fEIufbBamR9ixZnYwuEyA==","signatures":[{"sig":"MEQCIFWZaWzQElegqtakc27gzkOpCkQvj+h+OftT7Txgu987AiAnTR1urcSuITsNJDDWxM3WKChui38P2ohHOvjTlOukxw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@capawesome%2fcapacitor-localization@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":89348},"main":"dist/plugin.cjs.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","module":"dist/esm/index.js","funding":[{"url":"https://github.com/sponsors/capawesome-team/","type":"github"},{"url":"https://opencollective.com/capawesome","type":"opencollective"}],"gitHead":"3e61f4b412f9f3f512c21169bb135bbb23a67e6d","scripts":{"fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.mjs","clean":"rimraf ./dist","watch":"tsc --watch","docgen":"docgen --api LocalizationPlugin --output-readme README.md --output-json dist/docs.json","eslint":"eslint . --ext ts","verify":"npm run verify:ios && npm run verify:android && npm run verify:web","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:web":"npm run build","prepublishOnly":"npm run build","verify:android":"cd android && ./gradlew clean build test && cd ..","ios:pod:install":"cd ios && pod install --repo-update && cd ..","ios:spm:install":"cd ios && swift package resolve && cd .."},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0c7e8dfd-a35f-420d-9710-14da09ec0626"}},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"repository":{"url":"git+https://github.com/capawesome-team/capacitor-plugins.git","type":"git"},"_npmVersion":"11.16.0","description":"Capacitor plugin to read the user's localization preferences on Android, iOS, and Web.","directories":{},"_nodeVersion":"24.18.0","eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"8.57.0","rimraf":"6.1.2","rollup":"4.53.3","swiftlint":"2.0.0","typescript":"5.9.3","@capacitor/cli":"8.0.0","@capacitor/ios":"8.0.0","@capacitor/core":"8.0.0","@capacitor/docgen":"0.3.1","@capacitor/android":"8.0.0","@ionic/eslint-config":"0.4.0","prettier-plugin-java":"2.6.7"},"peerDependencies":{"@capacitor/core":">=8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/capacitor-localization_0.1.1_1784103001923_0.5138251547244523","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@capawesome/capacitor-localization","version":"0.1.2","description":"Capacitor plugin to read the user's localization preferences on Android, iOS, and Web.","main":"dist/plugin.cjs.js","module":"dist/esm/index.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/capawesome-team/capacitor-plugins.git"},"bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"funding":[{"type":"github","url":"https://github.com/sponsors/capawesome-team/"},{"type":"opencollective","url":"https://opencollective.com/capawesome"}],"homepage":"https://capawesome.io/docs/sdks/capacitor/localization/","keywords":["capacitor","capacitor-plugin","plugin","native","localization","locale","i18n","internationalization","time zone","text direction","regional settings","measurement system"],"scripts":{"verify":"npm run verify:ios && npm run verify:android && npm run verify:web","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:android":"cd android && ./gradlew clean build test && cd ..","verify:web":"npm run build","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","eslint":"eslint . --ext ts","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","docgen":"docgen --api LocalizationPlugin --output-readme README.md --output-json dist/docs.json","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.mjs","clean":"rimraf ./dist","watch":"tsc --watch","ios:pod:install":"cd ios && pod install --repo-update && cd ..","ios:spm:install":"cd ios && swift package resolve && cd ..","prepublishOnly":"npm run build"},"devDependencies":{"@capacitor/android":"8.0.0","@capacitor/cli":"8.4.2","@capacitor/core":"8.0.0","@capacitor/docgen":"0.3.1","@capacitor/ios":"8.0.0","@ionic/eslint-config":"0.4.0","eslint":"8.57.0","prettier-plugin-java":"2.9.7","rimraf":"6.1.2","rollup":"4.62.3","swiftlint":"2.0.0","typescript":"5.9.3"},"peerDependencies":{"@capacitor/core":">=8.0.0"},"eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"publishConfig":{"access":"public"},"gitHead":"7c1937ed10b7de86ca2c1cdc3539a2735fd69a00","_id":"@capawesome/capacitor-localization@0.1.2","_nodeVersion":"24.19.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-FniuciS6fXNLTa7uGumoXtKJVdXsqJ2mG8XrmHog3e/U0PebZNIsFMdUHAuzEkgENzU3vpPuZvvgO4GuEhPzuw==","shasum":"a212062bed565bd1f5cb151c743a0767db298bb0","tarball":"https://registry.npmjs.org/@capawesome/capacitor-localization/-/capacitor-localization-0.1.2.tgz","fileCount":37,"unpackedSize":89474,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@capawesome%2fcapacitor-localization@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQC97JAgbrKTrK+kVuphMMHhLqiv9H31Hixul5bNVLgQLQIgJKJnNKgnpzOtjWFEhaLs2HgoOHXt9tmGX48+HsYrXQk="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0c7e8dfd-a35f-420d-9710-14da09ec0626"}},"directories":{},"maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/capacitor-localization_0.1.2_1788337366867_0.6811325669273316"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-07T06:21:17.973Z","modified":"2026-09-02T08:22:47.438Z","0.0.1":"2026-07-07T06:21:18.359Z","0.1.0":"2026-07-14T07:52:27.741Z","0.1.1":"2026-07-15T08:10:02.054Z","0.1.2":"2026-09-02T08:22:47.025Z"},"bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","homepage":"https://capawesome.io/docs/sdks/capacitor/localization/","keywords":["capacitor","capacitor-plugin","plugin","native","localization","locale","i18n","internationalization","time zone","text direction","regional settings","measurement system"],"repository":{"type":"git","url":"git+https://github.com/capawesome-team/capacitor-plugins.git"},"description":"Capacitor plugin to read the user's localization preferences on Android, iOS, and Web.","maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"readme":"# Capacitor Localization Plugin\n\nCapacitor plugin to read the user's localization preferences, such as preferred locales, time zone, and regional formatting settings.\n\n<div class=\"capawesome-z29o10a\">\n  <a href=\"https://cloud.capawesome.io/\" target=\"_blank\">\n    <img alt=\"Deliver Live Updates to your Capacitor app with Capawesome Cloud\" src=\"https://cloud.capawesome.io/assets/banners/cloud-build-and-deploy-capacitor-apps.png?t=1\" />\n  </a>\n</div>\n\n## Features\n\n- 🌍 **Preferred locales**: Read the user's preferred locales, ordered by preference.\n- 💱 **Regional formatting**: Read currency, decimal, and grouping separators per locale.\n- ↔️ **Text direction**: Detect whether a locale is written left-to-right or right-to-left.\n- 📏 **Measurement system**: Detect the metric, US, or UK measurement system.\n- 🕐 **Settings**: Read the time zone, clock format, and first day of the week.\n- 🖥️ **Cross-platform**: Full support for Android, iOS, and Web.\n- 🤝 **Compatibility**: Works alongside the [App Language](https://capawesome.io/docs/sdks/capacitor/app-language/), [Datetime Picker](https://capawesome.io/docs/sdks/capacitor/datetime-picker/) and [Device Info](https://capawesome.io/docs/sdks/capacitor/device-info/) plugins.\n- 📦 **CocoaPods & SPM**: Supports CocoaPods and Swift Package Manager for iOS.\n- 🔁 **Up-to-date**: Always supports the latest Capacitor version.\n\nMissing a feature? Just [open an issue](https://github.com/capawesome-team/capacitor-plugins/issues) and we'll take a look!\n\n## Use Cases\n\nThe Localization plugin is typically used to adapt an app to the user's language and regional preferences, for example:\n\n- **Localized formatting**: Format numbers and prices with the correct decimal separator, grouping separator, and currency symbol for the user's locale.\n- **Right-to-left layouts**: Switch the layout direction of your app based on the text direction of the user's preferred language.\n- **Unit display**: Show distances and weights in metric or imperial units depending on the user's measurement system.\n- **Date and time display**: Render times in the user's time zone and clock format, and start calendar views on the correct first day of the week.\n- **Language selection**: Preselect the best matching app language from the user's preferred locales.\n\n## Compatibility\n\n| Plugin Version | Capacitor Version | Status         |\n| -------------- | ----------------- | -------------- |\n| 0.x.x          | >=8.x.x           | Active support |\n\n## Installation\n\nYou can use our **AI-Assisted Setup** to install the plugin.\nAdd the [Capawesome Skills](https://github.com/capawesome-team/skills) to your AI tool using the following command:\n\n```bash\nnpx skills add capawesome-team/skills --skill capacitor-plugins\n```\n\nThen use the following prompt:\n\n```\n Use the `capacitor-plugins` skill from `capawesome-team/skills` to install the `@capawesome/capacitor-localization` plugin in my project.\n```\n\nIf you prefer **Manual Setup**, install the plugin by running the following commands and follow the platform-specific instructions below:\n\n```bash\nnpm install @capawesome/capacitor-localization\nnpx cap sync\n```\n\nNo additional permissions or configuration are required on any platform.\n\n## Configuration\n\nNo configuration required for this plugin.\n\n## Usage\n\nThe following examples show how to read the user's preferred locales and their regional formatting settings.\n\n### Get the user's preferred locales\n\nRead the user's preferred locales, ordered by preference. The first entry is the most preferred locale. Each locale contains the language tag, region code, currency, number separators, text direction, and measurement system:\n\n```typescript\nimport { Localization } from '@capawesome/capacitor-localization';\n\nconst getLocales = async () => {\n  const { locales } = await Localization.getLocales();\n  return locales;\n};\n```\n\n### Read the user's regional settings\n\nRead the user's regional formatting settings, such as the time zone, whether a 24-hour clock is preferred, and the first day of the week:\n\n```typescript\nimport { Localization } from '@capawesome/capacitor-localization';\n\nconst getSettings = async () => {\n  const settings = await Localization.getSettings();\n  return settings;\n};\n```\n\n## API\n\n<docgen-index>\n\n* [`getLocales()`](#getlocales)\n* [`getSettings()`](#getsettings)\n* [Interfaces](#interfaces)\n* [Type Aliases](#type-aliases)\n\n</docgen-index>\n\n<docgen-api>\n<!--Update the source file JSDoc comments and rerun docgen to update the docs below-->\n\n### getLocales()\n\n```typescript\ngetLocales() => Promise<GetLocalesResult>\n```\n\nGet the user's preferred locales, ordered by preference.\n\nThe first entry is the most preferred locale.\n\n**Returns:** <code>Promise&lt;<a href=\"#getlocalesresult\">GetLocalesResult</a>&gt;</code>\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### getSettings()\n\n```typescript\ngetSettings() => Promise<GetSettingsResult>\n```\n\nGet the user's regional formatting settings.\n\n**Returns:** <code>Promise&lt;<a href=\"#getsettingsresult\">GetSettingsResult</a>&gt;</code>\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### Interfaces\n\n\n#### GetLocalesResult\n\n| Prop          | Type                  | Description                                                                                        | Since |\n| ------------- | --------------------- | -------------------------------------------------------------------------------------------------- | ----- |\n| **`locales`** | <code>Locale[]</code> | The user's preferred locales, ordered by preference. The first entry is the most preferred locale. | 0.1.0 |\n\n\n#### Locale\n\n| Prop                    | Type                                                                    | Description                                                                                                                                 | Since |\n| ----------------------- | ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ----- |\n| **`currencyCode`**      | <code>string \\| null</code>                                             | The ISO 4217 currency code of the locale. Returns `null` if the currency cannot be determined.                                              | 0.1.0 |\n| **`currencySymbol`**    | <code>string \\| null</code>                                             | The currency symbol of the locale. Returns `null` if the currency symbol cannot be determined.                                              | 0.1.0 |\n| **`decimalSeparator`**  | <code>string \\| null</code>                                             | The character used to separate the integer part from the fractional part of a number. Returns `null` if the separator cannot be determined. | 0.1.0 |\n| **`groupingSeparator`** | <code>string \\| null</code>                                             | The character used to group digits of the integer part of a number. Returns `null` if the separator cannot be determined.                   | 0.1.0 |\n| **`languageCode`**      | <code>string</code>                                                     | The ISO 639 language code of the locale.                                                                                                    | 0.1.0 |\n| **`languageTag`**       | <code>string</code>                                                     | The BCP 47 language tag of the locale.                                                                                                      | 0.1.0 |\n| **`measurementSystem`** | <code><a href=\"#measurementsystem\">MeasurementSystem</a> \\| null</code> | The measurement system used by the locale. Returns `null` if the measurement system cannot be determined.                                   | 0.1.0 |\n| **`regionCode`**        | <code>string \\| null</code>                                             | The ISO 3166 region code of the locale. Returns `null` if the region cannot be determined.                                                  | 0.1.0 |\n| **`textDirection`**     | <code><a href=\"#textdirection\">TextDirection</a></code>                 | The writing direction of the locale's language.                                                                                             | 0.1.0 |\n\n\n#### GetSettingsResult\n\n| Prop                  | Type                 | Description                                                                                                                           | Since |\n| --------------------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | ----- |\n| **`firstDayOfWeek`**  | <code>number</code>  | The first day of the week as configured by the user. The value follows the ISO 8601 convention where `1` is Monday and `7` is Sunday. | 0.1.0 |\n| **`timeZone`**        | <code>string</code>  | The identifier of the user's current time zone.                                                                                       | 0.1.0 |\n| **`uses24HourClock`** | <code>boolean</code> | Whether the user prefers a 24-hour clock over a 12-hour clock.                                                                        | 0.1.0 |\n\n\n### Type Aliases\n\n\n#### MeasurementSystem\n\nThe measurement system used by a locale.\n\n- `metric`: The metric system (e.g. meters, kilograms).\n- `us`: The United States customary system (e.g. feet, pounds).\n- `uk`: The United Kingdom imperial system.\n\n<code>'metric' | 'us' | 'uk'</code>\n\n\n#### TextDirection\n\nThe writing direction of a language.\n\n- `ltr`: Left-to-right (e.g. English, German).\n- `rtl`: Right-to-left (e.g. Arabic, Hebrew).\n\n<code>'ltr' | 'rtl'</code>\n\n</docgen-api>\n\n## Platform Support\n\nThe plugin returns `null` for any field that a platform cannot determine. On the **Web** platform, `currencyCode`, `currencySymbol`, and `measurementSystem` are always `null`, because the browser does not expose this information.\n\n## FAQ\n\n### How is this plugin different from other similar plugins?\n\nIt reads the user's complete localization picture in one fully typed API — ordered preferred locales, currency and number separators, text direction, measurement system, time zone, clock format, and first day of the week — across Android, iOS, and the Web. It's honest about platform limits, returning `null` for fields a platform can't determine. If you only need the current language, a minimal lookup is enough; if you want to format numbers, currencies, dates, and layouts to match each user's region, this plugin is designed for exactly that.\n\n### Why are some locale fields `null` on the Web?\n\nThe plugin returns `null` for any field that a platform cannot determine. On the Web, `currencyCode`, `currencySymbol`, and `measurementSystem` are always `null` because the browser does not expose this information. On Android and iOS, the plugin has full access to the system's localization settings.\n\n### Do I need any permissions to use this plugin?\n\nNo, reading the user's localization preferences does not require any permissions. No additional configuration is required on any platform either, so the plugin works right after [installation](#installation).\n\n### How do I detect right-to-left languages?\n\nEvery locale returned by `getLocales()` contains a `textDirection` property that is either `ltr` (left-to-right, e.g. English or German) or `rtl` (right-to-left, e.g. Arabic or Hebrew). You can use this value to switch the layout direction of your app.\n\n### How is this plugin different from the App Language plugin?\n\nThe Localization plugin reads the user's system-level preferences, such as preferred locales, time zone, and regional formatting settings. The [App Language](https://capawesome.io/docs/sdks/capacitor/app-language/) plugin, on the other hand, manages the app's own language override, independent of the device language.\n\n### Can I use this plugin with Ionic, React, Vue or Angular?\n\nYes, the plugin is framework-agnostic. It works in any Capacitor app regardless of the web framework, including Ionic with Angular, React, or Vue, as well as plain JavaScript projects.\n\n## Related Plugins\n\n- [App Language](https://capawesome.io/docs/sdks/capacitor/app-language/): Manage the app's own language override, independent of the device language.\n- [Datetime Picker](https://capawesome.io/docs/sdks/capacitor/datetime-picker/): Native date and time selection with localization and theming support.\n- [Device Info](https://capawesome.io/docs/sdks/capacitor/device-info/): Read device information, such as the model, manufacturer, and operating system.\n\n## Newsletter\n\nStay up to date with the latest news and updates about the Capawesome, Capacitor, and Ionic ecosystem by subscribing to our [Capawesome Newsletter](https://cloud.capawesome.io/newsletter/).\n\n## Changelog\n\nSee [CHANGELOG.md](https://github.com/capawesome-team/capacitor-plugins/blob/main/packages/localization/CHANGELOG.md).\n\n## License\n\nSee [LICENSE](https://github.com/capawesome-team/capacitor-plugins/blob/main/packages/localization/LICENSE).\n","readmeFilename":"README.md"}