0
0
mirror of https://github.com/naturalcrit/homebrewery.git synced 2026-01-14 19:22:52 +00:00

Clean up.

This commit is contained in:
Trevor Buckner
2022-02-06 17:17:59 -05:00
parent 63e1849854
commit d38bf3b450

View File

@@ -1,20 +1,10 @@
require('./listPage.less'); require('./listPage.less');
const React = require('react'); const React = require('react');
const createClass = require('create-react-class'); const createClass = require('create-react-class');
const _ = require('lodash'); const _ = require('lodash');
const cx = require('classnames'); const moment = require('moment');
const BrewItem = require('./brewItem/brewItem.jsx');
const moment = require('moment');
// const brew = {
// title : 'SUPER Long title woah now',
// authors : []
// };
//const BREWS = _.times(25, ()=>{ return brew;});
const BrewItem = require('./brewItem/brewItem.jsx');
const ListPage = createClass({ const ListPage = createClass({
displayName : 'ListPage', displayName : 'ListPage',
@@ -41,9 +31,7 @@ const ListPage = createClass({
renderBrews : function(brews){ renderBrews : function(brews){
if(!brews || !brews.length) return <div className='noBrews'>No Brews.</div>; if(!brews || !brews.length) return <div className='noBrews'>No Brews.</div>;
const sortedBrews = this.sortBrews(brews); return _.map(brews, (brew, idx)=>{
return _.map(sortedBrews, (brew, idx)=>{
return <BrewItem brew={brew} key={idx}/>; return <BrewItem brew={brew} key={idx}/>;
}); });
}, },
@@ -60,10 +48,6 @@ const ListPage = createClass({
return mapping[this.state.sortType]; return mapping[this.state.sortType];
}, },
sortBrews : function(brews){
return _.orderBy(brews, (brew)=>{ return this.sortBrewOrder(brew); }, this.state.sortDir);
},
handleSortOptionChange : function(event){ handleSortOptionChange : function(event){
this.setState({ this.setState({
sortType : event.target.value sortType : event.target.value
@@ -141,19 +125,19 @@ const ListPage = createClass({
getSortedBrews : function(brews){ getSortedBrews : function(brews){
const testString = _.deburr(this.state.filterString).toLowerCase(); const testString = _.deburr(this.state.filterString).toLowerCase();
brews = testString ? _.filter(brews, (brew)=>{ brews = _.filter(brews, (brew)=>{
return (_.deburr(brew.title).toLowerCase().includes(testString)) || return (_.deburr(brew.title).toLowerCase().includes(testString)) ||
(_.deburr(brew.description).toLowerCase().includes(testString)); (_.deburr(brew.description).toLowerCase().includes(testString));
}) : brews; });
return brews;
return _.orderBy(brews, (brew)=>{ return this.sortBrewOrder(brew); }, this.state.sortDir);
}, },
renderBrewCollection : function(brewCollection){ renderBrewCollection : function(brewCollection){
brewCollection.brews = this.getSortedBrews(brewCollection); return _.map(brewCollection, (brewGroup, idx)=>{
return _.map(brewCollection, (brewItem, idx)=>{ return <div key={idx} className={`brewCollection ${brewGroup.class ?? ''}`}>
return <div key={idx} className={`brewCollection${brewItem?.class ? ` ${brewItem.class}` : ''}`}> <h1>{brewGroup.title || 'No Title'}</h1>
<h1>{brewItem.title || 'No Title'}</h1> {this.renderBrews(this.getSortedBrews(brewGroup.brews))}
{this.renderBrews(this.getSortedBrews(brewItem.brews))}
</div>; </div>;
}); });
}, },