11import * as React from 'react' ;
2+ import SearchWrapper from '../components/styled/SearchInputWrapper'
23import { Auth } from 'aws-amplify' ;
3- import { RouteComponentProps , withRouter } from 'react-router' ;
4- import { Layout , Menu , Icon , notification } from 'antd' ;
4+ import { withRouter } from 'react-router' ;
5+ import { Layout , Menu , Icon , notification , Button , List , Card } from 'antd' ;
6+ import { PlusOutlined , SearchOutlined , PlusCircleFilled } from '@ant-design/icons'
57
68/** App Theme */
79import { colors } from '../themes/Colors' ;
810
911/** App Constatns */
1012import { AUTH_USER_TOKEN_KEY } from '../utils/constants' ;
11- import { ClickParam } from 'antd/lib/menu' ;
1213
1314const DashBoardContainer = props => {
1415 const [ collapsed , setCollapsed ] = React . useState ( false ) ;
@@ -24,9 +25,46 @@ const DashBoardContainer = props => {
2425 }
2526 } ;
2627
28+ //Adding this temporary data till we fetch from backend
29+ const data = [
30+ {
31+ domain : 'google.co.in' ,
32+ email : [ 'abc@google.com' , "test@google.com" ]
33+ } ,
34+ {
35+ domain : 'facebook.com' ,
36+ email : [ 'abc@google.com' , "test@google.com" ]
37+ } ,
38+ {
39+ domain : 'twitter.com' ,
40+ email : [ 'abc@gmail.com' , "test@gmail.com" ]
41+ } ,
42+ {
43+ domain : 'instagram.com' ,
44+ email : [ 'abc@google.com' , "test@google.com" ]
45+ } ,
46+ {
47+ domain : 'amazon.in' ,
48+ email : [ 'abc@amazon.com' , "xyz@amazon.com" ]
49+ } ,
50+ {
51+ domain : 'flipkart.com' ,
52+ email : [ 'abc@flipkart.com' , "test@flipkart.com" ]
53+ } ,
54+ ] ;
55+
2756 return (
28- < Layout className = "cover" id = "app-header" >
29- < Layout . Sider className = "cover" trigger = { null } collapsible collapsed = { collapsed } >
57+ < Layout className = "cover" id = "app-header" style = { { minHeight : '100vh' } } >
58+ < Layout . Sider className = "cover" trigger = { null } collapsible collapsed = { collapsed } width = { 250 } >
59+ < div style = { { display :"flex" , marginTop :20 , marginBottom : 20 } } >
60+ < Icon
61+ style = { { color :colors . white , marginTop :10 , marginLeft :25 , marginRight :10 } }
62+ className = "trigger"
63+ onClick = { ( ) => setCollapsed ( ! collapsed ) }
64+ type = { collapsed ? 'menu-unfold' : 'menu-fold' }
65+ />
66+ < SearchWrapper prefix = { < SearchOutlined /> } />
67+ </ div >
3068 < div className = "logo" />
3169 < Menu theme = "dark" mode = "inline" defaultSelectedKeys = { [ '1' ] } >
3270 < Menu . Item key = "1" >
@@ -43,26 +81,37 @@ const DashBoardContainer = props => {
4381 </ Menu . Item >
4482 </ Menu >
4583 </ Layout . Sider >
46- < Layout >
84+ < Layout style = { { background : colors . white } } >
4785 < Layout . Header style = { { background : colors . white , padding : 0 } } >
48- < Icon
49- className = "trigger"
50- onClick = { ( ) => setCollapsed ( ! collapsed ) }
51- type = { collapsed ? 'menu-unfold' : 'menu-fold' }
52- />
86+
87+ < span style = { { paddingRight : 50 } } > </ span >
88+ < Button type = "primary" >
89+ < PlusOutlined />
90+ Add New
91+ </ Button >
5392 </ Layout . Header >
54- < Layout . Content
55- style = { {
56- margin : '24px 16px' ,
57- padding : 24 ,
58- background : colors . white ,
59- minHeight : 280
60- } }
61- >
62- < div className = "text-center" >
63- < h1 > Hello world</ h1 >
64- </ div >
65- </ Layout . Content >
93+ < List
94+ grid = { {
95+ gutter : 16 ,
96+ xs : 1 ,
97+ sm : 2 ,
98+ md : 4 ,
99+ lg : 4 ,
100+ xl : 6 ,
101+ xxl : 3 ,
102+ } }
103+ dataSource = { data }
104+ renderItem = { item => (
105+ < List . Item >
106+ < Card title = { item . domain } actions = { [ < PlusCircleFilled /> ] } > { < List dataSource = { item . email }
107+ renderItem = { emails => (
108+ < List . Item >
109+ { emails }
110+ </ List . Item > ) } /> }
111+ </ Card >
112+ </ List . Item >
113+ ) }
114+ />
66115 </ Layout >
67116 </ Layout >
68117 ) ;
0 commit comments