Fix build config
ReactDebugCurrentFrame is shared state. checkPropTypes should be imported via the main React export, not imported directly.
Andrew Clark committed
Feb 22, 2017 at 15:01 UTC
03ed3437c988f294045770bf403839603ce00ae9
5 files changed
+23
-20
gulpfile.js
+2
@@ -130,7 +130,9 @@ var rendererSharedState = {
130
React: 'react/lib/React',
131
// Shared state
132
ReactCurrentOwner: 'react/lib/ReactCurrentOwner',
133
+ checkPropTypes: 'react/lib/checkPropTypes',
134
ReactComponentTreeHook: 'react/lib/ReactComponentTreeHook',
135
+ ReactDebugCurrentFrame: 'react/lib/ReactDebugCurrentFrame',
136
};
137
138
var moduleMapReactDOM = Object.assign(
src/isomorphic/React.js
+3
@@ -21,6 +21,7 @@ var ReactVersion = require('ReactVersion');
21
22
var onlyChild = require('onlyChild');
23
var warning = require('warning');
24
+var checkPropTypes = require('checkPropTypes');
25
26
var createElement = ReactElement.createElement;
27
var createFactory = ReactElement.createFactory;
@@ -71,6 +72,8 @@ var React = {
72
cloneElement: cloneElement,
73
isValidElement: ReactElement.isValidElement,
74
75
+ checkPropTypes: checkPropTypes,
76
+
77
// Classic
78
79
PropTypes: ReactPropTypes,
src/isomorphic/classic/types/ReactPropTypes.js
-3
@@ -13,7 +13,6 @@
13
14
var ReactElement = require('ReactElement');
15
var ReactPropTypesSecret = require('ReactPropTypesSecret');
16
-var checkPropTypes = require('checkPropTypes');
16
17
var emptyFunction = require('emptyFunction');
18
var getIteratorFn = require('getIteratorFn');
@@ -123,8 +122,6 @@ if (__DEV__) {
122
};
123
}
124
126
-ReactPropTypes.checkPropTypes = checkPropTypes;
127
-
125
126
/**
127
* inlined Object.is polyfill to avoid requiring consumers ship their own
src/isomorphic/classic/types/__tests__/ReactPropTypes-test.js
+18
-16
@@ -12,10 +12,11 @@
12
'use strict';
13
14
var PropTypes;
15
+var checkPropTypes;
16
var checkReactTypeSpec;
17
var React;
18
+var ReactDOM;
19
var ReactFragment;
18
-var ReactTestUtils;
20
21
var Component;
22
var MyComponent;
@@ -23,6 +24,7 @@ var MyComponent;
24
function resetWarningCache() {
25
jest.resetModules();
26
checkReactTypeSpec = require('checkReactTypeSpec');
27
+ checkPropTypes = require('checkPropTypes');
28
}
29
30
function getPropTypeWarningMessage(propTypes, object, componentName) {
@@ -109,8 +111,8 @@ describe('ReactPropTypes', () => {
111
beforeEach(() => {
112
PropTypes = require('ReactPropTypes');
113
React = require('React');
114
+ ReactDOM = require('ReactDOM');
115
ReactFragment = require('ReactFragment');
113
- ReactTestUtils = require('ReactTestUtils');
116
resetWarningCache();
117
});
118
@@ -123,7 +125,7 @@ describe('ReactPropTypes', () => {
125
},
126
};
127
const props = { foo: 'foo' };
126
- const returnValue = PropTypes.checkPropTypes(propTypes, props, 'prop', 'testComponent', null);
128
+ const returnValue = checkPropTypes(propTypes, props, 'prop', 'testComponent', null);
129
expect(console.error.calls.argsFor(0)[0]).toContain('some error');
130
expect(returnValue).toBe(undefined);
131
});
@@ -136,7 +138,7 @@ describe('ReactPropTypes', () => {
138
},
139
};
140
const props = { foo: 'foo' };
139
- const returnValue = PropTypes.checkPropTypes(propTypes, props, 'prop', 'testComponent', null);
141
+ const returnValue = checkPropTypes(propTypes, props, 'prop', 'testComponent', null);
142
expect(console.error.calls.argsFor(0)[0]).toContain('some error');
143
expect(returnValue).toBe(undefined);
144
});
@@ -436,8 +438,8 @@ describe('ReactPropTypes', () => {
438
it('should be able to define a single child as label', () => {
439
spyOn(console, 'error');
440
439
- var instance = <Component label={<div />} />;
440
- ReactTestUtils.renderIntoDocument(instance);
441
+ var container = document.createElement('div');
442
+ ReactDOM.render(<Component label={<div />} />, container);
443
444
expectDev(console.error.calls.count()).toBe(0);
445
});
@@ -445,8 +447,8 @@ describe('ReactPropTypes', () => {
447
it('should warn when passing no label and isRequired is set', () => {
448
spyOn(console, 'error');
449
448
- var instance = <Component />;
449
- ReactTestUtils.renderIntoDocument(instance);
450
+ var container = document.createElement('div');
451
+ ReactDOM.render(<Component />, container);
452
453
expectDev(console.error.calls.count()).toBe(1);
454
});
@@ -1064,8 +1066,8 @@ describe('ReactPropTypes', () => {
1066
}
1067
};
1068
1067
- var instance = <Component num={5} />;
1068
- ReactTestUtils.renderIntoDocument(instance);
1069
+ var container = document.createElement('div');
1070
+ ReactDOM.render(<Component num={5} />, container);
1071
1072
expect(spy.calls.count()).toBe(1);
1073
expect(spy.calls.argsFor(0)[1]).toBe('num');
@@ -1081,8 +1083,8 @@ describe('ReactPropTypes', () => {
1083
}
1084
};
1085
1084
- var instance = <Component bla={5} />;
1085
- ReactTestUtils.renderIntoDocument(instance);
1086
+ var container = document.createElement('div');
1087
+ ReactDOM.render(<Component bla={5} />, container);
1088
1089
expect(spy.calls.count()).toBe(1);
1090
expect(spy.calls.argsFor(0)[1]).toBe('num');
@@ -1105,8 +1107,8 @@ describe('ReactPropTypes', () => {
1107
}
1108
};
1109
1108
- var instance = <Component num={6} />;
1109
- ReactTestUtils.renderIntoDocument(instance);
1110
+ var container = document.createElement('div');
1111
+ ReactDOM.render(<Component num={6} />, container);
1112
expectDev(console.error.calls.count()).toBe(1);
1113
expect(
1114
console.error.calls.argsFor(0)[0].replace(/\(at .+?:\d+\)/g, '(at **)')
@@ -1132,8 +1134,8 @@ describe('ReactPropTypes', () => {
1134
}
1135
};
1136
1135
- var instance = <Component num={5} />;
1136
- ReactTestUtils.renderIntoDocument(instance);
1137
+ var container = document.createElement('div');
1138
+ ReactDOM.render(<Component num={5} />, container);
1139
expectDev(console.error.calls.count()).toBe(0);
1140
}
1141
);
src/shared/types/checkReactTypeSpec.js
-1
@@ -12,7 +12,6 @@
12
'use strict';
13
14
var checkPropTypes = require('checkPropTypes');
15
-
15
var { getStackAddendum } = require('ReactDebugCurrentFrame');
16
17
function checkReactTypeSpec(