1
+
2
+ function DateTimeFormat ( locale , options ) {
3
+ this . options = options ;
4
+
5
+ if ( process . env . NODE_ENV !== 'production' && locale !== 'en-US' ) {
6
+ console . warn ( 'Wrong usage of DateTimeFormat' ) ;
7
+ }
8
+
9
+ this . format = function ( date ) {
10
+ let output ;
11
+
12
+ if ( options . month === 'short' &&
13
+ options . weekday === 'short' &&
14
+ options . day === '2-digit' ) {
15
+
16
+ const day = date . getDay ( ) ;
17
+ switch ( day ) {
18
+ case 0 :
19
+ output = 'Sun' ;
20
+ break ;
21
+ case 1 :
22
+ output = 'Mon' ;
23
+ break ;
24
+ case 2 :
25
+ output = 'Tue' ;
26
+ break ;
27
+ case 3 :
28
+ output = 'Wed' ;
29
+ break ;
30
+ case 4 :
31
+ output = 'Thu' ;
32
+ break ;
33
+ case 5 :
34
+ output = 'Fri' ;
35
+ break ;
36
+ case 6 :
37
+ output = 'Sat' ;
38
+ break ;
39
+ }
40
+
41
+ output += ', ' ;
42
+
43
+ const month = date . getMonth ( ) ;
44
+ switch ( month ) {
45
+ case 0 :
46
+ output += 'Jan' ;
47
+ break ;
48
+ case 1 :
49
+ output += 'Feb' ;
50
+ break ;
51
+ case 2 :
52
+ output += 'Mar' ;
53
+ break ;
54
+ case 3 :
55
+ output += 'Apr' ;
56
+ break ;
57
+ case 4 :
58
+ output += 'May' ;
59
+ break ;
60
+ case 5 :
61
+ output += 'Jun' ;
62
+ break ;
63
+ case 6 :
64
+ output += 'Jul' ;
65
+ break ;
66
+ case 7 :
67
+ output += 'Aug' ;
68
+ break ;
69
+ case 8 :
70
+ output += 'Sep' ;
71
+ break ;
72
+ case 9 :
73
+ output += 'Oct' ;
74
+ break ;
75
+ case 10 :
76
+ output += 'Nov' ;
77
+ break ;
78
+ case 11 :
79
+ output += 'Dec' ;
80
+ break ;
81
+ }
82
+
83
+ output += ' ' + date . getDate ( )
84
+ } else if ( options . month === 'long'
85
+ && options . year === 'numeric' ) {
86
+
87
+ switch ( date . getMonth ( ) ) {
88
+ case 0 :
89
+ output = 'January' ;
90
+ break ;
91
+ case 1 :
92
+ output = 'February' ;
93
+ break ;
94
+ case 2 :
95
+ output = 'March' ;
96
+ break ;
97
+ case 3 :
98
+ output = 'April' ;
99
+ break ;
100
+ case 4 :
101
+ output = 'May' ;
102
+ break ;
103
+ case 5 :
104
+ output = 'June' ;
105
+ break ;
106
+ case 6 :
107
+ output = 'July' ;
108
+ break ;
109
+ case 7 :
110
+ output = 'August' ;
111
+ break ;
112
+ case 8 :
113
+ output = 'September' ;
114
+ break ;
115
+ case 9 :
116
+ output = 'October' ;
117
+ break ;
118
+ case 10 :
119
+ output = 'November' ;
120
+ break ;
121
+ case 11 :
122
+ output = 'December' ;
123
+ break ;
124
+ }
125
+
126
+ output += ' ' + date . getFullYear ( ) ;
127
+ } else if ( process . env . NODE_ENV !== 'production' ) {
128
+ console . warn ( 'Wrong usage of DateTimeFormat' ) ;
129
+ }
130
+
131
+ return output ;
132
+ } ;
133
+ }
134
+
1
135
module . exports = {
136
+ DateTimeFormat : DateTimeFormat ,
2
137
3
138
addDays ( d , days ) {
4
- let newDate = this . clone ( d ) ;
139
+ const newDate = this . clone ( d ) ;
5
140
newDate . setDate ( d . getDate ( ) + days ) ;
6
141
return newDate ;
7
142
} ,
8
143
9
144
addMonths ( d , months ) {
10
- let newDate = this . clone ( d ) ;
145
+ const newDate = this . clone ( d ) ;
11
146
newDate . setMonth ( d . getMonth ( ) + months ) ;
12
147
return newDate ;
13
148
} ,
14
149
15
150
addYears ( d , years ) {
16
- let newDate = this . clone ( d ) ;
151
+ const newDate = this . clone ( d ) ;
17
152
newDate . setFullYear ( d . getFullYear ( ) + years ) ;
18
153
return newDate ;
19
154
} ,
@@ -23,7 +158,7 @@ module.exports = {
23
158
} ,
24
159
25
160
cloneAsDate ( d ) {
26
- let clonedDate = this . clone ( d ) ;
161
+ const clonedDate = this . clone ( d ) ;
27
162
clonedDate . setHours ( 0 , 0 , 0 , 0 ) ;
28
163
return clonedDate ;
29
164
} ,
@@ -41,55 +176,6 @@ module.exports = {
41
176
return new Date ( d . getFullYear ( ) , d . getMonth ( ) , 1 ) ;
42
177
} ,
43
178
44
- getFullMonth ( d ) {
45
- let month = d . getMonth ( ) ;
46
- switch ( month ) {
47
- case 0 : return 'January' ;
48
- case 1 : return 'February' ;
49
- case 2 : return 'March' ;
50
- case 3 : return 'April' ;
51
- case 4 : return 'May' ;
52
- case 5 : return 'June' ;
53
- case 6 : return 'July' ;
54
- case 7 : return 'August' ;
55
- case 8 : return 'September' ;
56
- case 9 : return 'October' ;
57
- case 10 : return 'November' ;
58
- case 11 : return 'December' ;
59
- }
60
- } ,
61
-
62
- getShortMonth ( d ) {
63
- let month = d . getMonth ( ) ;
64
- switch ( month ) {
65
- case 0 : return 'Jan' ;
66
- case 1 : return 'Feb' ;
67
- case 2 : return 'Mar' ;
68
- case 3 : return 'Apr' ;
69
- case 4 : return 'May' ;
70
- case 5 : return 'Jun' ;
71
- case 6 : return 'Jul' ;
72
- case 7 : return 'Aug' ;
73
- case 8 : return 'Sep' ;
74
- case 9 : return 'Oct' ;
75
- case 10 : return 'Nov' ;
76
- case 11 : return 'Dec' ;
77
- }
78
- } ,
79
-
80
- getDayOfWeek ( d ) {
81
- let dow = d . getDay ( ) ;
82
- switch ( dow ) {
83
- case 0 : return 'Sun' ;
84
- case 1 : return 'Mon' ;
85
- case 2 : return 'Tue' ;
86
- case 3 : return 'Wed' ;
87
- case 4 : return 'Thu' ;
88
- case 5 : return 'Fri' ;
89
- case 6 : return 'Sat' ;
90
- }
91
- } ,
92
-
93
179
getWeekArray ( d ) {
94
180
let dayArray = [ ] ;
95
181
let daysInMonth = this . getDaysInMonth ( d ) ;
@@ -120,9 +206,9 @@ module.exports = {
120
206
} ,
121
207
122
208
format ( date ) {
123
- let m = date . getMonth ( ) + 1 ;
124
- let d = date . getDate ( ) ;
125
- let y = date . getFullYear ( ) ;
209
+ const m = date . getMonth ( ) + 1 ;
210
+ const d = date . getDate ( ) ;
211
+ const y = date . getFullYear ( ) ;
126
212
return m + '/' + d + '/' + y ;
127
213
} ,
128
214
@@ -134,15 +220,15 @@ module.exports = {
134
220
} ,
135
221
136
222
isBeforeDate ( d1 , d2 ) {
137
- let date1 = this . cloneAsDate ( d1 ) ;
138
- let date2 = this . cloneAsDate ( d2 ) ;
223
+ const date1 = this . cloneAsDate ( d1 ) ;
224
+ const date2 = this . cloneAsDate ( d2 ) ;
139
225
140
226
return ( date1 . getTime ( ) < date2 . getTime ( ) ) ;
141
227
} ,
142
228
143
229
isAfterDate ( d1 , d2 ) {
144
- let date1 = this . cloneAsDate ( d1 ) ;
145
- let date2 = this . cloneAsDate ( d2 ) ;
230
+ const date1 = this . cloneAsDate ( d1 ) ;
231
+ const date2 = this . cloneAsDate ( d2 ) ;
146
232
147
233
return ( date1 . getTime ( ) > date2 . getTime ( ) ) ;
148
234
} ,
0 commit comments