Making WordPress.org


Ignore:
Timestamp:
03/01/2017 06:08:54 PM (7 years ago)
Author:
obenland
Message:

Plugin Directory: Update React client with latest changes.

This is largely a cleanup commit with some WIP around switching to node-wpapi.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sites/trunk/wordpress.org/public_html/wp-content/themes/pub/wporg-plugins/client/components/plugin-directory.jsx

    r4223 r5024  
    1 import React from 'react';
    2 import { IndexLink } from 'react-router';
     1/**
     2 * External dependencies.
     3 */
     4import React, { PropTypes } from 'react';
    35
     6/**
     7 * Internal dependencies.
     8 */
    49import TextWidget from 'components/widget-area/widgets/text';
    510import WidgetArea from 'components/widget-area';
    611
    7 export default React.createClass( {
    8     displayName: 'PluginDirectory',
    9 
    10     widgetArea() {
    11         return (
    12             <WidgetArea { ...this.props }>
    13                 { this.props.widgets.map( widget =>
     12export const PluginDirectory = ( { header, main, router, widgets } ) => (
     13    <div>
     14        { header }
     15        { main }
     16        { router.isActive( '/', true ) &&
     17            <WidgetArea>
     18                { widgets.map( ( widget ) =>
    1419                    <TextWidget key={ widget.title } widget={ widget } />
    1520                ) }
    1621            </WidgetArea>
    17         );
    18     },
     22        }
     23    </div>
     24);
    1925
    20     render() {
    21         return (
    22             <div>
    23                 { this.props.header }
    24                 { this.props.main }
    25                 { this.props.router.isActive( '/', true ) ? this.widgetArea() : <div /> }
    26             </div>
    27         )
    28     }
    29 } );
     26PluginDirectory.propTypes = {
     27    header: PropTypes.object,
     28    main: PropTypes.object,
     29    router: PropTypes.object,
     30    widgets: PropTypes.arrayOf( PropTypes.object ),
     31};
    3032
     33PluginDirectory.defaultProps = {
     34    header: {},
     35    main: {},
     36    router: {},
     37    widgets: [],
     38};
     39
     40export default PluginDirectory;
Note: See TracChangeset for help on using the changeset viewer.