Skip to content
This repository was archived by the owner on Apr 9, 2020. It is now read-only.

Commit ccd6dc1

Browse files
authored
Merge pull request #106 from rafeca/add-reactpurecomponent
Add React.PureComponent to the list of default super classes
2 parents df23cf0 + 4e321a5 commit ccd6dc1

File tree

6 files changed

+43
-11
lines changed

6 files changed

+43
-11
lines changed

src/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ export default function({ types: t, template }) {
171171
normalizeOptions(options) {
172172
return {
173173
factoryMethods: options.factoryMethods || ['React.createClass'],
174-
superClasses: options.superClasses || ['React.Component', 'Component'],
174+
superClasses: options.superClasses || ['React.Component', 'React.PureComponent', 'Component', 'PureComponent'],
175175
transforms: options.transforms.map(opts => {
176176
return {
177177
transform: opts.transform,
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"plugins": [
3+
["../../../src", {
4+
"transforms": [{
5+
"transform": "transform-lib"
6+
}]
7+
}]
8+
]
9+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
import React, { PureComponent } from 'react';
2+
class Foo extends PureComponent {
3+
render() {}
4+
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
import _transformLib from 'transform-lib';
2+
const _components = {
3+
Foo: {
4+
displayName: 'Foo'
5+
}
6+
};
7+
8+
const _transformLib2 = _transformLib({
9+
filename: '%FIXTURE_PATH%',
10+
components: _components,
11+
locals: [],
12+
imports: []
13+
});
14+
15+
function _wrapComponent(id) {
16+
return function (Component) {
17+
return _transformLib2(Component, id);
18+
};
19+
}
20+
21+
import React, { PureComponent } from 'react';
22+
23+
const Foo = _wrapComponent('Foo')(class Foo extends PureComponent {
24+
render() {}
25+
});
Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
1-
export default class Foo extends React.Component {}
2-
export default class extends React.Component {}
1+
export class Foo extends React.Component {}
32
export default React.createClass({});
43
export class Bar extends React.Component {}
54
export const bar = React.createClass({});
6-
export default class Baz { render() {} }
7-
export default class { render() {} }
5+
export class Baz { render() {} }
86
export class Boo { render() {} }

test/fixtures/code-exports/expected.js

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,8 @@
1-
export default class Foo extends React.Component {}
2-
export default class extends React.Component {}
1+
export class Foo extends React.Component {}
32
export default React.createClass({});
43
export class Bar extends React.Component {}
54
export const bar = React.createClass({});
6-
export default class Baz {
7-
render() {}
8-
}
9-
export default class {
5+
export class Baz {
106
render() {}
117
}
128
export class Boo {

0 commit comments

Comments
 (0)