{"_id":"@capawesome/capacitor-accessibility-preferences","_rev":"4-fde76dbfc9abad2b658e8b0124363330","name":"@capawesome/capacitor-accessibility-preferences","dist-tags":{"latest":"0.1.2"},"versions":{"0.0.1":{"name":"@capawesome/capacitor-accessibility-preferences","version":"0.0.1","keywords":["capacitor","plugin","native"],"author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","_id":"@capawesome/capacitor-accessibility-preferences@0.0.1","maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"homepage":"https://capawesome.io/docs/plugins/accessibility-preferences/","bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"dist":{"shasum":"f09746a09b4fe728d7736dd650b7e537629b71b0","tarball":"https://registry.npmjs.org/@capawesome/capacitor-accessibility-preferences/-/capacitor-accessibility-preferences-0.0.1.tgz","fileCount":33,"integrity":"sha512-wG5Ydx2vp6wb8evZlqSxQ54/97TVjhEqrmhS1TmgnDRcMPW/niQ2f9zVsb395Gxx97yiiDCiNjfWerjB8nwb6w==","signatures":[{"sig":"MEYCIQDBKrH8KJyrOIRd7p/bvS7a7tLDhfFIO1R823n1hIz5pgIhAPLGGF0VzPUf7n7VtK6AFj4oMipighu6hVgZ/2W974TB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":46959},"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 AccessibilityPreferencesPlugin --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 for reading the user's system accessibility 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-accessibility-preferences_0.0.1_1783405196132_0.32212075220214187","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@capawesome/capacitor-accessibility-preferences","version":"0.1.0","keywords":["capacitor","plugin","native","capacitor-plugin","accessibility","a11y","accessibility preferences","font scale","reduce motion","bold text","high contrast","invert colors"],"author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","_id":"@capawesome/capacitor-accessibility-preferences@0.1.0","maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"homepage":"https://capawesome.io/docs/sdks/capacitor/accessibility-preferences/","bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"dist":{"shasum":"c04e00fcb5dd3087bc329cc98ffef7bb243fcd67","tarball":"https://registry.npmjs.org/@capawesome/capacitor-accessibility-preferences/-/capacitor-accessibility-preferences-0.1.0.tgz","fileCount":33,"integrity":"sha512-T/IcJW80gsLZO0j+IMuqUsNFpw8o8mZoQrWrJ7KUoLIeMe3d6mo6eCHZ1C0P2LCMsfQIz9qjwvgVEFwegTJ45A==","signatures":[{"sig":"MEUCIQC/m4kQkH8/C+oSlliwHjd5D0AVWqQsLJ83e+EfYsPN+AIgblSMeApaOIle8DYFdcSWU8JN6QvtjTprIjmk0/u4uOI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@capawesome%2fcapacitor-accessibility-preferences@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":50715},"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 AccessibilityPreferencesPlugin --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:57051b6f-21e7-4599-b457-ff2a0c1fe168"}},"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 for reading the user's system accessibility preferences on Android, iOS, and the 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-accessibility-preferences_0.1.0_1784015487593_0.12259665461909863","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@capawesome/capacitor-accessibility-preferences","version":"0.1.1","keywords":["capacitor","plugin","native","capacitor-plugin","accessibility","a11y","accessibility preferences","font scale","reduce motion","bold text","high contrast","invert colors"],"author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","_id":"@capawesome/capacitor-accessibility-preferences@0.1.1","maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"homepage":"https://capawesome.io/docs/sdks/capacitor/accessibility-preferences/","bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"dist":{"shasum":"718d455944f8e3a44c4fc27accd2abadbb9f54e7","tarball":"https://registry.npmjs.org/@capawesome/capacitor-accessibility-preferences/-/capacitor-accessibility-preferences-0.1.1.tgz","fileCount":33,"integrity":"sha512-piywe043MqP+06kkQkM0NRIw7LQYizSBnNfVEsFZycwhNoTRldVxDmi97SsazTmft9XoVVmPkUrEAJwOoXM72Q==","signatures":[{"sig":"MEQCIFVUl5nEOyZEq5nMLiGjYYLUHOu6W8hNliri7pf0ziPUAiApz9BOG2+pYjiODawGU4urSYy4k/rcaRAoZrOm+30ijQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@capawesome%2fcapacitor-accessibility-preferences@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":50724},"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 AccessibilityPreferencesPlugin --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:57051b6f-21e7-4599-b457-ff2a0c1fe168"}},"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 for reading the user's system accessibility preferences on Android, iOS, and the 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-accessibility-preferences_0.1.1_1784102941432_0.9274310111087172","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@capawesome/capacitor-accessibility-preferences","version":"0.1.2","description":"Capacitor plugin for reading the user's system accessibility preferences on Android, iOS, and the 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/accessibility-preferences/","keywords":["capacitor","plugin","native","capacitor-plugin","accessibility","a11y","accessibility preferences","font scale","reduce motion","bold text","high contrast","invert colors"],"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 AccessibilityPreferencesPlugin --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-accessibility-preferences@0.1.2","_nodeVersion":"24.19.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-c074kqV+Dc5EVsEieOuy4JXvSeXdJYp95mCaB52u//+mgR3o5BwDY/tjG8gTUeLd0hMUleyQGx8I33EAoyuaLw==","shasum":"4938e7b73b13044e8fa94f73c2a21195d17c9756","tarball":"https://registry.npmjs.org/@capawesome/capacitor-accessibility-preferences/-/capacitor-accessibility-preferences-0.1.2.tgz","fileCount":33,"unpackedSize":50818,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@capawesome%2fcapacitor-accessibility-preferences@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCCAeYCWnRNh1YBqyGeXQF6PROhXcp/nrrXR1S42YUUMwIgE2Ed6oNQ2019Cre6uOc9yoeBdoGWARleMvGZYl8Ye0w="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:57051b6f-21e7-4599-b457-ff2a0c1fe168"}},"directories":{},"maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/capacitor-accessibility-preferences_0.1.2_1788337290993_0.14073189613146142"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-07T06:19:55.946Z","modified":"2026-09-02T08:21:31.508Z","0.0.1":"2026-07-07T06:19:56.287Z","0.1.0":"2026-07-14T07:51:27.724Z","0.1.1":"2026-07-15T08:09:01.573Z","0.1.2":"2026-09-02T08:21:31.132Z"},"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/accessibility-preferences/","keywords":["capacitor","plugin","native","capacitor-plugin","accessibility","a11y","accessibility preferences","font scale","reduce motion","bold text","high contrast","invert colors"],"repository":{"type":"git","url":"git+https://github.com/capawesome-team/capacitor-plugins.git"},"description":"Capacitor plugin for reading the user's system accessibility preferences on Android, iOS, and the Web.","maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"readme":"# Capacitor Accessibility Preferences Plugin\n\nCapacitor plugin for reading the user's system accessibility preferences.\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- ♿ **Accessibility preferences**: Read the user's system accessibility preferences.\n- 🔤 **Font scale**: Adapt your typography to the user's preferred text size.\n- 🎞️ **Reduce motion**: Disable animations when the user prefers reduced motion.\n- 🎨 **Contrast & colors**: React to increased contrast and inverted colors.\n- 🌐 **Cross-platform**: Works on Android, iOS, and the Web.\n- 🤝 **Compatibility**: Works alongside the [Localization](https://capawesome.io/docs/sdks/capacitor/localization/), [Screen Reader](https://capawesome.io/docs/sdks/capacitor/screen-reader/) and [Text Zoom](https://capawesome.io/docs/sdks/capacitor/text-zoom/) 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 Accessibility Preferences plugin is typically used to adapt an app's user interface to the user's system accessibility settings, for example:\n\n- **Dynamic typography**: Scale your app's font sizes based on the system font scale so text stays readable for users who prefer larger text.\n- **Reduced animations**: Disable or simplify animations and transitions when the user prefers reduced motion.\n- **High-contrast themes**: Switch to a higher-contrast color scheme when the user has enabled increased contrast.\n- **Bold text support**: Render heavier font weights when the user prefers bold text.\n- **Color-aware rendering**: Adjust images or charts when the user has enabled inverted colors.\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-accessibility-preferences` plugin in my project.\n```\n\nIf you prefer **Manual Setup**, install the plugin by running the following command:\n\n```bash\nnpm install @capawesome/capacitor-accessibility-preferences\nnpx cap sync\n```\n\nThis plugin does not require any additional permissions or configuration.\n\n## Configuration\n\nNo configuration required for this plugin.\n\n## Usage\n\nThe following example shows how to read the user's system accessibility preferences.\n\n### Read the user's accessibility preferences\n\nCall `getPreferences()` to read all system accessibility preferences at once, such as the font scale, reduce motion, bold text, and contrast settings. Fields that the current platform cannot provide are set to `null` (see [Platform Availability](#platform-availability)):\n\n```typescript\nimport { AccessibilityPreferences } from '@capawesome/capacitor-accessibility-preferences';\n\nconst getPreferences = async () => {\n  const preferences = await AccessibilityPreferences.getPreferences();\n  return preferences;\n};\n```\n\n## API\n\n<docgen-index>\n\n* [`getPreferences()`](#getpreferences)\n* [Interfaces](#interfaces)\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### getPreferences()\n\n```typescript\ngetPreferences() => Promise<GetPreferencesResult>\n```\n\nGet the user's current system accessibility preferences.\n\nFields that the current platform cannot provide are set to `null`.\n\n**Returns:** <code>Promise&lt;<a href=\"#getpreferencesresult\">GetPreferencesResult</a>&gt;</code>\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### Interfaces\n\n\n#### GetPreferencesResult\n\n| Prop                              | Type                         | Description                                                                                                                                                                                                                                                                                                                                           | Since |\n| --------------------------------- | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- |\n| **`fontScale`**                   | <code>number</code>          | The system font scale factor. A value of `1.0` represents the default font size. Values greater than `1.0` indicate that the user prefers larger text, values less than `1.0` smaller text. On iOS, the value is derived from the preferred content size category. On Web, this is always `1.0` because the font scale is not exposed to web content. | 0.1.0 |\n| **`isBoldTextEnabled`**           | <code>boolean \\| null</code> | Whether the user prefers bold text. Returns `null` on platforms where the value cannot be read (Web and Android versions below 12).                                                                                                                                                                                                                   | 0.1.0 |\n| **`isHighContrastEnabled`**       | <code>boolean \\| null</code> | Whether the user prefers increased contrast. On iOS, this reflects the \"Increase Contrast\" setting (darker system colors). On Android, this reflects the high text contrast setting. Returns `null` on platforms where the value cannot be read.                                                                                                      | 0.1.0 |\n| **`isInvertColorsEnabled`**       | <code>boolean \\| null</code> | Whether the user has enabled inverted colors. Returns `null` on Web.                                                                                                                                                                                                                                                                                  | 0.1.0 |\n| **`isReduceMotionEnabled`**       | <code>boolean</code>         | Whether the user prefers reduced motion (fewer animations).                                                                                                                                                                                                                                                                                           | 0.1.0 |\n| **`isReduceTransparencyEnabled`** | <code>boolean \\| null</code> | Whether the user prefers reduced transparency. Only available on iOS. Returns `null` on Android and Web.                                                                                                                                                                                                                                              | 0.1.0 |\n\n</docgen-api>\n\n## Platform Availability\n\nNot every preference can be read on every platform. Fields that the current platform cannot provide are set to `null`.\n\n| Field                         | Android      | iOS | Web  |\n| ----------------------------- | ------------ | --- | ---- |\n| `fontScale`                   | ✅           | ✅  | ⚠️\\* |\n| `isReduceMotionEnabled`       | ✅           | ✅  | ✅   |\n| `isBoldTextEnabled`           | ✅ (API 31+) | ✅  | ❌   |\n| `isInvertColorsEnabled`       | ✅           | ✅  | ❌   |\n| `isReduceTransparencyEnabled` | ❌           | ✅  | ❌   |\n| `isHighContrastEnabled`       | ✅           | ✅  | ✅   |\n\n✅ = available · ❌ = always `null` · ⚠️\\* = `fontScale` is always `1.0` on Web because it is not exposed to web content.\n\nOn iOS, `fontScale` is derived from the preferred content size category using the following mapping (relative to the default body text size of 17 pt):\n\n| Content size category           | `fontScale` |\n| ------------------------------- | ----------- |\n| Extra Small                     | 0.82        |\n| Small                           | 0.88        |\n| Medium                          | 0.94        |\n| Large (default)                 | 1.0         |\n| Extra Large                     | 1.12        |\n| Extra Extra Large               | 1.24        |\n| Extra Extra Extra Large         | 1.35        |\n| Accessibility Medium            | 1.65        |\n| Accessibility Large             | 1.94        |\n| Accessibility Extra Large       | 2.35        |\n| Accessibility Extra Extra Large | 2.76        |\n| Accessibility 3X Large          | 3.12        |\n\nCSS media queries such as `prefers-reduced-motion` and `prefers-contrast` already cover reduce-motion and contrast inside the WebView. The value of this plugin is the fields CSS cannot see (`fontScale`, bold text, inverted colors) and having a single API for your app logic on all platforms.\n\nThe screen reader _state_ (VoiceOver/TalkBack) is intentionally out of scope. Use the official [`@capacitor/screen-reader`](https://capacitorjs.com/docs/apis/screen-reader) plugin for that.\n\n## FAQ\n\n### Which accessibility preferences can be read on which platforms?\n\nNot every preference is exposed on every platform. The font scale, reduce motion, and high contrast settings are available on Android, iOS, and the Web, while bold text (Android 12+ and iOS), inverted colors (Android and iOS), and reduced transparency (iOS only) are more limited. Check the [Platform Availability](#platform-availability) section for the complete matrix.\n\n### Why is the font scale always 1.0 on the Web?\n\nThe system font scale is not exposed to web content, so the plugin cannot read it in a browser. On Android, the plugin returns the system font scale factor, and on iOS the value is derived from the preferred content size category.\n\n### Why are some fields null in the result?\n\nFields that the current platform cannot provide are set to `null` instead of a fabricated value. For example, `isBoldTextEnabled` is `null` on the Web and on Android versions below 12, and `isReduceTransparencyEnabled` is `null` on Android and Web because it is an iOS-only setting.\n\n### Do I still need this plugin if I use CSS media queries like prefers-reduced-motion?\n\nCSS media queries such as `prefers-reduced-motion` and `prefers-contrast` already cover reduce motion and contrast inside the WebView. The value of this plugin lies in the fields CSS cannot see, such as the font scale, bold text, and inverted colors, and in having a single API for your app logic on all platforms.\n\n### Can this plugin detect whether a screen reader like VoiceOver or TalkBack is running?\n\nNo, the screen reader state is intentionally out of scope for this plugin. Use the official [`@capacitor/screen-reader`](https://capacitorjs.com/docs/apis/screen-reader) plugin for that.\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- [Localization](https://capawesome.io/docs/sdks/capacitor/localization/): Read the user's localization preferences, such as preferred locales and time zone.\n- [Screen Reader](https://capawesome.io/docs/sdks/capacitor/screen-reader/): Interact with screen readers such as VoiceOver and TalkBack.\n- [Text Zoom](https://capawesome.io/docs/sdks/capacitor/text-zoom/): Read and control the WebView text zoom.\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/accessibility-preferences/CHANGELOG.md).\n\n## License\n\nSee [LICENSE](https://github.com/capawesome-team/capacitor-plugins/blob/main/packages/accessibility-preferences/LICENSE).\n","readmeFilename":"README.md"}