Skip to content

Commit 34c039a

Browse files
eps1lonoliviertassinari
authored andcommitted
[test] Use actual React.memo (#15321)
* [test] Update enzyme * [test] Use actual memo * [utils] Fix lazy and memo components issuing forward ref warnings
1 parent e51652d commit 34c039a

File tree

7 files changed

+99
-57
lines changed

7 files changed

+99
-57
lines changed

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,8 +115,8 @@
115115
"downshift": "^3.0.0",
116116
"dtslint": "^0.4.0",
117117
"emotion-theming": "^10.0.5",
118-
"enzyme": "^3.5.0",
119-
"enzyme-adapter-react-16": "^1.11.2",
118+
"enzyme": "^3.9.0",
119+
"enzyme-adapter-react-16": "^1.12.1",
120120
"eslint": "^5.9.0",
121121
"eslint-config-airbnb": "^17.0.0",
122122
"eslint-config-prettier": "^4.0.0",

packages/material-ui-styles/src/ThemeProvider/ThemeProvider.test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ describe('ThemeProvider', () => {
8686
assert.strictEqual(wrapper.text(), 'foobar');
8787
wrapper.setProps({});
8888
assert.strictEqual(wrapper.text(), 'foobar');
89-
assert.strictEqual(themes[0], themes[1]);
89+
assert.strictEqual(themes.length, 1);
9090
});
9191

9292
describe('warnings', () => {

packages/material-ui-utils/src/elementTypeAcceptingRef.js

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import * as PropTypes from 'prop-types';
2-
import { isLazy, isMemo } from 'react-is';
32
import chainPropTypes from './chainPropTypes';
43

54
function isClassComponent(elementType) {
@@ -28,11 +27,7 @@ function elementTypeAcceptingRef(props, propName, componentName, location, propF
2827
* or class components. "Safe" means there's no public API.
2928
*
3029
*/
31-
if (isLazy(propValue)) {
32-
warningHint = 'But you passed a React.lazy component.';
33-
} else if (isMemo(propValue)) {
34-
warningHint = 'But you passed a React.memo component.';
35-
} else if (typeof propValue === 'function' && !isClassComponent(propValue)) {
30+
if (typeof propValue === 'function' && !isClassComponent(propValue)) {
3631
warningHint = 'Did you accidentally provide a plain function component instead?';
3732
}
3833

packages/material-ui-utils/src/elementTypeAcceptingRef.test.js

Lines changed: 31 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
import { assert } from 'chai';
33
import * as PropTypes from 'prop-types';
44
import React from 'react';
5+
import ReactDOM from 'react-dom';
56
import { createMount } from '@material-ui/core/test-utils';
67
import consoleErrorMock from 'test/utils/consoleErrorMock';
78
import elementTypeAcceptingRef from './elementTypeAcceptingRef';
@@ -36,12 +37,19 @@ describe('elementTypeAcceptingRef', () => {
3637
});
3738

3839
describe('acceptance', () => {
40+
let rootNode;
41+
3942
function assertPass(Component, options = {}) {
4043
const { failsOnMount = false, shouldMount = true } = options;
4144

4245
checkPropType(Component);
4346
if (shouldMount) {
44-
mount(<Component ref={React.createRef()} />);
47+
ReactDOM.render(
48+
<React.Suspense fallback={<p />}>
49+
<Component ref={React.createRef()} />
50+
</React.Suspense>,
51+
rootNode,
52+
);
4553
}
4654

4755
assert.strictEqual(
@@ -51,6 +59,14 @@ describe('elementTypeAcceptingRef', () => {
5159
);
5260
}
5361

62+
before(() => {
63+
rootNode = document.createElement('div');
64+
});
65+
66+
afterEach(() => {
67+
ReactDOM.unmountComponentAtNode(rootNode);
68+
});
69+
5470
it('accepts nully values', () => {
5571
assertPass(undefined, { shouldMount: false });
5672
assertPass(null, { shouldMount: false });
@@ -86,6 +102,20 @@ describe('elementTypeAcceptingRef', () => {
86102
assertPass(Component);
87103
});
88104

105+
it('accepts memo', () => {
106+
const Component = React.memo('div');
107+
108+
assertPass(Component);
109+
});
110+
111+
it('accepts lazy', () => {
112+
const Component = React.lazy(() => Promise.resolve({ default: props => <div {...props} /> }));
113+
114+
// should actually fail when mounting since the ref is forwarded to a function component
115+
// but since this happens in a promise our consoleErrorMock doesn't catch it properly
116+
assertPass(Component);
117+
});
118+
89119
it('technically allows other exotics like strict mode', () => {
90120
assertPass(React.StrictMode);
91121
});
@@ -113,19 +143,5 @@ describe('elementTypeAcceptingRef', () => {
113143

114144
assertFail(Component, 'Did you accidentally provide a plain function component instead?');
115145
});
116-
117-
it('rejects memo', () => {
118-
const Component = React.memo(() => React.createElement('div'));
119-
120-
// use actual hint once we don't have to mock React.useMemo
121-
assertFail(Component, 'Did you accidentally provide a plain function component instead?');
122-
// assertFail(Component, 'But you passed a React.memo component.');
123-
});
124-
125-
it('rejects lazy', () => {
126-
const Component = React.lazy(() => Promise.resolve({ default: () => null }));
127-
128-
assertFail(Component, 'But you passed a React.lazy component.');
129-
});
130146
});
131147
});

packages/material-ui/src/Chip/Chip.test.js

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,11 @@ describe('<Chip />', () => {
206206
const onDeleteSpy = spy();
207207
wrapper.setProps({ onDelete: onDeleteSpy });
208208

209-
chip.find(CancelIcon).simulate('click', { stopPropagation: () => {} });
209+
// simulate seems to not work on memo components
210+
wrapper
211+
.find(CancelIcon)
212+
.props()
213+
.onClick({ stopPropagation: () => {} });
210214
assert.strictEqual(onDeleteSpy.callCount, 1);
211215
});
212216

@@ -215,7 +219,10 @@ describe('<Chip />', () => {
215219
const stopPropagationSpy = spy();
216220
wrapper.setProps({ onDelete: onDeleteSpy });
217221

218-
chip.find(CancelIcon).simulate('click', { stopPropagation: stopPropagationSpy });
222+
wrapper
223+
.find(CancelIcon)
224+
.props()
225+
.onClick({ stopPropagation: stopPropagationSpy });
219226
assert.strictEqual(stopPropagationSpy.callCount, 1);
220227
});
221228

@@ -292,7 +299,10 @@ describe('<Chip />', () => {
292299
<Chip label="Custom delete icon Chip" onDelete={onDeleteSpy} deleteIcon={<CheckBox />} />,
293300
);
294301

295-
wrapper.find(CheckBox).simulate('click', { stopPropagation: () => {} });
302+
wrapper
303+
.find(CheckBox)
304+
.props()
305+
.onClick({ stopPropagation: () => {} });
296306
assert.strictEqual(onDeleteSpy.callCount, 1, 'should have called the onDelete handler');
297307
});
298308

test/utils/init.js

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,6 @@
11
import enzyme from 'enzyme/build/index';
22
import Adapter from 'enzyme-adapter-react-16';
33
import consoleError from './consoleError';
4-
import React from 'react';
5-
6-
// Waiting for https://github.com/airbnb/enzyme/issues/1875
7-
React.memo = x => x;
84

95
consoleError();
106

yarn.lock

Lines changed: 51 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@
100100
"@babel/types" "^7.3.0"
101101
esutils "^2.0.0"
102102

103-
"@babel/helper-call-delegate@^7.1.0", "@babel/helper-call-delegate@^7.4.0":
103+
"@babel/helper-call-delegate@^7.4.0":
104104
version "7.4.0"
105105
resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.4.0.tgz#f308eabe0d44f451217853aedf4dea5f6fe3294f"
106106
integrity sha512-SdqDfbVdNQCBp3WhK2mNdDvHd3BD6qbmIc43CAyjnsfCmgHMeqgDcM3BzY2lchi7HBJGJ2CVdynLWbezaE4mmQ==
@@ -109,7 +109,7 @@
109109
"@babel/traverse" "^7.4.0"
110110
"@babel/types" "^7.4.0"
111111

112-
"@babel/helper-create-class-features-plugin@^7.3.4", "@babel/helper-create-class-features-plugin@^7.4.0":
112+
"@babel/helper-create-class-features-plugin@^7.4.0":
113113
version "7.4.0"
114114
resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.4.0.tgz#30fd090e059d021995c1762a5b76798fa0b51d82"
115115
integrity sha512-2K8NohdOT7P6Vyp23QH4w2IleP8yG3UJsbRKwA4YP6H8fErcLkFuuEEqbF2/BYBKSNci/FWJiqm6R3VhM/QHgw==
@@ -121,7 +121,7 @@
121121
"@babel/helper-replace-supers" "^7.4.0"
122122
"@babel/helper-split-export-declaration" "^7.4.0"
123123

124-
"@babel/helper-define-map@^7.1.0", "@babel/helper-define-map@^7.4.0":
124+
"@babel/helper-define-map@^7.4.0":
125125
version "7.4.0"
126126
resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.4.0.tgz#cbfd8c1b2f12708e262c26f600cd16ed6a3bc6c9"
127127
integrity sha512-wAhQ9HdnLIywERVcSvX40CEJwKdAa1ID4neI9NXQPDOHwwA+57DqwLiPEVy2AIyWzAk0CQ8qx4awO0VUURwLtA==
@@ -154,7 +154,7 @@
154154
dependencies:
155155
"@babel/types" "^7.0.0"
156156

157-
"@babel/helper-hoist-variables@^7.0.0", "@babel/helper-hoist-variables@^7.4.0":
157+
"@babel/helper-hoist-variables@^7.4.0":
158158
version "7.4.0"
159159
resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.4.0.tgz#25b621399ae229869329730a62015bbeb0a6fbd6"
160160
integrity sha512-/NErCuoe/et17IlAQFKWM24qtyYYie7sFIrW/tIQXpck6vAu2hhtYYsKLBWQV+BQZMbcIYPU/QMYuTufrY4aQw==
@@ -217,7 +217,7 @@
217217
"@babel/traverse" "^7.1.0"
218218
"@babel/types" "^7.0.0"
219219

220-
"@babel/helper-replace-supers@^7.1.0", "@babel/helper-replace-supers@^7.3.4", "@babel/helper-replace-supers@^7.4.0":
220+
"@babel/helper-replace-supers@^7.1.0", "@babel/helper-replace-supers@^7.4.0":
221221
version "7.4.0"
222222
resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.4.0.tgz#4f56adb6aedcd449d2da9399c2dcf0545463b64c"
223223
integrity sha512-PVwCVnWWAgnal+kJ+ZSAphzyl58XrFeSKSAJRiqg5QToTsjL+Xu1f9+RJ+d+Q0aPhPfBGaYfkox66k86thxNSg==
@@ -331,7 +331,7 @@
331331
"@babel/helper-plugin-utils" "^7.0.0"
332332
"@babel/plugin-syntax-object-rest-spread" "^7.0.0"
333333

334-
"@babel/plugin-proposal-object-rest-spread@^7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.2.0", "@babel/plugin-proposal-object-rest-spread@^7.3.4", "@babel/plugin-proposal-object-rest-spread@^7.4.0":
334+
"@babel/plugin-proposal-object-rest-spread@^7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.2.0", "@babel/plugin-proposal-object-rest-spread@^7.4.0":
335335
version "7.4.0"
336336
resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.4.0.tgz#e4960575205eadf2a1ab4e0c79f9504d5b82a97f"
337337
integrity sha512-uTNi8pPYyUH2eWHyYWWSYJKwKg34hhgl4/dbejEjL+64OhbHjTX7wEVWMQl82tEmdDsGeu77+s8HHLS627h6OQ==
@@ -574,7 +574,7 @@
574574
"@babel/helper-module-transforms" "^7.1.0"
575575
"@babel/helper-plugin-utils" "^7.0.0"
576576

577-
"@babel/plugin-transform-named-capturing-groups-regex@^7.3.0", "@babel/plugin-transform-named-capturing-groups-regex@^7.4.2":
577+
"@babel/plugin-transform-named-capturing-groups-regex@^7.4.2":
578578
version "7.4.2"
579579
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.4.2.tgz#800391136d6cbcc80728dbdba3c1c6e46f86c12e"
580580
integrity sha512-NsAuliSwkL3WO2dzWTOL1oZJHm0TM8ZY8ZSxk2ANyKkt5SQlToGA4pzctmq1BEjoacurdwZ3xp2dCQWJkME0gQ==
@@ -908,7 +908,7 @@
908908
"@babel/parser" "^7.4.0"
909909
"@babel/types" "^7.4.0"
910910

911-
"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.1.5", "@babel/traverse@^7.3.4", "@babel/traverse@^7.4.0":
911+
"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.4.0":
912912
version "7.4.0"
913913
resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.4.0.tgz#14006967dd1d2b3494cdd650c686db9daf0ddada"
914914
integrity sha512-/DtIHKfyg2bBKnIN+BItaIlEg5pjAnzHOIQe5w+rHAw/rg9g0V7T4rqPX8BJPfW11kt3koyjAnTNwCzb28Y1PA==
@@ -2360,6 +2360,22 @@ agentkeepalive@^3.4.1:
23602360
dependencies:
23612361
humanize-ms "^1.2.1"
23622362

2363+
airbnb-prop-types@^2.12.0:
2364+
version "2.13.2"
2365+
resolved "https://registry.yarnpkg.com/airbnb-prop-types/-/airbnb-prop-types-2.13.2.tgz#43147a5062dd2a4a5600e748a47b64004cc5f7fc"
2366+
integrity sha512-2FN6DlHr6JCSxPPi25EnqGaXC4OC3/B3k1lCd6MMYrZ51/Gf/1qDfaR+JElzWa+Tl7cY2aYOlsYJGFeQyVHIeQ==
2367+
dependencies:
2368+
array.prototype.find "^2.0.4"
2369+
function.prototype.name "^1.1.0"
2370+
has "^1.0.3"
2371+
is-regex "^1.0.4"
2372+
object-is "^1.0.1"
2373+
object.assign "^4.1.0"
2374+
object.entries "^1.1.0"
2375+
prop-types "^15.7.2"
2376+
prop-types-exact "^1.2.0"
2377+
react-is "^16.8.6"
2378+
23632379
ajv-errors@^1.0.0:
23642380
version "1.0.1"
23652381
resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d"
@@ -2653,6 +2669,14 @@ array-unique@^0.3.2:
26532669
resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428"
26542670
integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=
26552671

2672+
array.prototype.find@^2.0.4:
2673+
version "2.0.4"
2674+
resolved "https://registry.yarnpkg.com/array.prototype.find/-/array.prototype.find-2.0.4.tgz#556a5c5362c08648323ddaeb9de9d14bc1864c90"
2675+
integrity sha1-VWpcU2LAhkgyPdrrnenRS8GGTJA=
2676+
dependencies:
2677+
define-properties "^1.1.2"
2678+
es-abstract "^1.7.0"
2679+
26562680
array.prototype.flat@^1.2.1:
26572681
version "1.2.1"
26582682
resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.1.tgz#812db8f02cad24d3fab65dd67eabe3b8903494a4"
@@ -3307,7 +3331,7 @@ browserify-zlib@^0.2.0:
33073331
dependencies:
33083332
pako "~1.0.5"
33093333

3310-
browserslist@^4.0.0, browserslist@^4.1.0, browserslist@^4.3.4, browserslist@^4.4.2, browserslist@^4.5.1:
3334+
browserslist@^4.0.0, browserslist@^4.1.0, browserslist@^4.4.2, browserslist@^4.5.1:
33113335
version "4.5.2"
33123336
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.5.2.tgz#36ad281f040af684555a23c780f5c2081c752df0"
33133337
integrity sha512-zmJVLiKLrzko0iszd/V4SsjTaomFeoVzQGYYOYgRgsbh7WNh95RgDB0CmBdFWYs/3MyFSt69NypjL/h3iaddKQ==
@@ -3573,7 +3597,7 @@ caniuse-api@^3.0.0:
35733597
lodash.memoize "^4.1.2"
35743598
lodash.uniq "^4.5.0"
35753599

3576-
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000947, caniuse-lite@^1.0.30000948, caniuse-lite@^1.0.30000951:
3600+
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000947, caniuse-lite@^1.0.30000951:
35773601
version "1.0.30000951"
35783602
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000951.tgz#c7c2fd4d71080284c8677dd410368df8d83688fe"
35793603
integrity sha512-eRhP+nQ6YUkIcNQ6hnvdhMkdc7n3zadog0KXNRxAZTT2kHjUb1yGn71OrPhSn8MOvlX97g5CR97kGVj8fMsXWg==
@@ -5365,31 +5389,32 @@ entities@^1.1.1, entities@~1.1.1:
53655389
resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56"
53665390
integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==
53675391

5368-
enzyme-adapter-react-16@^1.11.2:
5369-
version "1.11.2"
5370-
resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.11.2.tgz#8efeafb27e96873a5492fdef3f423693182eb9d4"
5371-
integrity sha512-2ruTTCPRb0lPuw/vKTXGVZVBZqh83MNDnakMhzxhpJcIbneEwNy2Cv0KvL97pl57/GOazJHflWNLjwWhex5AAA==
5392+
enzyme-adapter-react-16@^1.12.1:
5393+
version "1.12.1"
5394+
resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.12.1.tgz#6a2d74c80559d35ac0a91ca162fa45f4186290cf"
5395+
integrity sha512-GB61gvY97XvrA6qljExGY+lgI6BBwz+ASLaRKct9VQ3ozu0EraqcNn3CcrUckSGIqFGa1+CxO5gj5is5t3lwrw==
53725396
dependencies:
5373-
enzyme-adapter-utils "^1.10.1"
5397+
enzyme-adapter-utils "^1.11.0"
53745398
object.assign "^4.1.0"
53755399
object.values "^1.1.0"
53765400
prop-types "^15.7.2"
5377-
react-is "^16.8.4"
5401+
react-is "^16.8.6"
53785402
react-test-renderer "^16.0.0-0"
53795403
semver "^5.6.0"
53805404

5381-
enzyme-adapter-utils@^1.10.1:
5382-
version "1.10.1"
5383-
resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.10.1.tgz#58264efa19a7befdbf964fb7981a108a5452ac96"
5384-
integrity sha512-oasinhhLoBuZsIkTe8mx0HiudtfErUtG0Ooe1FOplu/t4c9rOmyG5gtrBASK6u4whHIRWvv0cbZMElzNTR21SA==
5405+
enzyme-adapter-utils@^1.11.0:
5406+
version "1.11.0"
5407+
resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.11.0.tgz#6ffff782b1b57dd46c72a845a91fc4103956a117"
5408+
integrity sha512-0VZeoE9MNx+QjTfsjmO1Mo+lMfunucYB4wt5ficU85WB/LoetTJrbuujmHP3PJx6pSoaAuLA+Mq877x4LoxdNg==
53855409
dependencies:
5410+
airbnb-prop-types "^2.12.0"
53865411
function.prototype.name "^1.1.0"
53875412
object.assign "^4.1.0"
53885413
object.fromentries "^2.0.0"
53895414
prop-types "^15.7.2"
53905415
semver "^5.6.0"
53915416

5392-
enzyme@^3.5.0:
5417+
enzyme@^3.9.0:
53935418
version "3.9.0"
53945419
resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.9.0.tgz#2b491f06ca966eb56b6510068c7894a7e0be3909"
53955420
integrity sha512-JqxI2BRFHbmiP7/UFqvsjxTirWoM1HfeaJrmVSZ9a1EADKkZgdPcAuISPMpoUiHlac9J4dYt81MC5BBIrbJGMg==
@@ -9361,7 +9386,7 @@ node-pre-gyp@^0.10.0:
93619386
semver "^5.3.0"
93629387
tar "^4"
93639388

9364-
node-releases@^1.1.10, node-releases@^1.1.11:
9389+
node-releases@^1.1.11:
93659390
version "1.1.11"
93669391
resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.11.tgz#9a0841a4b0d92b7d5141ed179e764f42ad22724a"
93679392
integrity sha512-8v1j5KfP+s5WOTa1spNUAOfreajQPN12JXbRR0oDE+YrJBQCXBnNqUDj27EKpPLOoSiU3tKi3xGPB+JaOdUEQQ==
@@ -9651,7 +9676,7 @@ object.assign@^4.1.0:
96519676
has-symbols "^1.0.0"
96529677
object-keys "^1.0.11"
96539678

9654-
object.entries@^1.0.4:
9679+
object.entries@^1.0.4, object.entries@^1.1.0:
96559680
version "1.1.0"
96569681
resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.0.tgz#2024fc6d6ba246aee38bdb0ffd5cfbcf371b7519"
96579682
integrity sha512-l+H6EQ8qzGRxbkHOd5I/aHRhHDKoQXQ8g0BYt4uSweQU1/J6dZUOyWh9a2Vky35YCKjzmgxOzta2hH6kf9HuXA==
@@ -10714,7 +10739,7 @@ promzard@^0.3.0:
1071410739
dependencies:
1071510740
read "1"
1071610741

10717-
10742+
[email protected], prop-types-exact@^1.2.0:
1071810743
version "1.2.0"
1071910744
resolved "https://registry.yarnpkg.com/prop-types-exact/-/prop-types-exact-1.2.0.tgz#825d6be46094663848237e3925a98c6e944e9869"
1072010745
integrity sha512-K+Tk3Kd9V0odiXFP9fwDHUYRyvK3Nun3GVyPapSIs5OBkITAm15W0CPFD/YKTkMUAbc0b9CUwRQp2ybiBIq+eA==
@@ -11061,7 +11086,7 @@ react-inspector@^2.2.2:
1106111086
is-dom "^1.0.9"
1106211087
prop-types "^15.6.1"
1106311088

11064-
[email protected], react-is@^16.5.2, react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.0, react-is@^16.8.1, react-is@^16.8.2, react-is@^16.8.4, react-is@^16.8.5:
11089+
[email protected], react-is@^16.5.2, react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.0, react-is@^16.8.1, react-is@^16.8.2, react-is@^16.8.5, react-is@^16.8.6:
1106511090
version "16.8.6"
1106611091
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16"
1106711092
integrity sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA==
@@ -11584,7 +11609,7 @@ regexpp@^2.0.1:
1158411609
resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f"
1158511610
integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==
1158611611

11587-
regexpu-core@^4.1.3, regexpu-core@^4.2.0, regexpu-core@^4.5.4:
11612+
regexpu-core@^4.1.3, regexpu-core@^4.5.4:
1158811613
version "4.5.4"
1158911614
resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.5.4.tgz#080d9d02289aa87fe1667a4f5136bc98a6aebaae"
1159011615
integrity sha512-BtizvGtFQKGPUcTy56o3nk1bGRp4SZOTYrDtGNlqCQufptV5IkkLN6Emw+yunAJjzf+C9FQFtvq7IoA3+oMYHQ==

0 commit comments

Comments
 (0)