chore(react): PureComponent -> Component

This commit is contained in:
Bouncey
2018-11-07 18:16:50 +00:00
committed by mrugesh mohapatra
parent 987da19254
commit aca424be97
18 changed files with 47 additions and 39 deletions

View File

@ -1,4 +1,4 @@
import React, { PureComponent } from 'react';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { bindActionCreators } from 'redux';
import { connect } from 'react-redux';
@ -40,7 +40,7 @@ const propTypes = {
const stripeKey = 'pk_live_E6Z6xPM8pEsJziHW905zpAvF';
class DonationModal extends PureComponent {
class DonationModal extends Component {
constructor(...props) {
super(...props);
this.state = {

View File

@ -1,4 +1,4 @@
import React, { PureComponent } from 'react';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { Button } from '@freecodecamp/react-bootstrap';
@ -9,7 +9,7 @@ const propTypes = {
handleSubmit: PropTypes.func.isRequired
};
class CardForm extends PureComponent {
class CardForm extends Component {
constructor(...props) {
super(...props);

View File

@ -1,4 +1,4 @@
import React, { PureComponent, Fragment } from 'react';
import React, { Component, Fragment } from 'react';
import PropTypes from 'prop-types';
import isEmail from 'validator/lib/isEmail';
@ -23,7 +23,7 @@ const initialSate = {
}
};
class DonateForm extends PureComponent {
class DonateForm extends Component {
constructor(...args) {
super(...args);
const [props] = args;

View File

@ -1,4 +1,4 @@
import React, { PureComponent } from 'react';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import {
CardNumberElement,
@ -17,7 +17,7 @@ const style = {
}
};
class StripCardForm extends PureComponent {
class StripCardForm extends Component {
constructor(...props) {
super(...props);

View File

@ -1,30 +1,37 @@
import React from 'react';
import PropTypes from 'prop-types';
import { connect } from 'react-redux';
import { createSelector } from 'reselect';
import { Button } from '@freecodecamp/react-bootstrap';
import { hardGoTo } from '../../../redux';
import { hardGoTo, isSignedInSelector } from '../../../redux';
import { apiLocation } from '../../../../config/env.json';
import { gtagReportConversion } from '../../../analytics/gtag';
import './login.css';
const mapStateToProps = () => ({});
const mapStateToProps = createSelector(
isSignedInSelector,
({ isSingedIn }) => ({ isSingedIn })
);
const mapDispatchToProps = dispatch => ({
navigate: location => dispatch(hardGoTo(location))
});
const createOnClick = navigate => e => {
const createOnClick = (navigate, isSingedIn) => e => {
e.preventDefault();
gtagReportConversion();
if (isSingedIn) {
return navigate('/welcome');
}
return navigate(`${apiLocation}/signin`);
};
function Login(props) {
const { children, navigate, ...restProps } = props;
const { children, navigate, isSingedIn, ...restProps } = props;
return (
<a href='/signin' onClick={createOnClick(navigate)}>
<a href='/signin' onClick={createOnClick(navigate, isSingedIn)}>
<Button
{...restProps}
bsStyle='default'
@ -41,6 +48,7 @@ function Login(props) {
Login.displayName = 'Login';
Login.propTypes = {
children: PropTypes.any,
isSingedIn: PropTypes.bool,
navigate: PropTypes.func.isRequired
};

View File

@ -1,4 +1,4 @@
import React, { PureComponent } from 'react';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import uniq from 'lodash/uniq';
@ -21,7 +21,7 @@ const propTypes = {
nodes: PropTypes.arrayOf(ChallengeNode)
};
class ShowMap extends PureComponent {
class ShowMap extends Component {
renderSuperBlocks(superBlocks) {
const { nodes, introNodes } = this.props;
return superBlocks.map(superBlock => (

View File

@ -1,4 +1,4 @@
import React, { PureComponent } from 'react';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { bindActionCreators } from 'redux';
import { connect } from 'react-redux';
@ -46,7 +46,7 @@ const propTypes = {
const mapIconStyle = { height: '15px', marginRight: '10px', width: '15px' };
export class Block extends PureComponent {
export class Block extends Component {
constructor(...props) {
super(...props);

View File

@ -1,4 +1,4 @@
import React, { PureComponent } from 'react';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { bindActionCreators } from 'redux';
import { connect } from 'react-redux';
@ -52,7 +52,7 @@ function createSuperBlockTitle(str) {
: `${str} Certification (300 hours)`;
}
export class SuperBlock extends PureComponent {
export class SuperBlock extends Component {
renderBlock(superBlock) {
const { nodes, introNodes } = this.props;
const blocksForSuperBlock = nodes.filter(

View File

@ -1,4 +1,4 @@
import React, { PureComponent, Fragment } from 'react';
import React, { Component, Fragment } from 'react';
import PropTypes from 'prop-types';
import nanoid from 'nanoid';
import {
@ -51,7 +51,7 @@ const mockEvent = {
preventDefault() {}
};
class PortfolioSettings extends PureComponent {
class PortfolioSettings extends Component {
constructor(props) {
super(props);

View File

@ -1,4 +1,4 @@
import React, { PureComponent, createContext } from 'react';
import React, { Component, createContext } from 'react';
import PropTypes from 'prop-types';
const noop = () => {};
@ -19,7 +19,7 @@ const propTypes = {
children: PropTypes.any
};
class NavigationContextProvider extends PureComponent {
class NavigationContextProvider extends Component {
constructor(...props) {
super(...props);

View File

@ -1,4 +1,4 @@
import React, { PureComponent } from 'react';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { bindActionCreators } from 'redux';
import { connect } from 'react-redux';
@ -65,7 +65,7 @@ const defineMonacoThemes = monaco => {
});
};
class Editor extends PureComponent {
class Editor extends Component {
constructor(...props) {
super(...props);

View File

@ -1,4 +1,4 @@
import React, { PureComponent } from 'react';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import noop from 'lodash/noop';
import { connect } from 'react-redux';
@ -59,7 +59,7 @@ const propTypes = {
title: PropTypes.string
};
export class CompletionModal extends PureComponent {
export class CompletionModal extends Component {
render() {
const {
close,

View File

@ -1,4 +1,4 @@
import React, { PureComponent } from 'react';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { bindActionCreators } from 'redux';
import { connect } from 'react-redux';
@ -24,7 +24,7 @@ const RSA =
'https://forum.freecodecamp.org/t/the-read-search-ask-methodology-for-' +
'getting-unstuck/137307';
export class HelpModal extends PureComponent {
export class HelpModal extends Component {
render() {
const { isOpen, closeHelpModal, createQuestion } = this.props;
if (isOpen) {

View File

@ -1,4 +1,4 @@
import React, { Fragment, PureComponent } from 'react';
import React, { Fragment, Component } from 'react';
import PropTypes from 'prop-types';
import MonacoEditor from 'react-monaco-editor';
@ -24,7 +24,7 @@ const options = {
}
};
class Output extends PureComponent {
class Output extends Component {
constructor() {
super();

View File

@ -1,4 +1,4 @@
import React, { PureComponent } from 'react';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import './preview.css';
@ -10,7 +10,7 @@ const propTypes = {
disableIframe: PropTypes.bool
};
class Preview extends PureComponent {
class Preview extends Component {
constructor(...props) {
super(...props);

View File

@ -1,4 +1,4 @@
import React, { PureComponent } from 'react';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { bindActionCreators } from 'redux';
import { connect } from 'react-redux';
@ -19,7 +19,7 @@ const propTypes = {
videoUrl: PropTypes.string
};
export class VideoModal extends PureComponent {
export class VideoModal extends Component {
render() {
const { isOpen, closeVideoModal, videoUrl } = this.props;
if (isOpen) {

View File

@ -1,4 +1,4 @@
import React, { PureComponent } from 'react';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import {
@ -35,7 +35,7 @@ const options = {
required: ['solution', 'githubLink']
};
export class ProjectForm extends PureComponent {
export class ProjectForm extends Component {
constructor(props) {
super(props);
this.state = {

View File

@ -1,4 +1,4 @@
import React, { PureComponent } from 'react';
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { bindActionCreators } from 'redux';
import { connect } from 'react-redux';
@ -23,7 +23,7 @@ const propTypes = {
openHelpModal: PropTypes.func.isRequired
};
export class ToolPanel extends PureComponent {
export class ToolPanel extends Component {
render() {
const { guideUrl, openHelpModal } = this.props;
return (