UNPKG

react-native-a11y

Version:

Improvements of a11y for ReactNative, this library improve work with reader and keyboard focus and reader in general.

43 lines (42 loc) 1.67 kB
import { NativeModules, Platform } from "react-native"; const LINKING_ERROR = `The package 'react-native-a11y' doesn't seem to be linked. Make sure: \n\n${Platform.select({ ios: "- You have run 'pod install'\n", default: "" })}- You rebuilt the app after installing the package\n` + `- You are not using Expo Go\n`; // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-expect-error const isTurboModuleEnabled = global.__turboModuleProxy != null; const RCA11yModule = isTurboModuleEnabled ? // eslint-disable-next-line @typescript-eslint/no-var-requires require("../../../nativeSpecs/NativeA11yModule").default : NativeModules.RCA11yModule; export const RCA11y = RCA11yModule || new Proxy({}, { get() { throw new Error(LINKING_ERROR); } }); export function isA11yReaderEnabled() { return RCA11y.isA11yReaderEnabled(); } export function isKeyboardConnected() { return RCA11y.isKeyboardConnected(); } export function announceForAccessibility(announcement) { RCA11y.announceForAccessibility(announcement); } export function announceScreenChange(announcement) { RCA11y.announceScreenChange(announcement); } export function setAccessibilityFocus(nativeTag) { RCA11y.setAccessibilityFocus(nativeTag); } export function setKeyboardFocus(nativeTag) { let _nextTag = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; RCA11y.setKeyboardFocus(nativeTag, _nextTag); } export function setPreferredKeyboardFocus(nativeTag, nextTag) { RCA11y.setAccessibilityFocus(nativeTag, nextTag); } export function setA11yOrder(tags, nativeTag) { RCA11y.setA11yOrder(tags, nativeTag); } //# sourceMappingURL=RCA11yModule.js.map