Files
discord-decomp/sources/modules/a11y/native/AccessibilitySystemFeatures.tsx
T
2026-07-28 01:06:53 +03:00

141 lines
10 KiB
TypeScript

/* Metro module 12990; source: modules/a11y/native/AccessibilitySystemFeatures.tsx; dependencies: [27, 4502, 12845, 12991, 11282, 683, 12992, 2] */
import AnalyticsUtils from '../../../utils/AnalyticsUtils.tsx'; /* Metro dependency 683 */
import AccessibilityStore from '../AccessibilityStore.tsx'; /* Metro dependency 4502 */
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */
import * as AccessibilityConstantsModule from '../AccessibilityConstants.tsx'; /* Metro dependency 12845 */
import * as AccessibilityActionCreatorsModule from '../AccessibilityActionCreators.tsx'; /* Metro dependency 12992 */
function _fun99066(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#99066, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13180:6, offset: 0x021ba626, size: 318 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const AccessibilityFeatureFlags = (AccessibilityConstantsModule).AccessibilityFeatureFlags;
const env0_8 = AccessibilityFeatureFlags.NONE;
object = {init: init_99068, getActiveFeatures: function() {
return NONE;
}, handleReduceMotionChanged: handleReduceMotionChanged, handleReduceTransparencyChanged: function(a0) {
toggleFeature(AccessibilityFeatureFlags.REDUCED_TRANSPARENCY, a0);
}, handleBoldTextChanged: function(a0) {
toggleFeature(AccessibilityFeatureFlags.BOLD_TEXT, a0);
}, handleGrayscaleChanged: function(a0) {
toggleFeature(AccessibilityFeatureFlags.GRAYSCALE, a0);
}, handleInvertColorsChanged: function(a0) {
toggleFeature(AccessibilityFeatureFlags.INVERT_COLORS, a0);
}, handlePreferredColorSchemeChanged: handlePreferredColorSchemeChanged,
handleAccessibilityStoreChanged: handleAccessibilityStoreChanged, handleAppStateChange: handleAppStateChange};
(FileImportTrackerModule).fileFinishedImporting('modules/a11y/native/AccessibilitySystemFeatures.tsx');
exports.default = object;
function toggleFeature(a0, a1) { // fn#99067, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13180:211, offset: 0x021ba764, size: 129 bytes, params: 3, frame: 17
env0_8 = a1 ? NONE | a0 : NONE & ~a0;
const A11Y_FEATURE_MAP = (require(12991) /* metro dependency 12991: AccessibilityPreferencesSharedValue */).A11Y_FEATURE_MAP;
const property = A11Y_FEATURE_MAP[a0];
if (property != null) {
(importDefault(11282) /* metro dependency 11282: updateSharedValueIfChangedNative */)((require(12991) /* metro dependency 12991: AccessibilityPreferencesSharedValue */).accessibilityPreferencesSharedValue,
{[property]: a1});
}
}
function init_99068() { // fn#99068, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13180:363, offset: 0x021ba7e5, size: 397 bytes, params: 1, frame: 15
const accessibilityStoreBinding = AccessibilityStore;
accessibilityStoreBinding.addChangeListener(this.handleAccessibilityStoreChanged);
AccessibilityInfo.addEventListener('reduceMotionChanged', this.handleReduceMotionChanged);
const isReduceMotionEnabled2 = AccessibilityInfo.isReduceMotionEnabled();
isReduceMotionEnabled2.then(this.handleReduceMotionChanged);
AccessibilityInfo.addEventListener('reduceTransparencyChanged', this.handleReduceTransparencyChanged);
const isReduceTransparencyEnabled2 = AccessibilityInfo.isReduceTransparencyEnabled();
isReduceTransparencyEnabled2.then(this.handleReduceTransparencyChanged);
AccessibilityInfo.addEventListener('boldTextChanged', this.handleBoldTextChanged);
const isBoldTextEnabled2 = AccessibilityInfo.isBoldTextEnabled();
isBoldTextEnabled2.then(this.handleBoldTextChanged);
AccessibilityInfo.addEventListener('grayscaleChanged', this.handleGrayscaleChanged);
const isGrayscaleEnabled2 = AccessibilityInfo.isGrayscaleEnabled();
isGrayscaleEnabled2.then(this.handleGrayscaleChanged);
AccessibilityInfo.addEventListener('invertColorsChanged', this.handleInvertColorsChanged);
const isInvertColorsEnabled2 = AccessibilityInfo.isInvertColorsEnabled();
isInvertColorsEnabled2.then(this.handleInvertColorsChanged);
const handlePreferredColorSchemeChanged = this.handlePreferredColorSchemeChanged;
const object = {};
object.colorScheme = Appearance.getColorScheme();
Reflect.apply(handlePreferredColorSchemeChanged, this, [object]);
Appearance.addChangeListener(this.handlePreferredColorSchemeChanged);
AppState.addEventListener('change', this.handleAppStateChange);
const setSystemAccessibilityFeatures = AnalyticsUtils.setSystemAccessibilityFeatures;
const getActiveFeatures = this.getActiveFeatures;
Reflect.apply(setSystemAccessibilityFeatures, AnalyticsUtils, [getActiveFeatures]);
}
function handleReduceMotionChanged(a0) { // fn#99070, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13180:1380, offset: 0x021ba972, size: 74 bytes, params: 2, frame: 14
const toggleFeatureBinding = toggleFeature;
const REDUCED_MOTION = AccessibilityFeatureFlags.REDUCED_MOTION;
toggleFeatureBinding(REDUCED_MOTION, a0);
AccessibilityActionCreatorsModule.systemPrefersReducedMotionChanged(a0 ? 'reduce' : 'no-preference');
}
function handlePreferredColorSchemeChanged({colorScheme}) { // fn#99075, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13180:1764, offset: 0x021baa34, size: 154 bytes, params: 2, frame: 14
var toggleFeatureBinding;
if (colorScheme === 'dark') {
toggleFeatureBinding = toggleFeature;
toggleFeatureBinding(AccessibilityFeatureFlags.PREFERS_COLOR_SCHEME_LIGHT, false);
toggleFeatureBinding(AccessibilityFeatureFlags.PREFERS_COLOR_SCHEME_DARK, true);
} else if (colorScheme === 'light') {
toggleFeatureBinding = toggleFeature;
toggleFeatureBinding(AccessibilityFeatureFlags.PREFERS_COLOR_SCHEME_DARK, false);
toggleFeatureBinding(AccessibilityFeatureFlags.PREFERS_COLOR_SCHEME_LIGHT, true);
} else {
toggleFeatureBinding = toggleFeature;
toggleFeatureBinding(AccessibilityFeatureFlags.PREFERS_COLOR_SCHEME_DARK, false);
toggleFeatureBinding(AccessibilityFeatureFlags.PREFERS_COLOR_SCHEME_LIGHT, false);
}
}
function handleAccessibilityStoreChanged() { // fn#99076, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13180:2124, offset: 0x021baace, size: 132 bytes, params: 1, frame: 16
const toggleFeatureBinding = toggleFeature;
const REDUCED_MOTION = AccessibilityFeatureFlags.REDUCED_MOTION;
const accessibilityStoreBinding = AccessibilityStore;
const useReducedMotion = accessibilityStoreBinding.useReducedMotion;
toggleFeatureBinding(REDUCED_MOTION, useReducedMotion);
const REDUCED_MOTION_FROM_USER_SETTINGS = AccessibilityFeatureFlags.REDUCED_MOTION_FROM_USER_SETTINGS;
toggleFeatureBinding(REDUCED_MOTION_FROM_USER_SETTINGS,
accessibilityStoreBinding.rawPrefersReducedMotion !== 'auto');
const SATURATION_LEVEL_DECREASED = AccessibilityFeatureFlags.SATURATION_LEVEL_DECREASED;
toggleFeatureBinding(SATURATION_LEVEL_DECREASED, accessibilityStoreBinding.saturation < 1);
const CONTRAST_LEVEL_DECREASED = AccessibilityFeatureFlags.CONTRAST_LEVEL_DECREASED;
toggleFeatureBinding(CONTRAST_LEVEL_DECREASED, accessibilityStoreBinding.contrast < 1);
const CONTRAST_LEVEL_INCREASED = AccessibilityFeatureFlags.CONTRAST_LEVEL_INCREASED;
toggleFeatureBinding(CONTRAST_LEVEL_INCREASED, accessibilityStoreBinding.contrast > 1);
}
function handleAppStateChange(a0) { // fn#99077, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13180:2465, offset: 0x021bab52, size: 78 bytes, params: 2, frame: 13
var value;
if (a0 === 'active') {
value = AccessibilityInfo.isReduceMotionEnabled();
value.then(_fun99078);
value = AccessibilityInfo.prefersCrossFadeTransitions();
value.then(_fun99079);
}
function _fun99078(a0) { // fn#99078, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13180:2536, offset: 0x021baba0, size: 74 bytes, params: 2, frame: 14
let value = environment.__proto__;
const toggleFeatureBinding = toggleFeature;
const REDUCED_MOTION = AccessibilityFeatureFlags.REDUCED_MOTION;
toggleFeatureBinding(REDUCED_MOTION, a0);
value = require(12992) /* metro dependency 12992: AccessibilityActionCreators */;
value.systemPrefersReducedMotionChanged(a0 ? 'reduce' : 'no-preference');
}
function _fun99079(a0) { // fn#99079, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13180:2685, offset: 0x021babea, size: 61 bytes, params: 2, frame: 14
const value = environment.__proto__;
const toggleFeatureBinding = toggleFeature;
const REDUCED_MOTION_PREFERS_CROSSFADES = AccessibilityFeatureFlags.REDUCED_MOTION_PREFERS_CROSSFADES;
toggleFeatureBinding(REDUCED_MOTION_PREFERS_CROSSFADES, a0);
(AccessibilityActionCreatorsModule).systemPrefersCrossfadesChanged(a0);
}
}
}
global.__d(_fun99066, 12990, [27, 4502, 12845, 12991, 11282, 683, 12992,
2]) /* metro module 12990, dependencies: [27, 4502, 12845, 12991, 11282, 683, 12992, 2] */;