UNPKG

react-native-onyx

Version:

State management for React Native

30 lines (29 loc) 1.09 kB
"use strict"; /** * Stores settings from Onyx.init globally so they can be made accessible by other parts of the library. */ Object.defineProperty(exports, "__esModule", { value: true }); exports.addGlobalSettingsChangeListener = exports.isPerformanceMetricsEnabled = exports.setPerformanceMetricsEnabled = void 0; const globalSettings = { enablePerformanceMetrics: false, }; const listeners = new Set(); function addGlobalSettingsChangeListener(listener) { listeners.add(listener); return () => { listeners.delete(listener); }; } exports.addGlobalSettingsChangeListener = addGlobalSettingsChangeListener; function notifyListeners() { listeners.forEach((listener) => listener(globalSettings)); } function setPerformanceMetricsEnabled(enabled) { globalSettings.enablePerformanceMetrics = enabled; notifyListeners(); } exports.setPerformanceMetricsEnabled = setPerformanceMetricsEnabled; function isPerformanceMetricsEnabled() { return globalSettings.enablePerformanceMetrics; } exports.isPerformanceMetricsEnabled = isPerformanceMetricsEnabled;