@@ -58,61 +58,57 @@ if (chartElement !== null) {
58
58
lang = lang . substring ( 0 , 2 ) ;
59
59
}
60
60
61
- const options = {
62
- chart : {
63
- stacked : true ,
64
- locales,
65
- defaultLocale : typeof lang !== 'undefined' && locales . map ( locale => locale . name ) . includes ( lang ) ? lang : 'en' ,
66
- toolbar : {
67
- show : false
68
- } ,
69
- type : 'bar' ,
70
- height : '100%' ,
71
- width : '100%' ,
72
- zoom : {
73
- enabled : false
74
- }
75
- } ,
76
- legend : {
77
- position : 'top'
78
- } ,
79
- xaxis : {
80
- type : 'datetime' ,
81
- max : new Date ( ) . getTime ( ) ,
82
- } ,
83
- noData : {
84
- text : 'Loading...'
85
- } ,
86
- series : [ ]
87
- } ;
88
-
89
- const chart = new ApexCharts ( chartElement , options ) ;
90
- chart . render ( ) ;
91
-
92
61
fetch ( `/api/region/${ continent } /${ region } /count.json` , { headers : { 'X-Requested-With' : 'XMLHttpRequest' } } )
93
62
. then ( response => response . json ( ) )
94
63
. then ( json => {
95
- const series : ApexAxisChartSeries = [
96
- {
97
- name : series1 ,
98
- data : Object . keys ( json ) . map ( key => {
99
- const datetime = new Date ( key ) ;
100
- datetime . setUTCHours ( 0 ) ;
101
-
102
- return { x : datetime . getTime ( ) , y : ( json [ key ] . total - json [ key ] . welcome ) } ;
103
- } )
104
- } ,
105
- {
106
- name : series2 ,
107
- data : Object . keys ( json ) . map ( key => {
108
- const datetime = new Date ( key ) ;
109
- datetime . setUTCHours ( 0 ) ;
110
-
111
- return { x : datetime . getTime ( ) , y : json [ key ] . welcome } ;
112
- } )
113
- }
114
- ] ;
115
-
116
- chart . updateSeries ( series ) ;
64
+ if ( Object . keys ( json ) . length > 0 ) {
65
+ const series : ApexAxisChartSeries = [
66
+ {
67
+ name : series1 ,
68
+ data : Object . keys ( json ) . map ( key => {
69
+ const datetime = new Date ( key ) ;
70
+ datetime . setUTCHours ( 0 ) ;
71
+
72
+ return { x : datetime . getTime ( ) , y : ( json [ key ] . total - json [ key ] . welcome ) } ;
73
+ } )
74
+ } ,
75
+ {
76
+ name : series2 ,
77
+ data : Object . keys ( json ) . map ( key => {
78
+ const datetime = new Date ( key ) ;
79
+ datetime . setUTCHours ( 0 ) ;
80
+
81
+ return { x : datetime . getTime ( ) , y : json [ key ] . welcome } ;
82
+ } )
83
+ }
84
+ ] ;
85
+
86
+ const chart = new ApexCharts ( chartElement , {
87
+ chart : {
88
+ stacked : true ,
89
+ locales,
90
+ defaultLocale : typeof lang !== 'undefined' && locales . map ( locale => locale . name ) . includes ( lang ) ? lang : 'en' ,
91
+ toolbar : {
92
+ show : false
93
+ } ,
94
+ type : 'bar' ,
95
+ height : '100%' ,
96
+ width : '100%' ,
97
+ zoom : {
98
+ enabled : false
99
+ }
100
+ } ,
101
+ legend : {
102
+ position : 'top'
103
+ } ,
104
+ xaxis : {
105
+ type : 'datetime' ,
106
+ max : new Date ( ) . getTime ( ) ,
107
+ } ,
108
+ series
109
+ } ) ;
110
+
111
+ chart . render ( ) ;
112
+ }
117
113
} ) ;
118
114
}
0 commit comments