UNPKG

2.58 kBJavaScriptView Raw
1import _extends from "@babel/runtime/helpers/extends";
2import PickerButton from '../PickerButton';
3import PickerTag from '../PickerTag';
4import generateSinglePicker from './generateSinglePicker';
5import generateRangePicker from './generateRangePicker';
6export var Components = {
7 button: PickerButton,
8 rangeItem: PickerTag
9};
10
11function toArray(list) {
12 if (!list) {
13 return [];
14 }
15
16 return Array.isArray(list) ? list : [list];
17}
18
19export function getTimeProps(props) {
20 var format = props.format,
21 picker = props.picker,
22 showHour = props.showHour,
23 showMinute = props.showMinute,
24 showSecond = props.showSecond,
25 use12Hours = props.use12Hours;
26 var firstFormat = toArray(format)[0];
27
28 var showTimeObj = _extends({}, props);
29
30 if (firstFormat && typeof firstFormat === 'string') {
31 if (!firstFormat.includes('s') && showSecond === undefined) {
32 showTimeObj.showSecond = false;
33 }
34
35 if (!firstFormat.includes('m') && showMinute === undefined) {
36 showTimeObj.showMinute = false;
37 }
38
39 if (!firstFormat.includes('H') && !firstFormat.includes('h') && showHour === undefined) {
40 showTimeObj.showHour = false;
41 }
42
43 if ((firstFormat.includes('a') || firstFormat.includes('A')) && use12Hours === undefined) {
44 showTimeObj.use12Hours = true;
45 }
46 }
47
48 if (picker === 'time') {
49 return showTimeObj;
50 }
51
52 if (typeof firstFormat === 'function') {
53 // format of showTime should use default when format is custom format function
54 delete showTimeObj.format;
55 }
56
57 return {
58 showTime: showTimeObj
59 };
60}
61
62function generatePicker(generateConfig) {
63 // =========================== Picker ===========================
64 var _generateSinglePicker = generateSinglePicker(generateConfig),
65 DatePicker = _generateSinglePicker.DatePicker,
66 WeekPicker = _generateSinglePicker.WeekPicker,
67 MonthPicker = _generateSinglePicker.MonthPicker,
68 YearPicker = _generateSinglePicker.YearPicker,
69 TimePicker = _generateSinglePicker.TimePicker,
70 QuarterPicker = _generateSinglePicker.QuarterPicker; // ======================== Range Picker ========================
71
72
73 var RangePicker = generateRangePicker(generateConfig);
74 var MergedDatePicker = DatePicker;
75 MergedDatePicker.WeekPicker = WeekPicker;
76 MergedDatePicker.MonthPicker = MonthPicker;
77 MergedDatePicker.YearPicker = YearPicker;
78 MergedDatePicker.RangePicker = RangePicker;
79 MergedDatePicker.TimePicker = TimePicker;
80 MergedDatePicker.QuarterPicker = QuarterPicker;
81 return MergedDatePicker;
82}
83
84export default generatePicker;
\No newline at end of file