@uplink-protocol/calendar-controller
Version:
Flexible calendar and time picker API supporting both calendar, date-picker, and time-picker integrations for any JavaScript framework or library
433 lines (217 loc) • 7.85 kB
Markdown
[**@uplink-protocol/form-controller v0.3.1**](../README.md)
***
[@uplink-protocol/form-controller](../globals.md) / ITimeNavigationService
# Interface: ITimeNavigationService
Defined in: [Time/interfaces/time-navigation.service.interfaces.ts:5](https://github.com/jmkcoder/uplink-protocol-calendar/blob/4cde26f472352440ee258db7670fce2e95651862/src/Time/interfaces/time-navigation.service.interfaces.ts#L5)
Time navigation service interface
Handles time navigation and focus management
## Methods
### goToNextHour()
> **goToNextHour**(`currentTime`, `use12Hour`): `Date`
Defined in: [Time/interfaces/time-navigation.service.interfaces.ts:12](https://github.com/jmkcoder/uplink-protocol-calendar/blob/4cde26f472352440ee258db7670fce2e95651862/src/Time/interfaces/time-navigation.service.interfaces.ts#L12)
Navigate to next hour
#### Parameters
##### currentTime
`Date`
Current time
##### use12Hour
`boolean`
Whether using 12-hour format
#### Returns
`Date`
Next hour time
***
### goToNextMinute()
> **goToNextMinute**(`currentTime`, `step`): `Date`
Defined in: [Time/interfaces/time-navigation.service.interfaces.ts:28](https://github.com/jmkcoder/uplink-protocol-calendar/blob/4cde26f472352440ee258db7670fce2e95651862/src/Time/interfaces/time-navigation.service.interfaces.ts#L28)
Navigate to next minute
#### Parameters
##### currentTime
`Date`
Current time
##### step
`number`
Minute step interval
#### Returns
`Date`
Next minute time
***
### goToNextSecond()
> **goToNextSecond**(`currentTime`, `step`): `Date`
Defined in: [Time/interfaces/time-navigation.service.interfaces.ts:44](https://github.com/jmkcoder/uplink-protocol-calendar/blob/4cde26f472352440ee258db7670fce2e95651862/src/Time/interfaces/time-navigation.service.interfaces.ts#L44)
Navigate to next second
#### Parameters
##### currentTime
`Date`
Current time
##### step
`number`
Second step interval
#### Returns
`Date`
Next second time
***
### goToPreviousHour()
> **goToPreviousHour**(`currentTime`, `use12Hour`): `Date`
Defined in: [Time/interfaces/time-navigation.service.interfaces.ts:20](https://github.com/jmkcoder/uplink-protocol-calendar/blob/4cde26f472352440ee258db7670fce2e95651862/src/Time/interfaces/time-navigation.service.interfaces.ts#L20)
Navigate to previous hour
#### Parameters
##### currentTime
`Date`
Current time
##### use12Hour
`boolean`
Whether using 12-hour format
#### Returns
`Date`
Previous hour time
***
### goToPreviousMinute()
> **goToPreviousMinute**(`currentTime`, `step`): `Date`
Defined in: [Time/interfaces/time-navigation.service.interfaces.ts:36](https://github.com/jmkcoder/uplink-protocol-calendar/blob/4cde26f472352440ee258db7670fce2e95651862/src/Time/interfaces/time-navigation.service.interfaces.ts#L36)
Navigate to previous minute
#### Parameters
##### currentTime
`Date`
Current time
##### step
`number`
Minute step interval
#### Returns
`Date`
Previous minute time
***
### goToPreviousSecond()
> **goToPreviousSecond**(`currentTime`, `step`): `Date`
Defined in: [Time/interfaces/time-navigation.service.interfaces.ts:52](https://github.com/jmkcoder/uplink-protocol-calendar/blob/4cde26f472352440ee258db7670fce2e95651862/src/Time/interfaces/time-navigation.service.interfaces.ts#L52)
Navigate to previous second
#### Parameters
##### currentTime
`Date`
Current time
##### step
`number`
Second step interval
#### Returns
`Date`
Previous second time
***
### moveFocusToNextSegment()
> **moveFocusToNextSegment**(`currentSegment`, `showSeconds`, `showMilliseconds`, `use12Hour`): `"hours"` \| `"minutes"` \| `"seconds"` \| `"milliseconds"` \| `"period"` \| `null`
Defined in: [Time/interfaces/time-navigation.service.interfaces.ts:103](https://github.com/jmkcoder/uplink-protocol-calendar/blob/4cde26f472352440ee258db7670fce2e95651862/src/Time/interfaces/time-navigation.service.interfaces.ts#L103)
Move focus to next segment
#### Parameters
##### currentSegment
Current focused segment
`"hours"` | `"minutes"` | `"seconds"` | `"milliseconds"` | `"period"` | `null`
##### showSeconds
`boolean`
Whether seconds are shown
##### showMilliseconds
`boolean`
Whether milliseconds are shown
##### use12Hour
`boolean`
Whether using 12-hour format
#### Returns
`"hours"` \| `"minutes"` \| `"seconds"` \| `"milliseconds"` \| `"period"` \| `null`
Next segment to focus
***
### moveFocusToPreviousSegment()
> **moveFocusToPreviousSegment**(`currentSegment`, `showSeconds`, `showMilliseconds`, `use12Hour`): `"hours"` \| `"minutes"` \| `"seconds"` \| `"milliseconds"` \| `"period"` \| `null`
Defined in: [Time/interfaces/time-navigation.service.interfaces.ts:118](https://github.com/jmkcoder/uplink-protocol-calendar/blob/4cde26f472352440ee258db7670fce2e95651862/src/Time/interfaces/time-navigation.service.interfaces.ts#L118)
Move focus to previous segment
#### Parameters
##### currentSegment
Current focused segment
`"hours"` | `"minutes"` | `"seconds"` | `"milliseconds"` | `"period"` | `null`
##### showSeconds
`boolean`
Whether seconds are shown
##### showMilliseconds
`boolean`
Whether milliseconds are shown
##### use12Hour
`boolean`
Whether using 12-hour format
#### Returns
`"hours"` \| `"minutes"` \| `"seconds"` \| `"milliseconds"` \| `"period"` \| `null`
Previous segment to focus
***
### setHour()
> **setHour**(`currentTime`, `hour`, `use12Hour`, `period?`): `Date`
Defined in: [Time/interfaces/time-navigation.service.interfaces.ts:62](https://github.com/jmkcoder/uplink-protocol-calendar/blob/4cde26f472352440ee258db7670fce2e95651862/src/Time/interfaces/time-navigation.service.interfaces.ts#L62)
Set specific hour
#### Parameters
##### currentTime
`Date`
Current time
##### hour
`number`
Hour to set (0-23 or 1-12 depending on format)
##### use12Hour
`boolean`
Whether using 12-hour format
##### period?
AM/PM period for 12-hour format
`"AM"` | `"PM"`
#### Returns
`Date`
Time with new hour
***
### setMillisecond()
> **setMillisecond**(`currentTime`, `millisecond`): `Date`
Defined in: [Time/interfaces/time-navigation.service.interfaces.ts:86](https://github.com/jmkcoder/uplink-protocol-calendar/blob/4cde26f472352440ee258db7670fce2e95651862/src/Time/interfaces/time-navigation.service.interfaces.ts#L86)
Set specific millisecond
#### Parameters
##### currentTime
`Date`
Current time
##### millisecond
`number`
Millisecond to set (0-999)
#### Returns
`Date`
Time with new millisecond
***
### setMinute()
> **setMinute**(`currentTime`, `minute`): `Date`
Defined in: [Time/interfaces/time-navigation.service.interfaces.ts:70](https://github.com/jmkcoder/uplink-protocol-calendar/blob/4cde26f472352440ee258db7670fce2e95651862/src/Time/interfaces/time-navigation.service.interfaces.ts#L70)
Set specific minute
#### Parameters
##### currentTime
`Date`
Current time
##### minute
`number`
Minute to set (0-59)
#### Returns
`Date`
Time with new minute
***
### setSecond()
> **setSecond**(`currentTime`, `second`): `Date`
Defined in: [Time/interfaces/time-navigation.service.interfaces.ts:78](https://github.com/jmkcoder/uplink-protocol-calendar/blob/4cde26f472352440ee258db7670fce2e95651862/src/Time/interfaces/time-navigation.service.interfaces.ts#L78)
Set specific second
#### Parameters
##### currentTime
`Date`
Current time
##### second
`number`
Second to set (0-59)
#### Returns
`Date`
Time with new second
***
### togglePeriod()
> **togglePeriod**(`currentTime`): `Date`
Defined in: [Time/interfaces/time-navigation.service.interfaces.ts:93](https://github.com/jmkcoder/uplink-protocol-calendar/blob/4cde26f472352440ee258db7670fce2e95651862/src/Time/interfaces/time-navigation.service.interfaces.ts#L93)
Toggle AM/PM period
#### Parameters
##### currentTime
`Date`
Current time
#### Returns
`Date`
Time with toggled period