This commit is contained in:
Yamozha
2021-04-02 02:24:13 +03:00
parent c23950b545
commit 7256d79e2c
31493 changed files with 3036630 additions and 0 deletions

View File

@ -0,0 +1,52 @@
/**
* Copyright (c) Nicolas Gallagher.
* 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.
*
*
*/
import { canUseDOM } from 'fbjs/lib/ExecutionEnvironment';
function getQuery() {
return canUseDOM && window.matchMedia != null ? window.matchMedia('(prefers-color-scheme: dark)') : null;
}
var query = getQuery();
var listenerMapping = new WeakMap();
var Appearance = {
getColorScheme: function getColorScheme() {
return query && query.matches ? 'dark' : 'light';
},
addChangeListener: function addChangeListener(listener) {
var mappedListener = listenerMapping.get(listener);
if (!mappedListener) {
mappedListener = function mappedListener(_ref) {
var matches = _ref.matches;
listener({
colorScheme: matches ? 'dark' : 'light'
});
};
listenerMapping.set(listener, mappedListener);
}
if (query) {
query.addListener(mappedListener);
}
},
removeChangeListener: function removeChangeListener(listener) {
var mappedListener = listenerMapping.get(listener);
if (mappedListener) {
if (query) {
query.removeListener(mappedListener);
}
listenerMapping.delete(listener);
}
}
};
export default Appearance;