From ebe5dca7a95d6346cf64e43d318fd01d7674207d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Losada=20Hern=C3=A1ndez?= Date: Sun, 13 Oct 2024 10:51:06 +0200 Subject: [PATCH 01/12] remove unnecessary child in nav --- client/homebrew/navbar/navbar.less | 11 +++++------ client/homebrew/pages/sharePage/sharePage.less | 2 +- shared/naturalcrit/nav/nav.jsx | 4 +--- 3 files changed, 7 insertions(+), 10 deletions(-) diff --git a/client/homebrew/navbar/navbar.less b/client/homebrew/navbar/navbar.less index c1cda38c3..ae11c1e7e 100644 --- a/client/homebrew/navbar/navbar.less +++ b/client/homebrew/navbar/navbar.less @@ -25,12 +25,11 @@ .homebrew nav { background-color : #333333; - .navContent { - position : relative; - z-index : 2; - display : flex; - justify-content : space-between; - } + position : relative; + z-index : 2; + display : flex; + justify-content : space-between; + .navSection { display : flex; align-items : center; diff --git a/client/homebrew/pages/sharePage/sharePage.less b/client/homebrew/pages/sharePage/sharePage.less index 83e784c49..754108506 100644 --- a/client/homebrew/pages/sharePage/sharePage.less +++ b/client/homebrew/pages/sharePage/sharePage.less @@ -1,5 +1,5 @@ .sharePage{ - .navContent .navSection.titleSection { + nav .navSection.titleSection { flex-grow: 1; justify-content: center; } diff --git a/shared/naturalcrit/nav/nav.jsx b/shared/naturalcrit/nav/nav.jsx index a4682aeab..d9b403239 100644 --- a/shared/naturalcrit/nav/nav.jsx +++ b/shared/naturalcrit/nav/nav.jsx @@ -12,10 +12,8 @@ const Nav = { displayName : 'Nav.base', render : function(){ return ; + ; } }), logo : function(){ From 6e241c5bcdd3570e28354a39ae71c8ea372d1f95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Losada=20Hern=C3=A1ndez?= Date: Sun, 13 Oct 2024 10:53:05 +0200 Subject: [PATCH 02/12] remove splitpane parent --- client/homebrew/pages/editPage/editPage.jsx | 70 +++++++++---------- client/homebrew/pages/homePage/homePage.jsx | 54 +++++++------- client/homebrew/pages/newPage/newPage.jsx | 64 ++++++++--------- client/homebrew/pages/vaultPage/vaultPage.jsx | 17 ++--- 4 files changed, 97 insertions(+), 108 deletions(-) diff --git a/client/homebrew/pages/editPage/editPage.jsx b/client/homebrew/pages/editPage/editPage.jsx index fcc43e81a..c33c3aa98 100644 --- a/client/homebrew/pages/editPage/editPage.jsx +++ b/client/homebrew/pages/editPage/editPage.jsx @@ -429,42 +429,40 @@ const EditPage = createClass({ {this.renderNavbar()} -
- {this.props.brew.lock && } - - - - -
+ {this.props.brew.lock && } + + + + ; } }); diff --git a/client/homebrew/pages/homePage/homePage.jsx b/client/homebrew/pages/homePage/homePage.jsx index ac3be81df..3b21c7398 100644 --- a/client/homebrew/pages/homePage/homePage.jsx +++ b/client/homebrew/pages/homePage/homePage.jsx @@ -100,35 +100,31 @@ const HomePage = createClass({ return
{this.renderNavbar()} - -
- - - - -
- + + + +
Save current
diff --git a/client/homebrew/pages/newPage/newPage.jsx b/client/homebrew/pages/newPage/newPage.jsx index c147cd474..cb8d5b3ae 100644 --- a/client/homebrew/pages/newPage/newPage.jsx +++ b/client/homebrew/pages/newPage/newPage.jsx @@ -223,39 +223,37 @@ const NewPage = createClass({ render : function(){ return
{this.renderNavbar()} -
- - - - -
+ + + +
; } }); diff --git a/client/homebrew/pages/vaultPage/vaultPage.jsx b/client/homebrew/pages/vaultPage/vaultPage.jsx index a51039345..55b0cb370 100644 --- a/client/homebrew/pages/vaultPage/vaultPage.jsx +++ b/client/homebrew/pages/vaultPage/vaultPage.jsx @@ -415,16 +415,13 @@ const VaultPage = (props)=>{ {renderNavItems()} -
- -
{renderForm()}
- -
- {renderSortBar()} - {renderFoundBrews()} -
-
-
+ +
{renderForm()}
+
+ {renderSortBar()} + {renderFoundBrews()} +
+
); }; From 0663e82fa1ab0f043ed8076213b096ce7a744262 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Losada=20Hern=C3=A1ndez?= Date: Sun, 13 Oct 2024 10:58:24 +0200 Subject: [PATCH 03/12] remove unnecessary space in homepage markdown --- client/homebrew/pages/homePage/welcome_msg.md | 7 ------- 1 file changed, 7 deletions(-) diff --git a/client/homebrew/pages/homePage/welcome_msg.md b/client/homebrew/pages/homePage/welcome_msg.md index c7d46149e..49d1918f0 100644 --- a/client/homebrew/pages/homePage/welcome_msg.md +++ b/client/homebrew/pages/homePage/welcome_msg.md @@ -91,13 +91,6 @@ If you are looking for more 5e Homebrew resources check out [r/UnearthedArcana]( \page - - - - - - - ## Markdown+ The Homebrewery aims to make homebrewing as simple as possible, providing a live editor with Markdown syntax that is more human-readable and faster to write with than raw HTML. From 9d2a305f038dc2586a2a42debfeb24168b472776 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Losada=20Hern=C3=A1ndez?= Date: Wed, 23 Oct 2024 09:02:23 +0200 Subject: [PATCH 04/12] initial commit --- client/homebrew/pages/userPage/userPage.jsx | 103 ++++++++------------ 1 file changed, 42 insertions(+), 61 deletions(-) diff --git a/client/homebrew/pages/userPage/userPage.jsx b/client/homebrew/pages/userPage/userPage.jsx index d6fe25b30..fae39846c 100644 --- a/client/homebrew/pages/userPage/userPage.jsx +++ b/client/homebrew/pages/userPage/userPage.jsx @@ -1,6 +1,6 @@ const React = require('react'); -const createClass = require('create-react-class'); -const _ = require('lodash'); +const { useState, useEffect } = require('react'); +const _ = require('lodash'); const ListPage = require('../basePages/listPage/listPage.jsx'); @@ -14,69 +14,50 @@ const HelpNavItem = require('../../navbar/help.navitem.jsx'); const ErrorNavItem = require('../../navbar/error-navitem.jsx'); const VaultNavitem = require('../../navbar/vault.navitem.jsx'); -const UserPage = createClass({ - displayName : 'UserPage', - getDefaultProps : function() { - return { - username : '', - brews : [], - query : '', - error : null - }; - }, - getInitialState : function() { - const usernameWithS = this.props.username + (this.props.username.endsWith('s') ? `’` : `’s`); +const UserPage = (props) => { + const { username = '', brews = [], query = '', error = null } = props; + const usernameWithS = username + (username.endsWith('s') ? `’` : `’s`); - const brews = _.groupBy(this.props.brews, (brew)=>{ - return (brew.published ? 'published' : 'private'); - }); + const groupedBrews = _.groupBy(brews, (brew) => { + return brew.published ? 'published' : 'private'; + }); - const brewCollection = [ - { - title : `${usernameWithS} published brews`, - class : 'published', - brews : brews.published - } - ]; - if(this.props.username == global.account?.username){ - brewCollection.push( - { - title : `${usernameWithS} unpublished brews`, - class : 'unpublished', - brews : brews.private - } - ); - } + const brewCollection = [ + { + title: `${usernameWithS} published brews`, + class: 'published', + brews: groupedBrews.published || [] + }, + ...(username === global.account?.username ? [{ + title: `${usernameWithS} unpublished brews`, + class: 'unpublished', + brews: groupedBrews.private || [] + }] : []) + ]; - return { - brewCollection : brewCollection - }; - }, - errorReported : function(error) { - this.setState({ - error - }); - }, + const [currentError, setCurrentError] = useState(error); - navItems : function() { - return - - {this.state.error ? - : - null - } - - - - - - - ; - }, + const errorReported = (error) => { + setCurrentError(error); + }; - render : function(){ - return ; - } -}); + const navItems = () => ( + + + {currentError && ()} + + + + + + + + ); + + return ( + + ); +}; module.exports = UserPage; From b9bf9c7e70fe6704e9cb4ce3a4fd4eb2cfd8d764 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Losada=20Hern=C3=A1ndez?= Date: Wed, 23 Oct 2024 17:03:00 +0200 Subject: [PATCH 05/12] "Refactor UserPage component: removed unnecessary import, updated function signature, and moved useState hook declaration" --- client/homebrew/pages/userPage/userPage.jsx | 23 +++++++-------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/client/homebrew/pages/userPage/userPage.jsx b/client/homebrew/pages/userPage/userPage.jsx index fae39846c..4fdd8cf93 100644 --- a/client/homebrew/pages/userPage/userPage.jsx +++ b/client/homebrew/pages/userPage/userPage.jsx @@ -1,12 +1,11 @@ const React = require('react'); -const { useState, useEffect } = require('react'); +const { useState } = React; const _ = require('lodash'); const ListPage = require('../basePages/listPage/listPage.jsx'); const Nav = require('naturalcrit/nav/nav.jsx'); const Navbar = require('../../navbar/navbar.jsx'); - const RecentNavItem = require('../../navbar/recent.navitem.jsx').both; const Account = require('../../navbar/account.navitem.jsx'); const NewBrew = require('../../navbar/newbrew.navitem.jsx'); @@ -14,13 +13,12 @@ const HelpNavItem = require('../../navbar/help.navitem.jsx'); const ErrorNavItem = require('../../navbar/error-navitem.jsx'); const VaultNavitem = require('../../navbar/vault.navitem.jsx'); -const UserPage = (props) => { - const { username = '', brews = [], query = '', error = null } = props; - const usernameWithS = username + (username.endsWith('s') ? `’` : `’s`); +const UserPage = ({ username = '', brews = [], query = '', error = null, ...props }) => { - const groupedBrews = _.groupBy(brews, (brew) => { - return brew.published ? 'published' : 'private'; - }); + const [currentError, setCurrentError] = useState(error); + + const usernameWithS = username + (username.endsWith('s') ? `’` : `’s`); + const groupedBrews = _.groupBy(brews, brew => brew.published ? 'published' : 'private'); const brewCollection = [ { @@ -35,12 +33,6 @@ const UserPage = (props) => { }] : []) ]; - const [currentError, setCurrentError] = useState(error); - - const errorReported = (error) => { - setCurrentError(error); - }; - const navItems = () => ( @@ -55,8 +47,7 @@ const UserPage = (props) => { ); return ( - + setCurrentError(error)} /> ); }; From 422257743e5234808c1c483bec66868a8eb7f853 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Losada=20Hern=C3=A1ndez?= <5ecleric.naturalcrit@gmail.com> Date: Thu, 24 Oct 2024 20:39:59 +0200 Subject: [PATCH 06/12] accept navitems suggestion Co-authored-by: Trevor Buckner --- client/homebrew/pages/userPage/userPage.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/homebrew/pages/userPage/userPage.jsx b/client/homebrew/pages/userPage/userPage.jsx index 4fdd8cf93..9ef1e6535 100644 --- a/client/homebrew/pages/userPage/userPage.jsx +++ b/client/homebrew/pages/userPage/userPage.jsx @@ -33,7 +33,7 @@ const UserPage = ({ username = '', brews = [], query = '', error = null, ...prop }] : []) ]; - const navItems = () => ( + const navItems = ( {currentError && ()} From 9770fea3fdcbbf1b709eb345d2d8bb7953691043 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Losada=20Hern=C3=A1ndez?= <5ecleric.naturalcrit@gmail.com> Date: Thu, 24 Oct 2024 21:13:49 +0200 Subject: [PATCH 07/12] update navitems call as suggested Co-authored-by: Trevor Buckner --- client/homebrew/pages/userPage/userPage.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/homebrew/pages/userPage/userPage.jsx b/client/homebrew/pages/userPage/userPage.jsx index 9ef1e6535..d57fc747e 100644 --- a/client/homebrew/pages/userPage/userPage.jsx +++ b/client/homebrew/pages/userPage/userPage.jsx @@ -47,7 +47,7 @@ const UserPage = ({ username = '', brews = [], query = '', error = null, ...prop ); return ( - setCurrentError(error)} /> + setCurrentError(error)} /> ); }; From b129ec146932c58bbdd5d8b93ea6ea0fee1ad96e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Losada=20Hern=C3=A1ndez?= Date: Sat, 26 Oct 2024 19:43:27 +0200 Subject: [PATCH 08/12] linting --- client/homebrew/pages/userPage/userPage.jsx | 52 ++++++++++----------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/client/homebrew/pages/userPage/userPage.jsx b/client/homebrew/pages/userPage/userPage.jsx index 4fdd8cf93..ebc0ee026 100644 --- a/client/homebrew/pages/userPage/userPage.jsx +++ b/client/homebrew/pages/userPage/userPage.jsx @@ -13,42 +13,42 @@ const HelpNavItem = require('../../navbar/help.navitem.jsx'); const ErrorNavItem = require('../../navbar/error-navitem.jsx'); const VaultNavitem = require('../../navbar/vault.navitem.jsx'); -const UserPage = ({ username = '', brews = [], query = '', error = null, ...props }) => { +const UserPage = ({ username = '', brews = [], query = '', error = null, ...props })=>{ - const [currentError, setCurrentError] = useState(error); + const [currentError, setCurrentError] = useState(error); - const usernameWithS = username + (username.endsWith('s') ? `’` : `’s`); - const groupedBrews = _.groupBy(brews, brew => brew.published ? 'published' : 'private'); + const usernameWithS = username + (username.endsWith('s') ? `’` : `’s`); + const groupedBrews = _.groupBy(brews, (brew)=>brew.published ? 'published' : 'private'); const brewCollection = [ { - title: `${usernameWithS} published brews`, - class: 'published', - brews: groupedBrews.published || [] + title : `${usernameWithS} published brews`, + class : 'published', + brews : groupedBrews.published || [] }, ...(username === global.account?.username ? [{ - title: `${usernameWithS} unpublished brews`, - class: 'unpublished', - brews: groupedBrews.private || [] + title : `${usernameWithS} unpublished brews`, + class : 'unpublished', + brews : groupedBrews.private || [] }] : []) - ]; + ]; - const navItems = () => ( - - - {currentError && ()} - - - - - - - - ); + const navItems = ()=>( + + + {currentError && ()} + + + + + + + + ); - return ( - setCurrentError(error)} /> - ); + return ( + setCurrentError(error)} /> + ); }; module.exports = UserPage; From ef1e0f1faab649bb7bde991b6e9418f3a58bc06e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Losada=20Hern=C3=A1ndez?= Date: Sat, 26 Oct 2024 19:45:26 +0200 Subject: [PATCH 09/12] destructure props as per usual --- client/homebrew/pages/userPage/userPage.jsx | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/client/homebrew/pages/userPage/userPage.jsx b/client/homebrew/pages/userPage/userPage.jsx index 50721cd3a..3970e1261 100644 --- a/client/homebrew/pages/userPage/userPage.jsx +++ b/client/homebrew/pages/userPage/userPage.jsx @@ -13,7 +13,14 @@ const HelpNavItem = require('../../navbar/help.navitem.jsx'); const ErrorNavItem = require('../../navbar/error-navitem.jsx'); const VaultNavitem = require('../../navbar/vault.navitem.jsx'); -const UserPage = ({ username = '', brews = [], query = '', error = null, ...props })=>{ +const UserPage = (props)=>{ + props = { + username : '', + brews : [], + query : '', + error : null, + ...props + }; const [currentError, setCurrentError] = useState(error); From a017c28b027a2f48e96a8fbecbbd0f89aefd51b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Losada=20Hern=C3=A1ndez?= Date: Sat, 26 Oct 2024 19:45:55 +0200 Subject: [PATCH 10/12] allow for null error instead of undefined --- client/homebrew/pages/userPage/userPage.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/homebrew/pages/userPage/userPage.jsx b/client/homebrew/pages/userPage/userPage.jsx index 3970e1261..975e475a2 100644 --- a/client/homebrew/pages/userPage/userPage.jsx +++ b/client/homebrew/pages/userPage/userPage.jsx @@ -22,7 +22,7 @@ const UserPage = (props)=>{ ...props }; - const [currentError, setCurrentError] = useState(error); + const [currentError, setCurrentError] = useState(error || null); const usernameWithS = username + (username.endsWith('s') ? `’` : `’s`); const groupedBrews = _.groupBy(brews, (brew)=>brew.published ? 'published' : 'private'); From 6f2252635a70cda2a65d726e516276d11c70b473 Mon Sep 17 00:00:00 2001 From: Trevor Buckner Date: Sat, 26 Oct 2024 22:56:29 -0400 Subject: [PATCH 11/12] Fix crash; props need `props.var` to work --- client/homebrew/pages/userPage/userPage.jsx | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/client/homebrew/pages/userPage/userPage.jsx b/client/homebrew/pages/userPage/userPage.jsx index 975e475a2..5e28051ea 100644 --- a/client/homebrew/pages/userPage/userPage.jsx +++ b/client/homebrew/pages/userPage/userPage.jsx @@ -22,10 +22,10 @@ const UserPage = (props)=>{ ...props }; - const [currentError, setCurrentError] = useState(error || null); + const [currentError, setCurrentError] = useState(props.error || null); - const usernameWithS = username + (username.endsWith('s') ? `’` : `’s`); - const groupedBrews = _.groupBy(brews, (brew)=>brew.published ? 'published' : 'private'); + const usernameWithS = props.username + (props.username.endsWith('s') ? `’` : `’s`); + const groupedBrews = _.groupBy(props.brews, (brew)=>brew.published ? 'published' : 'private'); const brewCollection = [ { @@ -33,7 +33,7 @@ const UserPage = (props)=>{ class : 'published', brews : groupedBrews.published || [] }, - ...(username === global.account?.username ? [{ + ...(props.username === global.account?.username ? [{ title : `${usernameWithS} unpublished brews`, class : 'unpublished', brews : groupedBrews.private || [] @@ -54,7 +54,7 @@ const UserPage = (props)=>{ ); return ( - setCurrentError(error)} /> + setCurrentError(err)} /> ); }; From 1b4d41fc198a87c599b0b21a61215a871e446203 Mon Sep 17 00:00:00 2001 From: Trevor Buckner Date: Sat, 26 Oct 2024 22:59:49 -0400 Subject: [PATCH 12/12] Remove `error` prop Userpage is never passed `Error` prop from anywhere. Thus we can rename the error state here from `currentError` to just `error` --- client/homebrew/pages/userPage/userPage.jsx | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/client/homebrew/pages/userPage/userPage.jsx b/client/homebrew/pages/userPage/userPage.jsx index 5e28051ea..f6fae639d 100644 --- a/client/homebrew/pages/userPage/userPage.jsx +++ b/client/homebrew/pages/userPage/userPage.jsx @@ -18,11 +18,10 @@ const UserPage = (props)=>{ username : '', brews : [], query : '', - error : null, ...props }; - const [currentError, setCurrentError] = useState(props.error || null); + const [error, setError] = useState(null); const usernameWithS = props.username + (props.username.endsWith('s') ? `’` : `’s`); const groupedBrews = _.groupBy(props.brews, (brew)=>brew.published ? 'published' : 'private'); @@ -43,7 +42,7 @@ const UserPage = (props)=>{ const navItems = ( - {currentError && ()} + {error && ()} @@ -54,7 +53,7 @@ const UserPage = (props)=>{ ); return ( - setCurrentError(err)} /> + setError(err)} /> ); };