mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
Add spec for Settings (#24879)
Summary: part of #24875. I again, am not completely sure how the call site here works- appears settings can be directly accessed? ## Changelog [General] [Added] - Add TM spec for Settings Pull Request resolved: https://github.com/facebook/react-native/pull/24879 Reviewed By: RSNara Differential Revision: D15543012 Pulled By: fkgozali fbshipit-source-id: a1df3096a2fc5fe8e65d0ed2398912530bd3911a
This commit is contained in:
committed by
Facebook Github Bot
parent
82fe1b0521
commit
aaa4127332
@@ -0,0 +1,24 @@
|
||||
/**
|
||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||||
*
|
||||
* This source code is licensed under the MIT license found in the
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*
|
||||
* @flow
|
||||
* @format
|
||||
*/
|
||||
|
||||
'use strict';
|
||||
|
||||
import type {TurboModule} from 'RCTExport';
|
||||
import * as TurboModuleRegistry from 'TurboModuleRegistry';
|
||||
|
||||
export interface Spec extends TurboModule {
|
||||
+getConstants: () => {|
|
||||
settings: Object,
|
||||
|};
|
||||
+setValues: (values: Object) => void;
|
||||
+deleteValues: (values: Array<string>) => void;
|
||||
}
|
||||
|
||||
export default TurboModuleRegistry.getEnforcing<Spec>('SettingsManager');
|
||||
@@ -11,15 +11,15 @@
|
||||
'use strict';
|
||||
|
||||
const RCTDeviceEventEmitter = require('../EventEmitter/RCTDeviceEventEmitter');
|
||||
const RCTSettingsManager = require('../BatchedBridge/NativeModules')
|
||||
.SettingsManager;
|
||||
import NativeSettingsManager from './NativeSettingsManager';
|
||||
|
||||
const invariant = require('invariant');
|
||||
|
||||
const subscriptions: Array<{keys: Array<string>, callback: ?Function}> = [];
|
||||
|
||||
const Settings = {
|
||||
_settings: RCTSettingsManager && RCTSettingsManager.settings,
|
||||
_settings:
|
||||
NativeSettingsManager && NativeSettingsManager.getConstants().settings,
|
||||
|
||||
get(key: string): mixed {
|
||||
return this._settings[key];
|
||||
@@ -27,7 +27,7 @@ const Settings = {
|
||||
|
||||
set(settings: Object) {
|
||||
this._settings = Object.assign(this._settings, settings);
|
||||
RCTSettingsManager.setValues(settings);
|
||||
NativeSettingsManager.setValues(settings);
|
||||
},
|
||||
|
||||
watchKeys(keys: string | Array<string>, callback: Function): number {
|
||||
|
||||
Reference in New Issue
Block a user