@@ -14,7 +14,7 @@ export default class MainView extends React.Component {
14
14
15
15
constructor ( props ) {
16
16
super ( props ) ;
17
- let data = [ ] ;
17
+ const data = [ ] ;
18
18
this . state = {
19
19
data,
20
20
filteredData : data ,
@@ -67,15 +67,14 @@ export default class MainView extends React.Component {
67
67
download : true ,
68
68
header : true ,
69
69
dynamicTyping : true ,
70
- complete : function ( results ) {
70
+ complete : results => {
71
71
this . parseCSV ( results ) ;
72
- } . bind ( this ) ,
73
- error : function ( err , file , inputElem , reason )
74
- {
72
+ } ,
73
+ error : ( ) => {
75
74
this . setState ( {
76
75
isError : true ,
77
76
} ) ;
78
- } . bind ( this ) ,
77
+ } ,
79
78
} ) ;
80
79
}
81
80
@@ -87,14 +86,18 @@ export default class MainView extends React.Component {
87
86
}
88
87
89
88
export ( json ) {
90
- let filename = 'data.csv' ,
91
- csv = Papa . unparse ( json ) ,
92
- blob = new Blob ( [ csv ] , { type : 'text/csv' } ) ;
89
+ const filename = 'data.csv' ;
90
+ const csv = Papa . unparse ( json ) ;
91
+ const blob = new Blob ( [ csv ] , { type : 'text/csv' } ) ;
92
+
93
93
if ( window . navigator . msSaveOrOpenBlob ) {
94
94
window . navigator . msSaveBlob ( blob , filename ) ;
95
- } else {
96
- let a = window . document . createElement ( 'a' ) ;
97
- a . href = window . URL . createObjectURL ( blob , { type : 'text/plain' } ) ;
95
+ }
96
+ else {
97
+ const a = window . document . createElement ( 'a' ) ;
98
+ a . href = window . URL . createObjectURL ( blob , {
99
+ type : 'text/plain' ,
100
+ } ) ;
98
101
a . download = filename ;
99
102
document . body . appendChild ( a ) ;
100
103
a . click ( ) ;
@@ -109,41 +112,46 @@ export default class MainView extends React.Component {
109
112
}
110
113
111
114
render ( ) {
112
- const data = this . state . data ,
113
- filteredData = this . state . filteredData ,
114
- dataSource = encodeURI ( this . state . dataSource ) ,
115
- isError = this . state . isError ;
115
+ const data = this . state . data ;
116
+ const filteredData = this . state . filteredData ;
117
+ const dataSource = encodeURI ( this . state . dataSource ) ;
118
+ const isError = this . state . isError ;
116
119
117
120
return (
118
121
< div >
119
122
< Navbar />
120
- < main className = "container" >
123
+ < main className = "container" >
121
124
< div className = { 'row ' + ( isError ? '' : 'hidden' ) } >
122
125
< div className = "col-sm-12" >
123
126
< div className = "alert alert-danger alert-dismissible" role = "alert" >
124
- < strong > Oh snap!</ strong > We had some issues resolving the data source < a className = "wrap" href = { dataSource } > { dataSource } </ a > .
127
+ < strong > Oh snap!</ strong >
128
+ We had some issues resolving the data source
129
+ < a className = "wrap" href = { dataSource } > { dataSource } </ a > .
125
130
</ div >
126
131
</ div >
127
132
</ div >
128
- < div className = "row" >
129
- < div className = "col-sm-12" >
130
- < div className = "row" >
131
- < div className = "col-xs-8 col-sm-4" >
132
- < Search data = { data } onFilteredData = { this . filterData . bind ( this ) } />
133
- </ div >
134
- < div className = "col-xs-4 pull-right" >
135
- < a className = "btn btn-primary pull-right" onClick = { this . export . bind ( this , filteredData ) } > Export to CSV</ a >
133
+ < div className = "row" >
134
+ < div className = "col-sm-12" >
135
+ < div className = "row" >
136
+ < div className = "col-xs-8 col-sm-4" >
137
+ < Search data = { data } onFilteredData = { this . filterData . bind ( this ) } />
138
+ </ div >
139
+ < div className = "col-xs-4 pull-right" >
140
+ < a
141
+ className = "btn btn-primary pull-right"
142
+ onClick = { this . export . bind ( this , filteredData ) }
143
+ > Export to CSV</ a >
144
+ </ div >
136
145
</ div >
137
- </ div >
138
- < hr / >
139
- < div className = "row " >
140
- < div className = "col-xs-12" >
141
- < DataTable limit = { 20 } values = { filteredData } / >
146
+ < hr / >
147
+ < div className = "row" >
148
+ < div className = "col-xs-12 " >
149
+ < DataTable limit = { 20 } values = { filteredData } / >
150
+ </ div >
142
151
</ div >
143
152
</ div >
144
- </ div >
145
- </ div >
146
- </ main >
153
+ </ div >
154
+ </ main >
147
155
</ div >
148
156
) ;
149
157
}
0 commit comments