]> git.immae.eu Git - github/fretlink/time-picker.git/blame - examples/disabled.js
remove gregorianCalendarLocale
[github/fretlink/time-picker.git] / examples / disabled.js
CommitLineData
0e62bf0b
M
1/* eslint no-console:0 */
2
3import 'rc-time-picker/assets/index.less';
4
5import React from 'react';
6import ReactDom from 'react-dom';
7
8import GregorianCalendar from 'gregorian-calendar';
9import DateTimeFormat from 'gregorian-calendar-format';
0e62bf0b
M
10
11import TimePicker from 'rc-time-picker';
12import TimePickerLocale from 'rc-time-picker/src/locale/zh_CN';
13
14const showSecond = true;
15const str = showSecond ? 'HH:mm:ss' : 'HH:mm';
16
17const formatter = new DateTimeFormat(str);
18
6fc4e0e8 19const now = new GregorianCalendar(TimePickerLocale.calendar);
0e62bf0b
M
20now.setTime(Date.now());
21
71bd9bc1
M
22function generateOptions(length, excludedOptions) {
23 const arr = [];
24 for (let value = 0; value < length; value++) {
25 if (excludedOptions.indexOf(value) < 0) {
26 arr.push(value);
27 }
28 }
29 return arr;
30}
31
0e62bf0b
M
32function onChange(value) {
33 console.log(value && formatter.format(value));
34}
35
71bd9bc1
M
36function disabledHours() {
37 return [0, 1, 2, 3, 4, 5, 6, 7, 8, 22, 23];
38}
39
40function disabledMinutes(h) {
41 switch (h) {
42 case 9:
43 return generateOptions(60, [30]);
44 case 21:
45 return generateOptions(60, [0]);
46 default:
47 return generateOptions(60, [0, 30]);
48 }
49}
50
51function disabledSeconds(h, m) {
52 return [h + m % 60];
53}
54
0e62bf0b
M
55ReactDom.render(
56 <TimePicker formatter={formatter} locale={TimePickerLocale}
57 showSecond={showSecond}
58 defaultValue={now}
59 className="xxx"
60 onChange={onChange}
71bd9bc1
M
61 disabledHours={disabledHours}
62 disabledMinutes={disabledMinutes}
63 disabledSeconds={disabledSeconds} />,
0e62bf0b
M
64 document.getElementById('__react-content')
65);