X-Git-Url: https://git.cworth.org/git?p=lmno.games;a=blobdiff_plain;f=empathy%2Fempathy.jsx;h=959c3feaea8f685f42dd60af38fc6b086d8326ab;hp=1867381f15d4472ecff3775382b9d0b38ae50c01;hb=b28c923a50b2fc9001fdff69e18506ea02470fe5;hpb=fcdecf554d0bbad80b96b3c34fb5ba8cefef2144 diff --git a/empathy/empathy.jsx b/empathy/empathy.jsx index 1867381..959c3fe 100644 --- a/empathy/empathy.jsx +++ b/empathy/empathy.jsx @@ -80,7 +80,7 @@ function copy_to_clipboard(id) document.body.removeChild(tmp); } -function GameInfo(props) { +const GameInfo = React.memo(props => { if (! props.id) return null; @@ -97,9 +97,9 @@ function GameInfo(props) { >Copy Link ); -} +}); -function PlayerInfo(props) { +const PlayerInfo = React.memo(props => { if (! props.player.id) return null; @@ -115,7 +115,7 @@ function PlayerInfo(props) { ))} ); -} +}); function fetch_method_json(method, api = '', data = {}) { const response = fetch(api, { @@ -136,7 +136,7 @@ async function fetch_put_json(api = '', data = {}) { return fetch_method_json('PUT', api, data); } -class CategoryRequest extends React.Component { +class CategoryRequest extends React.PureComponent { constructor(props) { super(props); this.category = React.createRef(); @@ -210,7 +210,7 @@ class CategoryRequest extends React.Component { } } -function PromptOptions(props) { +const PromptOptions = React.memo(props => { function handle_click(id) { fetch_post_json(`vote/${id}`); @@ -234,14 +234,26 @@ function PromptOptions(props) { onClick={() => handle_click(p.id)} > {p.prompt} +
+ {p.votes.map(v => { + return ( +
+ {v} +
+ ); + })} +
); })} ); -} +}); -class Game extends React.Component { +class Game extends React.PureComponent { constructor(props) { super(props); this.state = {