@@ -2,7 +2,7 @@ import KeyCode from 'rc-util/lib/KeyCode';
2
2
import raf from 'rc-util/lib/raf' ;
3
3
import isVisible from 'rc-util/lib/Dom/isVisible' ;
4
4
import type { GenerateConfig } from '../generate' ;
5
- import type { CustomFormat , PanelMode , PickerMode } from '../interface' ;
5
+ import type { CustomFormat , PanelMode , PickerMode , Locale } from '../interface' ;
6
6
7
7
const scrollIds = new Map < HTMLElement , number > ( ) ;
8
8
@@ -149,36 +149,33 @@ export function getDefaultFormat<DateType>(
149
149
picker : PickerMode | undefined ,
150
150
showTime : boolean | object | undefined ,
151
151
use12Hours : boolean | undefined ,
152
+ locale : Locale ,
152
153
) {
153
- let mergedFormat = format ;
154
- if ( ! mergedFormat ) {
155
- switch ( picker ) {
156
- case 'time' :
157
- mergedFormat = use12Hours ? 'hh:mm:ss a' : 'HH:mm:ss' ;
158
- break ;
159
-
160
- case 'week' :
161
- mergedFormat = 'gggg-wo' ;
162
- break ;
163
-
164
- case 'month' :
165
- mergedFormat = 'YYYY-MM' ;
166
- break ;
167
-
168
- case 'quarter' :
169
- mergedFormat = 'YYYY-[Q]Q' ;
170
- break ;
171
-
172
- case 'year' :
173
- mergedFormat = 'YYYY' ;
174
- break ;
175
-
176
- default :
177
- mergedFormat = showTime ? 'YYYY-MM-DD HH:mm:ss' : 'YYYY-MM-DD' ;
178
- }
154
+ if ( format ) return format ;
155
+
156
+ if ( picker === 'time' ) {
157
+ return use12Hours ? 'hh:mm:ss a' : 'HH:mm:ss' ;
158
+ }
159
+
160
+ if ( picker === 'week' ) {
161
+ return locale . weekFormat ?? 'gggg-wo' ;
162
+ }
163
+
164
+ if ( picker === 'month' ) {
165
+ return locale . monthFormat ?? 'YYYY-MM' ;
166
+ }
167
+
168
+ if ( picker === 'quarter' ) {
169
+ return locale . quarterFormat ?? 'YYYY-[Q]Q' ;
170
+ }
171
+
172
+ if ( picker === 'year' ) {
173
+ return locale . yearFormat ?? 'YYYY' ;
179
174
}
180
175
181
- return mergedFormat ;
176
+ return showTime
177
+ ? locale . dateTimeFormat ?? 'YYYY-MM-DD HH:mm:ss'
178
+ : locale . dateFormat ?? 'YYYY-MM-DD' ;
182
179
}
183
180
184
181
export function getInputSize < DateType > (
0 commit comments