On this page

Angular Time Picker Component
Create consistent cross-browser and cross-device Angular time picker.
Examples
01
02
03
04
05
06
07
08
09
10
11
12
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
AM
PM
01
02
03
04
05
06
07
08
09
10
11
12
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
AM
PM
Loading...
import { Component } from '@angular/core';import { ColComponent, RowComponent, TimePickerComponent } from '@coreui/angular';@Component({ selector: 'docs-time-picker01', templateUrl: './time-picker01.component.html', standalone: true, imports: [ RowComponent, ColComponent, TimePickerComponent ]})export class TimePicker01Component { time? = new Date();}
Sizing
Set heights usingsize
property likesize="lg"
andsize="sm"
.
01
02
03
04
05
06
07
08
09
10
11
12
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
AM
PM
01
02
03
04
05
06
07
08
09
10
11
12
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
AM
PM
Loading...
Disabled
Add thedisabled
boolean attribute on an input to give it a grayed out appearance and remove pointer events.
01
02
03
04
05
06
07
08
09
10
11
12
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
AM
PM
01
02
03
04
05
06
07
08
09
10
11
12
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
AM
PM
Loading...
Readonly
Add theinputReadOnly
boolean attribute to prevent modification of the input value.
01
02
03
04
05
06
07
08
09
10
11
12
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
AM
PM
Loading...
Filtered
Add filter callback functions to limit selectable values.
01
02
03
04
05
06
07
08
09
10
11
12
00
10
20
30
40
50
00
15
30
45
AM
PM
Loading...
import { DatePipe } from '@angular/common';import { Component } from '@angular/core';import { ColComponent, RowComponent, TimePickerComponent } from '@coreui/angular';@Component({ selector: 'docs-time-picker05', templateUrl: './time-picker05.component.html', standalone: true, imports: [RowComponent, ColComponent, TimePickerComponent, DatePipe]})export class TimePicker05Component { filterHours = (hour: number): boolean => (hour > 8 && hour <= 23); filterMinutes = (min: number): boolean => ((min %= 10) === 0); filterSeconds = (sec: number): boolean => ((sec %= 15) === 0); time? = new Date(); handleTimeChange(time: Date | undefined) { if (time) { this.time = new Date(time?.getTime()); } else { this.time = time; } }}
with Footer
01
02
03
04
05
06
07
08
09
10
11
12
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
AM
PM
Loading...
import { Component } from '@angular/core';import { ButtonDirective, ColComponent, DropdownCloseDirective, RowComponent, TemplateIdDirective, TimePickerComponent} from '@coreui/angular';@Component({ selector: 'docs-time-picker06', templateUrl: './time-picker06.component.html', standalone: true, imports: [RowComponent, ColComponent, TimePickerComponent, TemplateIdDirective, ButtonDirective, DropdownCloseDirective]})export class TimePicker06Component { time? = new Date();}
Non-english locale
Auto
01
02
03
04
05
06
07
08
09
10
11
12
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
AM
PM
Loading...
Chinese
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
Loading...
Japanese
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
Loading...
Korean
오전 01
오전 02
오전 03
오전 04
오전 05
오전 06
오전 07
오전 08
오전 09
오전 10
오전 11
오전 12
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
오전
오후
Loading...
Hebrew
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
Loading...
Persian
۰۰
۰۱
۰۲
۰۳
۰۴
۰۵
۰۶
۰۷
۰۸
۰۹
۱۰
۱۱
۱۲
۱۳
۱۴
۱۵
۱۶
۱۷
۱۸
۱۹
۲۰
۲۱
۲۲
۲۳
۰۰
۰۱
۰۲
۰۳
۰۴
۰۵
۰۶
۰۷
۰۸
۰۹
۱۰
۱۱
۱۲
۱۳
۱۴
۱۵
۱۶
۱۷
۱۸
۱۹
۲۰
۲۱
۲۲
۲۳
۲۴
۲۵
۲۶
۲۷
۲۸
۲۹
۳۰
۳۱
۳۲
۳۳
۳۴
۳۵
۳۶
۳۷
۳۸
۳۹
۴۰
۴۱
۴۲
۴۳
۴۴
۴۵
۴۶
۴۷
۴۸
۴۹
۵۰
۵۱
۵۲
۵۳
۵۴
۵۵
۵۶
۵۷
۵۸
۵۹
۰۰
۰۱
۰۲
۰۳
۰۴
۰۵
۰۶
۰۷
۰۸
۰۹
۱۰
۱۱
۱۲
۱۳
۱۴
۱۵
۱۶
۱۷
۱۸
۱۹
۲۰
۲۱
۲۲
۲۳
۲۴
۲۵
۲۶
۲۷
۲۸
۲۹
۳۰
۳۱
۳۲
۳۳
۳۴
۳۵
۳۶
۳۷
۳۸
۳۹
۴۰
۴۱
۴۲
۴۳
۴۴
۴۵
۴۶
۴۷
۴۸
۴۹
۵۰
۵۱
۵۲
۵۳
۵۴
۵۵
۵۶
۵۷
۵۸
۵۹
Loading...
Forms
Angular handles user input through reactive and template-driven forms.CoreUI Time Picker supports both types.
Reactive
Form value: { "timePicker": "2025-10-03T09:15:00.000Z"}
timePicker value: 11:15:00 AM
Loading...
Loading...
Template-driven
Form value: { "timePicker": "2025-10-03T11:15:00.000Z"}
timePicker value: 13:15
Loading...
Loading...
API reference
TimePicker Module
import { TimePickerModule, DropdownModule, SharedModule} from '@coreui/angular';@NgModule({ imports: [ TimePickerModule, DropdownModule, SharedModule ]})export class AppModule() { }
c-time-picker
component
Inputs
name | description | type | default |
---|---|---|---|
time | Initial selected time. | Date | undefined |
cleaner | Toggle visibility or set the content of the cleaner button. | boolean | true |
disabled | Toggle the disabled state for the component. | boolean | false |
indicator | Toggle visibility or set the content of the input indicator. | boolean | true |
inputReadOnly | Toggle the readonly state for the input. | boolean | false |
locale | Sets the default locale for components. If not set, it is inherited from the browser. | string | default |
placeholder | Specifies hint visible in time input. | string | Select date |
seconds | Toggle seconds visibility. | boolean | false |
size | Size the component input small or large. | sm |lg | undefined |
valid | Set input validation visual feedback. | boolean | undefined |
variant | Set the time picker variant to a roll or select. | roll |select | roll |
visible | Toggle the visibility of dropdown menu component. | boolean | false |
filterHours | Available hours to pick filter function. | (value: number) => boolean | undefined |
filterMinutes | Available minutes to pick filter function. | (value: number) => boolean | undefined |
filterSeconds | Available seconds to pick filter function. | (value: number) => boolean | undefined |
Outputs
name | description | type |
---|---|---|
timeChange | Event emitted ontime change | Date |undefined |