stream-chat-react-native-core 9.3.1-beta.8 → 9.3.1-beta.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/lib/commonjs/a11y/hooks/useAccessibilityServiceEnabled.js +43 -0
  2. package/lib/commonjs/a11y/hooks/useAccessibilityServiceEnabled.js.map +1 -0
  3. package/lib/commonjs/a11y/index.js +11 -0
  4. package/lib/commonjs/a11y/index.js.map +1 -1
  5. package/lib/commonjs/components/Accessibility/OverlayA11yShield.js +14 -6
  6. package/lib/commonjs/components/Accessibility/OverlayA11yShield.js.map +1 -1
  7. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js +2 -2
  8. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
  9. package/lib/commonjs/version.json +1 -1
  10. package/lib/module/a11y/hooks/useAccessibilityServiceEnabled.js +43 -0
  11. package/lib/module/a11y/hooks/useAccessibilityServiceEnabled.js.map +1 -0
  12. package/lib/module/a11y/index.js +11 -0
  13. package/lib/module/a11y/index.js.map +1 -1
  14. package/lib/module/components/Accessibility/OverlayA11yShield.js +14 -6
  15. package/lib/module/components/Accessibility/OverlayA11yShield.js.map +1 -1
  16. package/lib/module/contexts/overlayContext/OverlayProvider.js +2 -2
  17. package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
  18. package/lib/module/version.json +1 -1
  19. package/lib/typescript/a11y/hooks/useAccessibilityServiceEnabled.d.ts +20 -0
  20. package/lib/typescript/a11y/hooks/useAccessibilityServiceEnabled.d.ts.map +1 -0
  21. package/lib/typescript/a11y/index.d.ts +1 -0
  22. package/lib/typescript/a11y/index.d.ts.map +1 -1
  23. package/lib/typescript/components/Accessibility/OverlayA11yShield.d.ts.map +1 -1
  24. package/lib/typescript/contexts/overlayContext/OverlayProvider.d.ts.map +1 -1
  25. package/package.json +1 -1
  26. package/src/a11y/hooks/useAccessibilityServiceEnabled.ts +66 -0
  27. package/src/a11y/index.ts +1 -0
  28. package/src/components/Accessibility/OverlayA11yShield.tsx +14 -6
  29. package/src/components/Accessibility/__tests__/OverlayA11yShield.test.tsx +57 -22
  30. package/src/contexts/overlayContext/OverlayProvider.tsx +5 -1
  31. package/src/version.json +1 -1
@@ -0,0 +1,43 @@
1
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.useAccessibilityServiceEnabled = void 0;
6
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
7
+ var _react = require("react");
8
+ var _reactNative = require("react-native");
9
+ var _AccessibilityContext = require("../../contexts/accessibilityContext/AccessibilityContext");
10
+ var useAccessibilityServiceEnabled = () => {
11
+ var _useAccessibilityCont = (0, _AccessibilityContext.useAccessibilityContext)(),
12
+ enabled = _useAccessibilityCont.enabled;
13
+ var _useState = (0, _react.useState)(false),
14
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
15
+ isEnabled = _useState2[0],
16
+ setIsEnabled = _useState2[1];
17
+ (0, _react.useEffect)(() => {
18
+ if (_reactNative.Platform.OS !== 'android' || !enabled) {
19
+ setIsEnabled(false);
20
+ return;
21
+ }
22
+ var cancelled = false;
23
+ var refresh = () => {
24
+ _reactNative.AccessibilityInfo.isAccessibilityServiceEnabled?.().then(value => {
25
+ if (!cancelled) setIsEnabled(value);
26
+ }).catch(() => {});
27
+ };
28
+ refresh();
29
+ var screenReaderSubscription = _reactNative.AccessibilityInfo.addEventListener('screenReaderChanged', refresh);
30
+ var appStateSubscription = _reactNative.AppState.addEventListener('change', state => {
31
+ if (state === 'active') refresh();
32
+ });
33
+ return () => {
34
+ cancelled = true;
35
+ screenReaderSubscription?.remove?.();
36
+ appStateSubscription?.remove?.();
37
+ };
38
+ }, [enabled]);
39
+ if (_reactNative.Platform.OS !== 'android' || !enabled) return false;
40
+ return isEnabled;
41
+ };
42
+ exports.useAccessibilityServiceEnabled = useAccessibilityServiceEnabled;
43
+ //# sourceMappingURL=useAccessibilityServiceEnabled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNative","_AccessibilityContext","useAccessibilityServiceEnabled","_useAccessibilityCont","useAccessibilityContext","enabled","_useState","useState","_useState2","_slicedToArray2","default","isEnabled","setIsEnabled","useEffect","Platform","OS","cancelled","refresh","AccessibilityInfo","isAccessibilityServiceEnabled","then","value","catch","screenReaderSubscription","addEventListener","appStateSubscription","AppState","state","remove","exports"],"sourceRoot":"../../../../src","sources":["a11y/hooks/useAccessibilityServiceEnabled.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,qBAAA,GAAAF,OAAA;AAoBO,IAAMG,8BAA8B,GAAGA,CAAA,KAAe;EAC3D,IAAAC,qBAAA,GAAoB,IAAAC,6CAAuB,EAAC,CAAC;IAArCC,OAAO,GAAAF,qBAAA,CAAPE,OAAO;EACf,IAAAC,SAAA,GAAkC,IAAAC,eAAQ,EAAU,KAAK,CAAC;IAAAC,UAAA,OAAAC,eAAA,CAAAC,OAAA,EAAAJ,SAAA;IAAnDK,SAAS,GAAAH,UAAA;IAAEI,YAAY,GAAAJ,UAAA;EAE9B,IAAAK,gBAAS,EAAC,MAAM;IACd,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI,CAACV,OAAO,EAAE;MACzCO,YAAY,CAAC,KAAK,CAAC;MACnB;IACF;IAEA,IAAII,SAAS,GAAG,KAAK;IAErB,IAAMC,OAAO,GAAGA,CAAA,KAAM;MACpBC,8BAAiB,CAACC,6BAA6B,GAAG,CAAC,CAChDC,IAAI,CAAEC,KAAK,IAAK;QACf,IAAI,CAACL,SAAS,EAAEJ,YAAY,CAACS,KAAK,CAAC;MACrC,CAAC,CAAC,CACDC,KAAK,CAAC,MAAM,CAEb,CAAC,CAAC;IACN,CAAC;IAEDL,OAAO,CAAC,CAAC;IAET,IAAMM,wBAAwB,GAAGL,8BAAiB,CAACM,gBAAgB,CACjE,qBAAqB,EACrBP,OACF,CAAC;IAED,IAAMQ,oBAAoB,GAAGC,qBAAQ,CAACF,gBAAgB,CAAC,QAAQ,EAAGG,KAAK,IAAK;MAC1E,IAAIA,KAAK,KAAK,QAAQ,EAAEV,OAAO,CAAC,CAAC;IACnC,CAAC,CAAC;IAEF,OAAO,MAAM;MACXD,SAAS,GAAG,IAAI;MAChBO,wBAAwB,EAAEK,MAAM,GAAG,CAAC;MACpCH,oBAAoB,EAAEG,MAAM,GAAG,CAAC;IAClC,CAAC;EACH,CAAC,EAAE,CAACvB,OAAO,CAAC,CAAC;EAEb,IAAIS,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI,CAACV,OAAO,EAAE,OAAO,KAAK;EACvD,OAAOM,SAAS;AAClB,CAAC;AAACkB,OAAA,CAAA3B,8BAAA,GAAAA,8BAAA","ignoreList":[]}
@@ -23,6 +23,17 @@ Object.keys(_useScreenReaderEnabled).forEach(function (key) {
23
23
  }
24
24
  });
25
25
  });
26
+ var _useAccessibilityServiceEnabled = require("./hooks/useAccessibilityServiceEnabled");
27
+ Object.keys(_useAccessibilityServiceEnabled).forEach(function (key) {
28
+ if (key === "default" || key === "__esModule") return;
29
+ if (key in exports && exports[key] === _useAccessibilityServiceEnabled[key]) return;
30
+ Object.defineProperty(exports, key, {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _useAccessibilityServiceEnabled[key];
34
+ }
35
+ });
36
+ });
26
37
  var _useReducedMotionPreference = require("./hooks/useReducedMotionPreference");
27
38
  Object.keys(_useReducedMotionPreference).forEach(function (key) {
28
39
  if (key === "default" || key === "__esModule") return;
@@ -1 +1 @@
1
- {"version":3,"names":["_a11yUtils","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_useScreenReaderEnabled","_useReducedMotionPreference","_useResolvedModalAccessibilityProps","_useAnnounceOnStateChange","_useAnnounceOnShow","_useA11yLabel","_useAccessibilityActivateAction"],"sourceRoot":"../../../src","sources":["a11y/index.ts"],"mappings":";;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,UAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,UAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,UAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,uBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,uBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,uBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,uBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,2BAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,2BAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,2BAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,2BAAA,CAAAN,GAAA;IAAA;EAAA;AAAA;AACA,IAAAO,mCAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,mCAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,mCAAA,CAAAP,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,mCAAA,CAAAP,GAAA;IAAA;EAAA;AAAA;AACA,IAAAQ,yBAAA,GAAAZ,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAU,yBAAA,EAAAT,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAQ,yBAAA,CAAAR,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAI,yBAAA,CAAAR,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,kBAAA,GAAAb,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAW,kBAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAS,kBAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAK,kBAAA,CAAAT,GAAA;IAAA;EAAA;AAAA;AACA,IAAAU,aAAA,GAAAd,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAY,aAAA,EAAAX,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAU,aAAA,CAAAV,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAM,aAAA,CAAAV,GAAA;IAAA;EAAA;AAAA;AACA,IAAAW,+BAAA,GAAAf,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAa,+BAAA,EAAAZ,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAW,+BAAA,CAAAX,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAO,+BAAA,CAAAX,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["_a11yUtils","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_useScreenReaderEnabled","_useAccessibilityServiceEnabled","_useReducedMotionPreference","_useResolvedModalAccessibilityProps","_useAnnounceOnStateChange","_useAnnounceOnShow","_useA11yLabel","_useAccessibilityActivateAction"],"sourceRoot":"../../../src","sources":["a11y/index.ts"],"mappings":"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","ignoreList":[]}
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  exports.OverlayA11yShield = OverlayA11yShield;
6
6
  var _react = _interopRequireDefault(require("react"));
7
7
  var _reactNative = require("react-native");
8
+ var _a11y = require("../../a11y");
9
+ var _AccessibilityContext = require("../../contexts/accessibilityContext/AccessibilityContext");
8
10
  var _OverlayContext = require("../../contexts/overlayContext/OverlayContext");
9
11
  var _hooks = require("../../hooks");
10
12
  var _messageOverlayStore = require("../../state-store/message-overlay-store");
@@ -13,23 +15,29 @@ var _jsxFileName = "/home/runner/work/stream-chat-react-native/stream-chat-react
13
15
  var messageOverlayActiveSelector = state => ({
14
16
  isMessageOverlayActive: state.id !== undefined
15
17
  });
16
- function OverlayA11yShield({
17
- children
18
- }) {
18
+ var useShouldActivateTrap = () => {
19
+ var _useAccessibilityCont = (0, _AccessibilityContext.useAccessibilityContext)(),
20
+ a11yEnabled = _useAccessibilityCont.enabled;
19
21
  var _useOverlayContext = (0, _OverlayContext.useOverlayContext)(),
20
22
  overlay = _useOverlayContext.overlay;
21
23
  var _useStateStore = (0, _hooks.useStateStore)(_messageOverlayStore.overlayStore, messageOverlayActiveSelector),
22
24
  isMessageOverlayActive = _useStateStore.isMessageOverlayActive;
25
+ var a11yServiceEnabled = (0, _a11y.useAccessibilityServiceEnabled)();
26
+ return a11yEnabled && (overlay === 'gallery' || isMessageOverlayActive) && a11yServiceEnabled;
27
+ };
28
+ function OverlayA11yShield({
29
+ children
30
+ }) {
31
+ var shouldActivateTrap = useShouldActivateTrap();
23
32
  if (_reactNative.Platform.OS !== 'android') {
24
33
  return (0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
25
34
  children: children
26
35
  });
27
36
  }
28
- var isAnyOverlayActive = overlay === 'gallery' || isMessageOverlayActive;
29
37
  return (0, _jsxRuntime.jsx)(_reactNative.View, {
30
- accessibilityElementsHidden: isAnyOverlayActive,
31
- importantForAccessibility: isAnyOverlayActive ? 'no-hide-descendants' : 'auto',
38
+ importantForAccessibility: shouldActivateTrap ? 'no-hide-descendants' : undefined,
32
39
  style: _reactNative.StyleSheet.absoluteFill,
40
+ pointerEvents: "box-none",
33
41
  testID: "overlay-a11y-shield",
34
42
  children: children
35
43
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_OverlayContext","_hooks","_messageOverlayStore","_jsxRuntime","_jsxFileName","messageOverlayActiveSelector","state","isMessageOverlayActive","id","undefined","OverlayA11yShield","children","_useOverlayContext","useOverlayContext","overlay","_useStateStore","useStateStore","overlayStore","Platform","OS","jsx","Fragment","isAnyOverlayActive","View","accessibilityElementsHidden","importantForAccessibility","style","StyleSheet","absoluteFill","testID"],"sourceRoot":"../../../../src","sources":["components/Accessibility/OverlayA11yShield.tsx"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,eAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,oBAAA,GAAAJ,OAAA;AAAuE,IAAAK,WAAA,GAAAL,OAAA;AAAA,IAAAM,YAAA;AAEvE,IAAMC,4BAA4B,GAAIC,KAAiC,KAAM;EAC3EC,sBAAsB,EAAED,KAAK,CAACE,EAAE,KAAKC;AACvC,CAAC,CAAC;AAmBK,SAASC,iBAAiBA,CAAC;EAAEC;AAA4B,CAAC,EAAE;EACjE,IAAAC,kBAAA,GAAoB,IAAAC,iCAAiB,EAAC,CAAC;IAA/BC,OAAO,GAAAF,kBAAA,CAAPE,OAAO;EACf,IAAAC,cAAA,GAAmC,IAAAC,oBAAa,EAACC,iCAAY,EAAEZ,4BAA4B,CAAC;IAApFE,sBAAsB,GAAAQ,cAAA,CAAtBR,sBAAsB;EAE9B,IAAIW,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;IAC7B,OAAO,IAAAhB,WAAA,CAAAiB,GAAA,EAAAjB,WAAA,CAAAkB,QAAA;MAAAV,QAAA,EAAGA;IAAQ,CAAG,CAAC;EACxB;EAEA,IAAMW,kBAAkB,GAAGR,OAAO,KAAK,SAAS,IAAIP,sBAAsB;EAE1E,OACE,IAAAJ,WAAA,CAAAiB,GAAA,EAACrB,YAAA,CAAAwB,IAAI;IACHC,2BAA2B,EAAEF,kBAAmB;IAChDG,yBAAyB,EAAEH,kBAAkB,GAAG,qBAAqB,GAAG,MAAO;IAC/EI,KAAK,EAAEC,uBAAU,CAACC,YAAa;IAC/BC,MAAM,EAAC,qBAAqB;IAAAlB,QAAA,EAE3BA;EAAQ,CACL,CAAC;AAEX","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_a11y","_AccessibilityContext","_OverlayContext","_hooks","_messageOverlayStore","_jsxRuntime","_jsxFileName","messageOverlayActiveSelector","state","isMessageOverlayActive","id","undefined","useShouldActivateTrap","_useAccessibilityCont","useAccessibilityContext","a11yEnabled","enabled","_useOverlayContext","useOverlayContext","overlay","_useStateStore","useStateStore","overlayStore","a11yServiceEnabled","useAccessibilityServiceEnabled","OverlayA11yShield","children","shouldActivateTrap","Platform","OS","jsx","Fragment","View","importantForAccessibility","style","StyleSheet","absoluteFill","pointerEvents","testID"],"sourceRoot":"../../../../src","sources":["components/Accessibility/OverlayA11yShield.tsx"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,qBAAA,GAAAH,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,oBAAA,GAAAN,OAAA;AAAuE,IAAAO,WAAA,GAAAP,OAAA;AAAA,IAAAQ,YAAA;AAEvE,IAAMC,4BAA4B,GAAIC,KAAiC,KAAM;EAC3EC,sBAAsB,EAAED,KAAK,CAACE,EAAE,KAAKC;AACvC,CAAC,CAAC;AAEF,IAAMC,qBAAqB,GAAGA,CAAA,KAAe;EAC3C,IAAAC,qBAAA,GAAiC,IAAAC,6CAAuB,EAAC,CAAC;IAAzCC,WAAW,GAAAF,qBAAA,CAApBG,OAAO;EACf,IAAAC,kBAAA,GAAoB,IAAAC,iCAAiB,EAAC,CAAC;IAA/BC,OAAO,GAAAF,kBAAA,CAAPE,OAAO;EACf,IAAAC,cAAA,GAAmC,IAAAC,oBAAa,EAACC,iCAAY,EAAEf,4BAA4B,CAAC;IAApFE,sBAAsB,GAAAW,cAAA,CAAtBX,sBAAsB;EAC9B,IAAMc,kBAAkB,GAAG,IAAAC,oCAA8B,EAAC,CAAC;EAE3D,OAAOT,WAAW,KAAKI,OAAO,KAAK,SAAS,IAAIV,sBAAsB,CAAC,IAAIc,kBAAkB;AAC/F,CAAC;AAmBM,SAASE,iBAAiBA,CAAC;EAAEC;AAA4B,CAAC,EAAE;EACjE,IAAMC,kBAAkB,GAAGf,qBAAqB,CAAC,CAAC;EAElD,IAAIgB,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;IAC7B,OAAO,IAAAxB,WAAA,CAAAyB,GAAA,EAAAzB,WAAA,CAAA0B,QAAA;MAAAL,QAAA,EAAGA;IAAQ,CAAG,CAAC;EACxB;EAEA,OACE,IAAArB,WAAA,CAAAyB,GAAA,EAAC/B,YAAA,CAAAiC,IAAI;IACHC,yBAAyB,EAAEN,kBAAkB,GAAG,qBAAqB,GAAGhB,SAAU;IAClFuB,KAAK,EAAEC,uBAAU,CAACC,YAAa;IAC/BC,aAAa,EAAC,UAAU;IACxBC,MAAM,EAAC,qBAAqB;IAAAZ,QAAA,EAE3BA;EAAQ,CACL,CAAC;AAEX","ignoreList":[]}
@@ -78,9 +78,9 @@ var OverlayProvider = props => {
78
78
  children: (0, _jsxRuntime.jsx)(_ThemeContext.ThemeProvider, {
79
79
  style: overlayContext.style,
80
80
  children: (0, _jsxRuntime.jsxs)(_reactNativeTeleport.PortalProvider, {
81
- children: [(0, _jsxRuntime.jsx)(_OverlayA11yShield.OverlayA11yShield, {
81
+ children: [accessibility?.enabled ? (0, _jsxRuntime.jsx)(_OverlayA11yShield.OverlayA11yShield, {
82
82
  children: children
83
- }), overlay === 'gallery' && (0, _jsxRuntime.jsx)(_ImageGallery.ImageGallery, {
83
+ }) : children, overlay === 'gallery' && (0, _jsxRuntime.jsx)(_ImageGallery.ImageGallery, {
84
84
  overlayOpacity: overlayOpacity
85
85
  }), (0, _jsxRuntime.jsx)(_MessageOverlayHostLayer.MessageOverlayHostLayer, {})]
86
86
  })
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_reactNativeTeleport","_MessageOverlayHostLayer","_OverlayContext","_OverlayA11yShield","_ImageGallery","_useStreami18n","_AccessibilityContext","_ImageGalleryContext","_ThemeContext","_TranslationContext","_jsxRuntime","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OverlayProvider","props","accessibility","autoPlayVideo","children","giphyVersion","i18nInstance","numberOfImageGalleryGridColumns","value","_useState","useState","overlay","_useState2","_slicedToArray2","setOverlay","overlayOpacity","useSharedValue","translators","useStreami18n","useEffect","backAction","backHandler","BackHandler","addEventListener","remove","cancelAnimation","withTiming","overlayContext","style","imageGalleryProviderProps","useMemo","jsx","TranslationProvider","userLanguage","DEFAULT_USER_LANGUAGE","AccessibilityProvider","OverlayContext","Provider","ImageGalleryProvider","ThemeProvider","jsxs","PortalProvider","OverlayA11yShield","ImageGallery","MessageOverlayHostLayer","exports"],"sourceRoot":"../../../../src","sources":["contexts/overlayContext/OverlayProvider.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_reactNativeTeleport","_MessageOverlayHostLayer","_OverlayContext","_OverlayA11yShield","_ImageGallery","_useStreami18n","_AccessibilityContext","_ImageGalleryContext","_ThemeContext","_TranslationContext","_jsxRuntime","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OverlayProvider","props","accessibility","autoPlayVideo","children","giphyVersion","i18nInstance","numberOfImageGalleryGridColumns","value","_useState","useState","overlay","_useState2","_slicedToArray2","setOverlay","overlayOpacity","useSharedValue","translators","useStreami18n","useEffect","backAction","backHandler","BackHandler","addEventListener","remove","cancelAnimation","withTiming","overlayContext","style","imageGalleryProviderProps","useMemo","jsx","TranslationProvider","userLanguage","DEFAULT_USER_LANGUAGE","AccessibilityProvider","OverlayContext","Provider","ImageGalleryProvider","ThemeProvider","jsxs","PortalProvider","enabled","OverlayA11yShield","ImageGallery","MessageOverlayHostLayer","exports"],"sourceRoot":"../../../../src","sources":["contexts/overlayContext/OverlayProvider.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "9.3.1-beta.8"
2
+ "version": "9.3.1-beta.9"
3
3
  }
@@ -0,0 +1,43 @@
1
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.useAccessibilityServiceEnabled = void 0;
6
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
7
+ var _react = require("react");
8
+ var _reactNative = require("react-native");
9
+ var _AccessibilityContext = require("../../contexts/accessibilityContext/AccessibilityContext");
10
+ var useAccessibilityServiceEnabled = () => {
11
+ var _useAccessibilityCont = (0, _AccessibilityContext.useAccessibilityContext)(),
12
+ enabled = _useAccessibilityCont.enabled;
13
+ var _useState = (0, _react.useState)(false),
14
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
15
+ isEnabled = _useState2[0],
16
+ setIsEnabled = _useState2[1];
17
+ (0, _react.useEffect)(() => {
18
+ if (_reactNative.Platform.OS !== 'android' || !enabled) {
19
+ setIsEnabled(false);
20
+ return;
21
+ }
22
+ var cancelled = false;
23
+ var refresh = () => {
24
+ _reactNative.AccessibilityInfo.isAccessibilityServiceEnabled?.().then(value => {
25
+ if (!cancelled) setIsEnabled(value);
26
+ }).catch(() => {});
27
+ };
28
+ refresh();
29
+ var screenReaderSubscription = _reactNative.AccessibilityInfo.addEventListener('screenReaderChanged', refresh);
30
+ var appStateSubscription = _reactNative.AppState.addEventListener('change', state => {
31
+ if (state === 'active') refresh();
32
+ });
33
+ return () => {
34
+ cancelled = true;
35
+ screenReaderSubscription?.remove?.();
36
+ appStateSubscription?.remove?.();
37
+ };
38
+ }, [enabled]);
39
+ if (_reactNative.Platform.OS !== 'android' || !enabled) return false;
40
+ return isEnabled;
41
+ };
42
+ exports.useAccessibilityServiceEnabled = useAccessibilityServiceEnabled;
43
+ //# sourceMappingURL=useAccessibilityServiceEnabled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNative","_AccessibilityContext","useAccessibilityServiceEnabled","_useAccessibilityCont","useAccessibilityContext","enabled","_useState","useState","_useState2","_slicedToArray2","default","isEnabled","setIsEnabled","useEffect","Platform","OS","cancelled","refresh","AccessibilityInfo","isAccessibilityServiceEnabled","then","value","catch","screenReaderSubscription","addEventListener","appStateSubscription","AppState","state","remove","exports"],"sourceRoot":"../../../../src","sources":["a11y/hooks/useAccessibilityServiceEnabled.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,qBAAA,GAAAF,OAAA;AAoBO,IAAMG,8BAA8B,GAAGA,CAAA,KAAe;EAC3D,IAAAC,qBAAA,GAAoB,IAAAC,6CAAuB,EAAC,CAAC;IAArCC,OAAO,GAAAF,qBAAA,CAAPE,OAAO;EACf,IAAAC,SAAA,GAAkC,IAAAC,eAAQ,EAAU,KAAK,CAAC;IAAAC,UAAA,OAAAC,eAAA,CAAAC,OAAA,EAAAJ,SAAA;IAAnDK,SAAS,GAAAH,UAAA;IAAEI,YAAY,GAAAJ,UAAA;EAE9B,IAAAK,gBAAS,EAAC,MAAM;IACd,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI,CAACV,OAAO,EAAE;MACzCO,YAAY,CAAC,KAAK,CAAC;MACnB;IACF;IAEA,IAAII,SAAS,GAAG,KAAK;IAErB,IAAMC,OAAO,GAAGA,CAAA,KAAM;MACpBC,8BAAiB,CAACC,6BAA6B,GAAG,CAAC,CAChDC,IAAI,CAAEC,KAAK,IAAK;QACf,IAAI,CAACL,SAAS,EAAEJ,YAAY,CAACS,KAAK,CAAC;MACrC,CAAC,CAAC,CACDC,KAAK,CAAC,MAAM,CAEb,CAAC,CAAC;IACN,CAAC;IAEDL,OAAO,CAAC,CAAC;IAET,IAAMM,wBAAwB,GAAGL,8BAAiB,CAACM,gBAAgB,CACjE,qBAAqB,EACrBP,OACF,CAAC;IAED,IAAMQ,oBAAoB,GAAGC,qBAAQ,CAACF,gBAAgB,CAAC,QAAQ,EAAGG,KAAK,IAAK;MAC1E,IAAIA,KAAK,KAAK,QAAQ,EAAEV,OAAO,CAAC,CAAC;IACnC,CAAC,CAAC;IAEF,OAAO,MAAM;MACXD,SAAS,GAAG,IAAI;MAChBO,wBAAwB,EAAEK,MAAM,GAAG,CAAC;MACpCH,oBAAoB,EAAEG,MAAM,GAAG,CAAC;IAClC,CAAC;EACH,CAAC,EAAE,CAACvB,OAAO,CAAC,CAAC;EAEb,IAAIS,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI,CAACV,OAAO,EAAE,OAAO,KAAK;EACvD,OAAOM,SAAS;AAClB,CAAC;AAACkB,OAAA,CAAA3B,8BAAA,GAAAA,8BAAA","ignoreList":[]}
@@ -23,6 +23,17 @@ Object.keys(_useScreenReaderEnabled).forEach(function (key) {
23
23
  }
24
24
  });
25
25
  });
26
+ var _useAccessibilityServiceEnabled = require("./hooks/useAccessibilityServiceEnabled");
27
+ Object.keys(_useAccessibilityServiceEnabled).forEach(function (key) {
28
+ if (key === "default" || key === "__esModule") return;
29
+ if (key in exports && exports[key] === _useAccessibilityServiceEnabled[key]) return;
30
+ Object.defineProperty(exports, key, {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _useAccessibilityServiceEnabled[key];
34
+ }
35
+ });
36
+ });
26
37
  var _useReducedMotionPreference = require("./hooks/useReducedMotionPreference");
27
38
  Object.keys(_useReducedMotionPreference).forEach(function (key) {
28
39
  if (key === "default" || key === "__esModule") return;
@@ -1 +1 @@
1
- {"version":3,"names":["_a11yUtils","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_useScreenReaderEnabled","_useReducedMotionPreference","_useResolvedModalAccessibilityProps","_useAnnounceOnStateChange","_useAnnounceOnShow","_useA11yLabel","_useAccessibilityActivateAction"],"sourceRoot":"../../../src","sources":["a11y/index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_a11yUtils","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_useScreenReaderEnabled","_useAccessibilityServiceEnabled","_useReducedMotionPreference","_useResolvedModalAccessibilityProps","_useAnnounceOnStateChange","_useAnnounceOnShow","_useA11yLabel","_useAccessibilityActivateAction"],"sourceRoot":"../../../src","sources":["a11y/index.ts"],"mappings":";;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,UAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,UAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,UAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,uBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,uBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,uBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,uBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,+BAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,+BAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,+BAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,+BAAA,CAAAN,GAAA;IAAA;EAAA;AAAA;AACA,IAAAO,2BAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,2BAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,2BAAA,CAAAP,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,2BAAA,CAAAP,GAAA;IAAA;EAAA;AAAA;AACA,IAAAQ,mCAAA,GAAAZ,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAU,mCAAA,EAAAT,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAQ,mCAAA,CAAAR,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAI,mCAAA,CAAAR,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,yBAAA,GAAAb,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAW,yBAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAS,yBAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAK,yBAAA,CAAAT,GAAA;IAAA;EAAA;AAAA;AACA,IAAAU,kBAAA,GAAAd,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAY,kBAAA,EAAAX,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAU,kBAAA,CAAAV,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAM,kBAAA,CAAAV,GAAA;IAAA;EAAA;AAAA;AACA,IAAAW,aAAA,GAAAf,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAa,aAAA,EAAAZ,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAW,aAAA,CAAAX,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAO,aAAA,CAAAX,GAAA;IAAA;EAAA;AAAA;AACA,IAAAY,+BAAA,GAAAhB,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAc,+BAAA,EAAAb,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAY,+BAAA,CAAAZ,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAQ,+BAAA,CAAAZ,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  exports.OverlayA11yShield = OverlayA11yShield;
6
6
  var _react = _interopRequireDefault(require("react"));
7
7
  var _reactNative = require("react-native");
8
+ var _a11y = require("../../a11y");
9
+ var _AccessibilityContext = require("../../contexts/accessibilityContext/AccessibilityContext");
8
10
  var _OverlayContext = require("../../contexts/overlayContext/OverlayContext");
9
11
  var _hooks = require("../../hooks");
10
12
  var _messageOverlayStore = require("../../state-store/message-overlay-store");
@@ -13,23 +15,29 @@ var _jsxFileName = "/home/runner/work/stream-chat-react-native/stream-chat-react
13
15
  var messageOverlayActiveSelector = state => ({
14
16
  isMessageOverlayActive: state.id !== undefined
15
17
  });
16
- function OverlayA11yShield({
17
- children
18
- }) {
18
+ var useShouldActivateTrap = () => {
19
+ var _useAccessibilityCont = (0, _AccessibilityContext.useAccessibilityContext)(),
20
+ a11yEnabled = _useAccessibilityCont.enabled;
19
21
  var _useOverlayContext = (0, _OverlayContext.useOverlayContext)(),
20
22
  overlay = _useOverlayContext.overlay;
21
23
  var _useStateStore = (0, _hooks.useStateStore)(_messageOverlayStore.overlayStore, messageOverlayActiveSelector),
22
24
  isMessageOverlayActive = _useStateStore.isMessageOverlayActive;
25
+ var a11yServiceEnabled = (0, _a11y.useAccessibilityServiceEnabled)();
26
+ return a11yEnabled && (overlay === 'gallery' || isMessageOverlayActive) && a11yServiceEnabled;
27
+ };
28
+ function OverlayA11yShield({
29
+ children
30
+ }) {
31
+ var shouldActivateTrap = useShouldActivateTrap();
23
32
  if (_reactNative.Platform.OS !== 'android') {
24
33
  return (0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
25
34
  children: children
26
35
  });
27
36
  }
28
- var isAnyOverlayActive = overlay === 'gallery' || isMessageOverlayActive;
29
37
  return (0, _jsxRuntime.jsx)(_reactNative.View, {
30
- accessibilityElementsHidden: isAnyOverlayActive,
31
- importantForAccessibility: isAnyOverlayActive ? 'no-hide-descendants' : 'auto',
38
+ importantForAccessibility: shouldActivateTrap ? 'no-hide-descendants' : undefined,
32
39
  style: _reactNative.StyleSheet.absoluteFill,
40
+ pointerEvents: "box-none",
33
41
  testID: "overlay-a11y-shield",
34
42
  children: children
35
43
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_OverlayContext","_hooks","_messageOverlayStore","_jsxRuntime","_jsxFileName","messageOverlayActiveSelector","state","isMessageOverlayActive","id","undefined","OverlayA11yShield","children","_useOverlayContext","useOverlayContext","overlay","_useStateStore","useStateStore","overlayStore","Platform","OS","jsx","Fragment","isAnyOverlayActive","View","accessibilityElementsHidden","importantForAccessibility","style","StyleSheet","absoluteFill","testID"],"sourceRoot":"../../../../src","sources":["components/Accessibility/OverlayA11yShield.tsx"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,eAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,oBAAA,GAAAJ,OAAA;AAAuE,IAAAK,WAAA,GAAAL,OAAA;AAAA,IAAAM,YAAA;AAEvE,IAAMC,4BAA4B,GAAIC,KAAiC,KAAM;EAC3EC,sBAAsB,EAAED,KAAK,CAACE,EAAE,KAAKC;AACvC,CAAC,CAAC;AAmBK,SAASC,iBAAiBA,CAAC;EAAEC;AAA4B,CAAC,EAAE;EACjE,IAAAC,kBAAA,GAAoB,IAAAC,iCAAiB,EAAC,CAAC;IAA/BC,OAAO,GAAAF,kBAAA,CAAPE,OAAO;EACf,IAAAC,cAAA,GAAmC,IAAAC,oBAAa,EAACC,iCAAY,EAAEZ,4BAA4B,CAAC;IAApFE,sBAAsB,GAAAQ,cAAA,CAAtBR,sBAAsB;EAE9B,IAAIW,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;IAC7B,OAAO,IAAAhB,WAAA,CAAAiB,GAAA,EAAAjB,WAAA,CAAAkB,QAAA;MAAAV,QAAA,EAAGA;IAAQ,CAAG,CAAC;EACxB;EAEA,IAAMW,kBAAkB,GAAGR,OAAO,KAAK,SAAS,IAAIP,sBAAsB;EAE1E,OACE,IAAAJ,WAAA,CAAAiB,GAAA,EAACrB,YAAA,CAAAwB,IAAI;IACHC,2BAA2B,EAAEF,kBAAmB;IAChDG,yBAAyB,EAAEH,kBAAkB,GAAG,qBAAqB,GAAG,MAAO;IAC/EI,KAAK,EAAEC,uBAAU,CAACC,YAAa;IAC/BC,MAAM,EAAC,qBAAqB;IAAAlB,QAAA,EAE3BA;EAAQ,CACL,CAAC;AAEX","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_a11y","_AccessibilityContext","_OverlayContext","_hooks","_messageOverlayStore","_jsxRuntime","_jsxFileName","messageOverlayActiveSelector","state","isMessageOverlayActive","id","undefined","useShouldActivateTrap","_useAccessibilityCont","useAccessibilityContext","a11yEnabled","enabled","_useOverlayContext","useOverlayContext","overlay","_useStateStore","useStateStore","overlayStore","a11yServiceEnabled","useAccessibilityServiceEnabled","OverlayA11yShield","children","shouldActivateTrap","Platform","OS","jsx","Fragment","View","importantForAccessibility","style","StyleSheet","absoluteFill","pointerEvents","testID"],"sourceRoot":"../../../../src","sources":["components/Accessibility/OverlayA11yShield.tsx"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,qBAAA,GAAAH,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,oBAAA,GAAAN,OAAA;AAAuE,IAAAO,WAAA,GAAAP,OAAA;AAAA,IAAAQ,YAAA;AAEvE,IAAMC,4BAA4B,GAAIC,KAAiC,KAAM;EAC3EC,sBAAsB,EAAED,KAAK,CAACE,EAAE,KAAKC;AACvC,CAAC,CAAC;AAEF,IAAMC,qBAAqB,GAAGA,CAAA,KAAe;EAC3C,IAAAC,qBAAA,GAAiC,IAAAC,6CAAuB,EAAC,CAAC;IAAzCC,WAAW,GAAAF,qBAAA,CAApBG,OAAO;EACf,IAAAC,kBAAA,GAAoB,IAAAC,iCAAiB,EAAC,CAAC;IAA/BC,OAAO,GAAAF,kBAAA,CAAPE,OAAO;EACf,IAAAC,cAAA,GAAmC,IAAAC,oBAAa,EAACC,iCAAY,EAAEf,4BAA4B,CAAC;IAApFE,sBAAsB,GAAAW,cAAA,CAAtBX,sBAAsB;EAC9B,IAAMc,kBAAkB,GAAG,IAAAC,oCAA8B,EAAC,CAAC;EAE3D,OAAOT,WAAW,KAAKI,OAAO,KAAK,SAAS,IAAIV,sBAAsB,CAAC,IAAIc,kBAAkB;AAC/F,CAAC;AAmBM,SAASE,iBAAiBA,CAAC;EAAEC;AAA4B,CAAC,EAAE;EACjE,IAAMC,kBAAkB,GAAGf,qBAAqB,CAAC,CAAC;EAElD,IAAIgB,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;IAC7B,OAAO,IAAAxB,WAAA,CAAAyB,GAAA,EAAAzB,WAAA,CAAA0B,QAAA;MAAAL,QAAA,EAAGA;IAAQ,CAAG,CAAC;EACxB;EAEA,OACE,IAAArB,WAAA,CAAAyB,GAAA,EAAC/B,YAAA,CAAAiC,IAAI;IACHC,yBAAyB,EAAEN,kBAAkB,GAAG,qBAAqB,GAAGhB,SAAU;IAClFuB,KAAK,EAAEC,uBAAU,CAACC,YAAa;IAC/BC,aAAa,EAAC,UAAU;IACxBC,MAAM,EAAC,qBAAqB;IAAAZ,QAAA,EAE3BA;EAAQ,CACL,CAAC;AAEX","ignoreList":[]}
@@ -78,9 +78,9 @@ var OverlayProvider = props => {
78
78
  children: (0, _jsxRuntime.jsx)(_ThemeContext.ThemeProvider, {
79
79
  style: overlayContext.style,
80
80
  children: (0, _jsxRuntime.jsxs)(_reactNativeTeleport.PortalProvider, {
81
- children: [(0, _jsxRuntime.jsx)(_OverlayA11yShield.OverlayA11yShield, {
81
+ children: [accessibility?.enabled ? (0, _jsxRuntime.jsx)(_OverlayA11yShield.OverlayA11yShield, {
82
82
  children: children
83
- }), overlay === 'gallery' && (0, _jsxRuntime.jsx)(_ImageGallery.ImageGallery, {
83
+ }) : children, overlay === 'gallery' && (0, _jsxRuntime.jsx)(_ImageGallery.ImageGallery, {
84
84
  overlayOpacity: overlayOpacity
85
85
  }), (0, _jsxRuntime.jsx)(_MessageOverlayHostLayer.MessageOverlayHostLayer, {})]
86
86
  })
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_reactNativeTeleport","_MessageOverlayHostLayer","_OverlayContext","_OverlayA11yShield","_ImageGallery","_useStreami18n","_AccessibilityContext","_ImageGalleryContext","_ThemeContext","_TranslationContext","_jsxRuntime","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OverlayProvider","props","accessibility","autoPlayVideo","children","giphyVersion","i18nInstance","numberOfImageGalleryGridColumns","value","_useState","useState","overlay","_useState2","_slicedToArray2","setOverlay","overlayOpacity","useSharedValue","translators","useStreami18n","useEffect","backAction","backHandler","BackHandler","addEventListener","remove","cancelAnimation","withTiming","overlayContext","style","imageGalleryProviderProps","useMemo","jsx","TranslationProvider","userLanguage","DEFAULT_USER_LANGUAGE","AccessibilityProvider","OverlayContext","Provider","ImageGalleryProvider","ThemeProvider","jsxs","PortalProvider","OverlayA11yShield","ImageGallery","MessageOverlayHostLayer","exports"],"sourceRoot":"../../../../src","sources":["contexts/overlayContext/OverlayProvider.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_reactNativeTeleport","_MessageOverlayHostLayer","_OverlayContext","_OverlayA11yShield","_ImageGallery","_useStreami18n","_AccessibilityContext","_ImageGalleryContext","_ThemeContext","_TranslationContext","_jsxRuntime","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OverlayProvider","props","accessibility","autoPlayVideo","children","giphyVersion","i18nInstance","numberOfImageGalleryGridColumns","value","_useState","useState","overlay","_useState2","_slicedToArray2","setOverlay","overlayOpacity","useSharedValue","translators","useStreami18n","useEffect","backAction","backHandler","BackHandler","addEventListener","remove","cancelAnimation","withTiming","overlayContext","style","imageGalleryProviderProps","useMemo","jsx","TranslationProvider","userLanguage","DEFAULT_USER_LANGUAGE","AccessibilityProvider","OverlayContext","Provider","ImageGalleryProvider","ThemeProvider","jsxs","PortalProvider","enabled","OverlayA11yShield","ImageGallery","MessageOverlayHostLayer","exports"],"sourceRoot":"../../../../src","sources":["contexts/overlayContext/OverlayProvider.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "9.3.1-beta.8"
2
+ "version": "9.3.1-beta.9"
3
3
  }
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Subscribes to Android accessibility service availability and returns the live state.
3
+ *
4
+ * `AccessibilityInfo.isAccessibilityServiceEnabled` reports whether ANY a11y service is
5
+ * running - TalkBack, Switch Access, Voice Access, Select to Speak, etc. not just
6
+ * screen readers. The signal is Android only; iOS doesn't expose it (and doesn't need to,
7
+ * since the SDK's iOS overlay trap uses `accessibilityViewIsModal`).
8
+ *
9
+ * React Native does not emit a dedicated change event for this signal, so the hook
10
+ * re-polls when the app returns to the foreground - which is the realistic path for a
11
+ * user toggling Accessibility settings and coming back to the app. The most common
12
+ * single service change (TalkBack on/off) is also covered by the `screenReaderChanged`
13
+ * listener.
14
+ *
15
+ * Returns false on non-Android platforms without subscribing.
16
+ * Returns false when the `AccessibilityContext` is disabled so consumers don't pay the
17
+ * listener cost when the SDK's a11y is opted out.
18
+ */
19
+ export declare const useAccessibilityServiceEnabled: () => boolean;
20
+ //# sourceMappingURL=useAccessibilityServiceEnabled.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAccessibilityServiceEnabled.d.ts","sourceRoot":"","sources":["../../../../src/a11y/hooks/useAccessibilityServiceEnabled.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,8BAA8B,QAAO,OA0CjD,CAAC"}
@@ -1,5 +1,6 @@
1
1
  export * from './a11yUtils';
2
2
  export * from './hooks/useScreenReaderEnabled';
3
+ export * from './hooks/useAccessibilityServiceEnabled';
3
4
  export * from './hooks/useReducedMotionPreference';
4
5
  export * from './hooks/useResolvedModalAccessibilityProps';
5
6
  export * from './hooks/useAnnounceOnStateChange';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/a11y/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oCAAoC,CAAC;AACnD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,kCAAkC,CAAC;AACjD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,wCAAwC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/a11y/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wCAAwC,CAAC;AACvD,cAAc,oCAAoC,CAAC;AACnD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,kCAAkC,CAAC;AACjD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,wCAAwC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"OverlayA11yShield.d.ts","sourceRoot":"","sources":["../../../../src/components/Accessibility/OverlayA11yShield.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAWjD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,qBAoBhE"}
1
+ {"version":3,"file":"OverlayA11yShield.d.ts","sourceRoot":"","sources":["../../../../src/components/Accessibility/OverlayA11yShield.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAsBjD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,qBAiBhE"}
@@ -1 +1 @@
1
- {"version":3,"file":"OverlayProvider.d.ts","sourceRoot":"","sources":["../../../../src/contexts/overlayContext/OverlayProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAgC,MAAM,OAAO,CAAC;AAS/E,OAAO,EAAkB,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAexE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,eAAe,GAAI,OAAO,iBAAiB,CAAC,oBAAoB,CAAC,sBA4E7E,CAAC"}
1
+ {"version":3,"file":"OverlayProvider.d.ts","sourceRoot":"","sources":["../../../../src/contexts/overlayContext/OverlayProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAgC,MAAM,OAAO,CAAC;AAS/E,OAAO,EAAkB,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAexE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,eAAe,GAAI,OAAO,iBAAiB,CAAC,oBAAoB,CAAC,sBAgF7E,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "stream-chat-react-native-core",
3
3
  "description": "The official React Native and Expo components for Stream Chat, a service for building chat applications",
4
- "version": "9.3.1-beta.8",
4
+ "version": "9.3.1-beta.9",
5
5
  "author": {
6
6
  "company": "Stream.io Inc",
7
7
  "name": "Stream.io Inc"
@@ -0,0 +1,66 @@
1
+ import { useEffect, useState } from 'react';
2
+ import { AccessibilityInfo, AppState, Platform } from 'react-native';
3
+
4
+ import { useAccessibilityContext } from '../../contexts/accessibilityContext/AccessibilityContext';
5
+
6
+ /**
7
+ * Subscribes to Android accessibility service availability and returns the live state.
8
+ *
9
+ * `AccessibilityInfo.isAccessibilityServiceEnabled` reports whether ANY a11y service is
10
+ * running - TalkBack, Switch Access, Voice Access, Select to Speak, etc. not just
11
+ * screen readers. The signal is Android only; iOS doesn't expose it (and doesn't need to,
12
+ * since the SDK's iOS overlay trap uses `accessibilityViewIsModal`).
13
+ *
14
+ * React Native does not emit a dedicated change event for this signal, so the hook
15
+ * re-polls when the app returns to the foreground - which is the realistic path for a
16
+ * user toggling Accessibility settings and coming back to the app. The most common
17
+ * single service change (TalkBack on/off) is also covered by the `screenReaderChanged`
18
+ * listener.
19
+ *
20
+ * Returns false on non-Android platforms without subscribing.
21
+ * Returns false when the `AccessibilityContext` is disabled so consumers don't pay the
22
+ * listener cost when the SDK's a11y is opted out.
23
+ */
24
+ export const useAccessibilityServiceEnabled = (): boolean => {
25
+ const { enabled } = useAccessibilityContext();
26
+ const [isEnabled, setIsEnabled] = useState<boolean>(false);
27
+
28
+ useEffect(() => {
29
+ if (Platform.OS !== 'android' || !enabled) {
30
+ setIsEnabled(false);
31
+ return;
32
+ }
33
+
34
+ let cancelled = false;
35
+
36
+ const refresh = () => {
37
+ AccessibilityInfo.isAccessibilityServiceEnabled?.()
38
+ .then((value) => {
39
+ if (!cancelled) setIsEnabled(value);
40
+ })
41
+ .catch(() => {
42
+ // Older RN versions / certain environments may not implement this; fall back to false.
43
+ });
44
+ };
45
+
46
+ refresh();
47
+
48
+ const screenReaderSubscription = AccessibilityInfo.addEventListener(
49
+ 'screenReaderChanged',
50
+ refresh,
51
+ );
52
+
53
+ const appStateSubscription = AppState.addEventListener('change', (state) => {
54
+ if (state === 'active') refresh();
55
+ });
56
+
57
+ return () => {
58
+ cancelled = true;
59
+ screenReaderSubscription?.remove?.();
60
+ appStateSubscription?.remove?.();
61
+ };
62
+ }, [enabled]);
63
+
64
+ if (Platform.OS !== 'android' || !enabled) return false;
65
+ return isEnabled;
66
+ };
package/src/a11y/index.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  export * from './a11yUtils';
2
2
  export * from './hooks/useScreenReaderEnabled';
3
+ export * from './hooks/useAccessibilityServiceEnabled';
3
4
  export * from './hooks/useReducedMotionPreference';
4
5
  export * from './hooks/useResolvedModalAccessibilityProps';
5
6
  export * from './hooks/useAnnounceOnStateChange';
@@ -1,6 +1,8 @@
1
1
  import React, { PropsWithChildren } from 'react';
2
2
  import { Platform, StyleSheet, View } from 'react-native';
3
3
 
4
+ import { useAccessibilityServiceEnabled } from '../../a11y';
5
+ import { useAccessibilityContext } from '../../contexts/accessibilityContext/AccessibilityContext';
4
6
  import { useOverlayContext } from '../../contexts/overlayContext/OverlayContext';
5
7
  import { useStateStore } from '../../hooks';
6
8
  import { overlayStore } from '../../state-store/message-overlay-store';
@@ -9,6 +11,15 @@ const messageOverlayActiveSelector = (state: { id: string | undefined }) => ({
9
11
  isMessageOverlayActive: state.id !== undefined,
10
12
  });
11
13
 
14
+ const useShouldActivateTrap = (): boolean => {
15
+ const { enabled: a11yEnabled } = useAccessibilityContext();
16
+ const { overlay } = useOverlayContext();
17
+ const { isMessageOverlayActive } = useStateStore(overlayStore, messageOverlayActiveSelector);
18
+ const a11yServiceEnabled = useAccessibilityServiceEnabled();
19
+
20
+ return a11yEnabled && (overlay === 'gallery' || isMessageOverlayActive) && a11yServiceEnabled;
21
+ };
22
+
12
23
  /**
13
24
  * Android only accessibility focus trap for the OverlayProvider's children
14
25
  * tree. iOS handles modal focus traps natively via `accessibilityViewIsModal`
@@ -27,20 +38,17 @@ const messageOverlayActiveSelector = (state: { id: string | undefined }) => ({
27
38
  * On iOS the wrapper is skipped entirely.
28
39
  */
29
40
  export function OverlayA11yShield({ children }: PropsWithChildren) {
30
- const { overlay } = useOverlayContext();
31
- const { isMessageOverlayActive } = useStateStore(overlayStore, messageOverlayActiveSelector);
41
+ const shouldActivateTrap = useShouldActivateTrap();
32
42
 
33
43
  if (Platform.OS !== 'android') {
34
44
  return <>{children}</>;
35
45
  }
36
46
 
37
- const isAnyOverlayActive = overlay === 'gallery' || isMessageOverlayActive;
38
-
39
47
  return (
40
48
  <View
41
- accessibilityElementsHidden={isAnyOverlayActive}
42
- importantForAccessibility={isAnyOverlayActive ? 'no-hide-descendants' : 'auto'}
49
+ importantForAccessibility={shouldActivateTrap ? 'no-hide-descendants' : undefined}
43
50
  style={StyleSheet.absoluteFill}
51
+ pointerEvents='box-none'
44
52
  testID='overlay-a11y-shield'
45
53
  >
46
54
  {children}
@@ -1,31 +1,45 @@
1
1
  import React from 'react';
2
- import { Platform, Text } from 'react-native';
2
+ import { AccessibilityInfo, Platform, Text } from 'react-native';
3
3
 
4
- import { act, render, screen } from '@testing-library/react-native';
4
+ import { act, render, screen, waitFor } from '@testing-library/react-native';
5
5
 
6
+ import { AccessibilityProvider } from '../../../contexts/accessibilityContext/AccessibilityContext';
6
7
  import { OverlayContext } from '../../../contexts/overlayContext/OverlayContext';
7
8
  import { overlayStore } from '../../../state-store/message-overlay-store';
8
9
  import { OverlayA11yShield } from '../OverlayA11yShield';
9
10
 
11
+ jest.mock('react-native/Libraries/Components/AccessibilityInfo/AccessibilityInfo', () => ({
12
+ __esModule: true,
13
+ default: {
14
+ addEventListener: jest.fn().mockReturnValue({ remove: jest.fn() }),
15
+ announceForAccessibility: jest.fn(),
16
+ isAccessibilityServiceEnabled: jest.fn().mockResolvedValue(true),
17
+ isReduceMotionEnabled: jest.fn().mockResolvedValue(false),
18
+ isScreenReaderEnabled: jest.fn().mockResolvedValue(false),
19
+ },
20
+ }));
21
+
10
22
  const setPlatform = (os: typeof Platform.OS) => {
11
23
  Object.defineProperty(Platform, 'OS', { configurable: true, get: () => os });
12
24
  };
13
25
 
14
26
  const renderShield = (overlay: 'none' | 'gallery' = 'none') =>
15
27
  render(
16
- <OverlayContext.Provider
17
- value={
18
- {
19
- overlay,
20
- setOverlay: () => undefined,
21
- style: undefined,
22
- } as never
23
- }
24
- >
25
- <OverlayA11yShield>
26
- <Text testID='child'>child</Text>
27
- </OverlayA11yShield>
28
- </OverlayContext.Provider>,
28
+ <AccessibilityProvider value={{ enabled: true }}>
29
+ <OverlayContext.Provider
30
+ value={
31
+ {
32
+ overlay,
33
+ setOverlay: () => undefined,
34
+ style: undefined,
35
+ } as never
36
+ }
37
+ >
38
+ <OverlayA11yShield>
39
+ <Text testID='child'>child</Text>
40
+ </OverlayA11yShield>
41
+ </OverlayContext.Provider>
42
+ </AccessibilityProvider>,
29
43
  );
30
44
 
31
45
  // The wrapper sets `accessibilityElementsHidden` / `importantForAccessibility`
@@ -38,6 +52,7 @@ describe('OverlayA11yShield', () => {
38
52
  afterAll(() => setPlatform(originalOS));
39
53
 
40
54
  beforeEach(() => {
55
+ (AccessibilityInfo.isAccessibilityServiceEnabled as jest.Mock).mockResolvedValue(true);
41
56
  act(() => {
42
57
  overlayStore.partialNext({ closing: false, id: undefined, messageId: undefined });
43
58
  });
@@ -46,28 +61,48 @@ describe('OverlayA11yShield', () => {
46
61
  describe('on Android', () => {
47
62
  beforeAll(() => setPlatform('android'));
48
63
 
49
- it('renders children inside the wrapper', () => {
64
+ it('renders children inside the wrapper', async () => {
50
65
  renderShield();
66
+ await act(async () => {
67
+ await Promise.resolve();
68
+ });
51
69
  expect(screen.getByTestId('child')).toBeTruthy();
52
70
  expect(wrapper()).toBeTruthy();
53
71
  });
54
72
 
55
- it('does not hide descendants when no overlay is active', () => {
73
+ it('does not hide descendants when no overlay is active', async () => {
56
74
  renderShield('none');
57
- expect(wrapper()?.props.importantForAccessibility).toBe('auto');
75
+ await act(async () => {
76
+ await Promise.resolve();
77
+ });
78
+ expect(wrapper()?.props.importantForAccessibility).toBeUndefined();
58
79
  });
59
80
 
60
- it('hides descendants when the gallery overlay is active', () => {
81
+ it('hides descendants when the gallery overlay is active and an a11y service is on', async () => {
61
82
  renderShield('gallery');
62
- expect(wrapper()?.props.importantForAccessibility).toBe('no-hide-descendants');
83
+ await waitFor(() => {
84
+ expect(wrapper()?.props.importantForAccessibility).toBe('no-hide-descendants');
85
+ });
63
86
  });
64
87
 
65
- it('hides descendants when the message overlay opens', () => {
88
+ it('hides descendants when the message overlay opens and an a11y service is on', async () => {
66
89
  renderShield('none');
67
90
  act(() => {
68
91
  overlayStore.partialNext({ id: 'msg-1' });
69
92
  });
70
- expect(wrapper()?.props.importantForAccessibility).toBe('no-hide-descendants');
93
+ await waitFor(() => {
94
+ expect(wrapper()?.props.importantForAccessibility).toBe('no-hide-descendants');
95
+ });
96
+ });
97
+
98
+ it('does not flip the prop when no a11y service is running, even with an overlay active', async () => {
99
+ (AccessibilityInfo.isAccessibilityServiceEnabled as jest.Mock).mockResolvedValue(false);
100
+ renderShield('gallery');
101
+ // Allow the async isAccessibilityServiceEnabled() resolution to settle.
102
+ await act(async () => {
103
+ await Promise.resolve();
104
+ });
105
+ expect(wrapper()?.props.importantForAccessibility).toBeUndefined();
71
106
  });
72
107
  });
73
108
 
@@ -108,7 +108,11 @@ export const OverlayProvider = (props: PropsWithChildren<OverlayProviderProps>)
108
108
  <ImageGalleryProvider value={imageGalleryProviderProps}>
109
109
  <ThemeProvider style={overlayContext.style}>
110
110
  <PortalProvider>
111
- <OverlayA11yShield>{children}</OverlayA11yShield>
111
+ {accessibility?.enabled ? (
112
+ <OverlayA11yShield>{children}</OverlayA11yShield>
113
+ ) : (
114
+ children
115
+ )}
112
116
  {overlay === 'gallery' && <ImageGallery overlayOpacity={overlayOpacity} />}
113
117
  <MessageOverlayHostLayer />
114
118
  </PortalProvider>
package/src/version.json CHANGED
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "9.3.1-beta.8"
2
+ "version": "9.3.1-beta.9"
3
3
  }