UNPKG

@nativescript/core

Version:

A JavaScript library providing an easy to use api for interacting with iOS and Android platform APIs.

26 lines 1.1 kB
import { Observable } from '../data/observable'; export class SharedA11YObservable extends Observable { } export const AccessibilityServiceEnabledPropName = 'accessibilityServiceEnabled'; export class CommonA11YServiceEnabledObservable extends SharedA11YObservable { constructor(sharedA11YObservable) { super(); const ref = new WeakRef(this); let lastValue; function callback() { const self = ref?.get(); if (!self) { sharedA11YObservable.off(Observable.propertyChangeEvent, callback); return; } const newValue = !!sharedA11YObservable.accessibilityServiceEnabled; if (newValue !== lastValue) { self.set(AccessibilityServiceEnabledPropName, newValue); lastValue = newValue; } } sharedA11YObservable.on(Observable.propertyChangeEvent, callback); this.set(AccessibilityServiceEnabledPropName, !!sharedA11YObservable.accessibilityServiceEnabled); } } //# sourceMappingURL=accessibility-service-common.js.map