Files
discord-decomp/modules/a11y/native/useIsScreenReaderEnabled.native.tsx
T
2026-11-01 12:12:55 +02:00

69 lines
2.0 KiB
TypeScript

// Metro module 4586 (f4587).
import { AccessibilityInfo } from "react-native";
import { Storage } from "../../../_bundle/Module595";
import { create } from "../../../_bundle/Module644";
import { batchUpdates } from "../../../_bundle/Module705";
function $mk103931($env) {
return () => $env.$parent[0]($mk114597($env));
}
function $mk114597($env) {
return (a0) => {
let r1 = a0;
const screenReaderEnabled = a0.screenReaderEnabled;
const screenReaderEnabled2 = $env[0];
if (screenReaderEnabled !== screenReaderEnabled2) {
const r7 = $env.$parent.$parent;
(0, r7[0])(r7[1][1]).Storage.set(r7[4], screenReaderEnabled2);
r1 = {
screenReaderEnabled: screenReaderEnabled2
};
}
return r1;
};
}
let c2793_4, c2793_5;
let env2793 = {};
const SCREEN_READER_ENABLED_GETTER = (a0) => a0.screenReaderEnabled;
c2793_4 = "screenReaderEnabled";
c2793_5 = create((a0) => {
let env14335 = {
$parent: env2793
};
env14335[0] = a0;
const updateScreenReaderEnabled = function updateScreenReaderEnabled(a0) {
let env25250;
const r1 = env25250 = {
$parent: env14335
};
env25250[0] = a0;
batchUpdates($mk103931(r1));
};
AccessibilityInfo.isScreenReaderEnabled().then(updateScreenReaderEnabled).catch(() => {
let env25251;
const r1 = env25251 = {
$parent: env14335
};
env25251[0] = false;
batchUpdates($mk103931(r1));
});
AccessibilityInfo.addEventListener("screenReaderChanged", updateScreenReaderEnabled);
let screenReaderEnabled = Storage.get(c2793_4);
if (screenReaderEnabled == null) {
screenReaderEnabled = false;
}
return {
screenReaderEnabled
};
});
export function addScreenReaderEnabledListener(c14336_0) {
return c2793_5.subscribe((a0) => {
c14336_0(a0.screenReaderEnabled);
});
}
export function getIsScreenReaderEnabled() {
return c2793_5.getState().screenReaderEnabled;
}
export function useIsScreenReaderEnabled() {
return c2793_5(SCREEN_READER_ENABLED_GETTER);
}