forked from facebook/react-native
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathYellowBoxDeprecated.js
More file actions
75 lines (61 loc) · 1.61 KB
/
YellowBoxDeprecated.js
File metadata and controls
75 lines (61 loc) · 1.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/**
* 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';
const React = require('react');
const LogBox = require('../LogBox/LogBox');
import type {IgnorePattern} from '../LogBox/Data/LogBoxData';
type Props = $ReadOnly<{||}>;
let YellowBox;
if (__DEV__) {
YellowBox = class extends React.Component<Props> {
static ignoreWarnings(patterns: $ReadOnlyArray<IgnorePattern>): void {
console.warn(
'YellowBox has been replaced with LogBox. Please call LogBox.ignoreLogs() instead.',
);
LogBox.ignoreLogs(patterns);
}
static install(): void {
console.warn(
'YellowBox has been replaced with LogBox. Please call LogBox.install() instead.',
);
LogBox.install();
}
static uninstall(): void {
console.warn(
'YellowBox has been replaced with LogBox. Please call LogBox.uninstall() instead.',
);
LogBox.uninstall();
}
render(): React.Node {
return null;
}
};
} else {
YellowBox = class extends React.Component<Props> {
static ignoreWarnings(patterns: $ReadOnlyArray<IgnorePattern>): void {
// Do nothing.
}
static install(): void {
// Do nothing.
}
static uninstall(): void {
// Do nothing.
}
render(): React.Node {
return null;
}
};
}
module.exports = (YellowBox: Class<React.Component<Props>> & {
ignoreWarnings($ReadOnlyArray<IgnorePattern>): void,
install(): void,
uninstall(): void,
...
});