From 18f5a33c0d27c0d81ab92489a39076ee2a677525 Mon Sep 17 00:00:00 2001 From: Nicolas Gallagher Date: Thu, 29 Oct 2020 16:09:02 -0700 Subject: [PATCH] [fix] Don't require mocking window.matchMedia in jest For people who don't mock unsupported DOM APIs for jsdom in their jest setup. Fix #1789 --- .../react-native-web/src/exports/AccessibilityInfo/index.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/react-native-web/src/exports/AccessibilityInfo/index.js b/packages/react-native-web/src/exports/AccessibilityInfo/index.js index a36d63dd..ac7bb125 100644 --- a/packages/react-native-web/src/exports/AccessibilityInfo/index.js +++ b/packages/react-native-web/src/exports/AccessibilityInfo/index.js @@ -16,8 +16,9 @@ function isScreenReaderEnabled(): Promise<*> { } const prefersReducedMotionMedia = canUseDOM - ? window.matchMedia('(prefers-reduced-motion: reduce)') + ? typeof window.matchMedia === 'function' && window.matchMedia('(prefers-reduced-motion: reduce)') : null; + function isReduceMotionEnabled(): Promise<*> { return new Promise((resolve, reject) => { resolve(prefersReducedMotionMedia ? prefersReducedMotionMedia.matches : true);