File tree 3 files changed +14
-46
lines changed
3 files changed +14
-46
lines changed Original file line number Diff line number Diff line change 1
- import React , { Component } from 'react' ;
1
+ import React from 'react' ;
2
2
import { compose } from 'recompose' ;
3
3
4
4
import { withAuthorization , withEmailVerification } from '../Session' ;
5
- import { withFirebase } from '../Firebase' ;
6
5
import Messages from '../Messages' ;
7
6
8
- class HomePage extends Component {
9
- constructor ( props ) {
10
- super ( props ) ;
7
+ const HomePage = ( ) => (
8
+ < div >
9
+ < h1 > Home Page</ h1 >
10
+ < p > The Home Page is accessible by every signed in user.</ p >
11
11
12
- this . state = {
13
- users : null ,
14
- } ;
15
- }
16
-
17
- componentDidMount ( ) {
18
- this . props . firebase . users ( ) . on ( 'value' , snapshot => {
19
- this . setState ( {
20
- users : snapshot . val ( ) ,
21
- } ) ;
22
- } ) ;
23
- }
24
-
25
- componentWillUnmount ( ) {
26
- this . props . firebase . users ( ) . off ( ) ;
27
- }
28
-
29
- render ( ) {
30
- return (
31
- < div >
32
- < h1 > Home Page</ h1 >
33
- < p > The Home Page is accessible by every signed in user.</ p >
34
-
35
- < Messages users = { this . state . users } />
36
- </ div >
37
- ) ;
38
- }
39
- }
12
+ < Messages />
13
+ </ div >
14
+ ) ;
40
15
41
16
const condition = authUser => ! ! authUser ;
42
17
43
18
export default compose (
44
- withFirebase ,
45
19
withEmailVerification ,
46
20
withAuthorization ( condition ) ,
47
21
) ( HomePage ) ;
Original file line number Diff line number Diff line change @@ -41,10 +41,8 @@ class MessageItem extends Component {
41
41
/>
42
42
) : (
43
43
< span >
44
- < strong >
45
- { message . user . username || message . user . userId }
46
- </ strong > { ' ' }
47
- { message . text } { message . editedAt && < span > (Edited)</ span > }
44
+ < strong > { message . userId } </ strong > { message . text }
45
+ { message . editedAt && < span > (Edited)</ span > }
48
46
</ span >
49
47
) }
50
48
Original file line number Diff line number Diff line change @@ -67,8 +67,10 @@ class Messages extends Component {
67
67
} ;
68
68
69
69
onEditMessage = ( message , text ) => {
70
+ const { uid, ...messageSnapshot } = message ;
71
+
70
72
this . props . firebase . message ( message . uid ) . set ( {
71
- ...message ,
73
+ ...messageSnapshot ,
72
74
text,
73
75
editedAt : this . props . firebase . serverValue . TIMESTAMP ,
74
76
} ) ;
@@ -86,7 +88,6 @@ class Messages extends Component {
86
88
} ;
87
89
88
90
render ( ) {
89
- const { users } = this . props ;
90
91
const { text, messages, loading } = this . state ;
91
92
92
93
return (
@@ -103,12 +104,7 @@ class Messages extends Component {
103
104
104
105
{ messages && (
105
106
< MessageList
106
- messages = { messages . map ( message => ( {
107
- ...message ,
108
- user : users
109
- ? users [ message . userId ]
110
- : { userId : message . userId } ,
111
- } ) ) }
107
+ messages = { messages }
112
108
onEditMessage = { this . onEditMessage }
113
109
onRemoveMessage = { this . onRemoveMessage }
114
110
/>
You can’t perform that action at this time.
0 commit comments