@xaui/native 0.0.21 → 0.0.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +195 -2
- package/dist/alert/index.js +1 -2
- package/dist/app-bar/index.cjs +217 -0
- package/dist/app-bar/index.d.cts +52 -0
- package/dist/app-bar/index.d.ts +52 -0
- package/dist/app-bar/index.js +142 -0
- package/dist/autocomplete/index.js +48 -36
- package/dist/avatar/index.js +1 -2
- package/dist/badge/index.js +1 -2
- package/dist/bottom-sheet/index.js +1 -2
- package/dist/bottom-tab-bar/index.cjs +571 -0
- package/dist/bottom-tab-bar/index.d.cts +211 -0
- package/dist/bottom-tab-bar/index.d.ts +211 -0
- package/dist/bottom-tab-bar/index.js +497 -0
- package/dist/button/index.d.cts +102 -5
- package/dist/button/index.d.ts +102 -5
- package/dist/button/index.js +2 -3
- package/dist/button.type-j1ZdkkSl.d.cts +4 -0
- package/dist/button.type-j1ZdkkSl.d.ts +4 -0
- package/dist/card/index.cjs +2 -0
- package/dist/card/index.d.cts +6 -1
- package/dist/card/index.d.ts +6 -1
- package/dist/card/index.js +4 -2
- package/dist/carousel/index.js +1 -1
- package/dist/chart/index.cjs +1067 -0
- package/dist/chart/index.d.cts +218 -0
- package/dist/chart/index.d.ts +218 -0
- package/dist/chart/index.js +1026 -0
- package/dist/checkbox/index.js +1 -2
- package/dist/chip/index.js +1 -2
- package/dist/chunk-3XSXTM3G.js +661 -0
- package/dist/chunk-4KSZLONZ.js +79 -0
- package/dist/{chunk-DXXNBF5P.js → chunk-CZFDZPAS.js} +0 -5
- package/dist/{chunk-LTKYHG5V.js → chunk-GHCVNQET.js} +12 -5
- package/dist/chunk-I4V5Y5GD.js +76 -0
- package/dist/{chunk-F7WH4DMG.js → chunk-UI5L26KD.js} +1 -1
- package/dist/{chunk-LUBWRVI2.js → chunk-ULJSCNPE.js} +1 -1
- package/dist/chunk-URBEEDFX.js +79 -0
- package/dist/core/index.js +3 -5
- package/dist/datepicker/index.js +1 -2
- package/dist/divider/index.js +2 -3
- package/dist/drawer/index.cjs +310 -0
- package/dist/drawer/index.d.cts +58 -0
- package/dist/drawer/index.d.ts +58 -0
- package/dist/drawer/index.js +236 -0
- package/dist/{accordion → expansion-panel}/index.cjs +45 -45
- package/dist/{accordion → expansion-panel}/index.d.cts +30 -30
- package/dist/{accordion → expansion-panel}/index.d.ts +30 -30
- package/dist/{accordion → expansion-panel}/index.js +40 -41
- package/dist/fab/index.d.cts +3 -3
- package/dist/fab/index.d.ts +3 -3
- package/dist/fab/index.js +3 -4
- package/dist/fab-menu/index.d.cts +2 -2
- package/dist/fab-menu/index.d.ts +2 -2
- package/dist/fab-menu/index.js +3 -4
- package/dist/{fab.type-Ba0QMprb.d.ts → fab.type-CgIYqQlT.d.ts} +1 -1
- package/dist/{fab.type-U09H8B7D.d.cts → fab.type-l2vjG8-p.d.cts} +1 -1
- package/dist/feature-discovery/index.cjs +531 -0
- package/dist/feature-discovery/index.d.cts +82 -0
- package/dist/feature-discovery/index.d.ts +82 -0
- package/dist/feature-discovery/index.js +464 -0
- package/dist/indicator/index.js +2 -3
- package/dist/input/index.cjs +258 -164
- package/dist/input/index.d.cts +15 -1
- package/dist/input/index.d.ts +15 -1
- package/dist/input/index.js +219 -126
- package/dist/list/index.js +1 -2
- package/dist/menu/index.js +2 -2
- package/dist/menubox/index.cjs +369 -0
- package/dist/menubox/index.d.cts +98 -0
- package/dist/menubox/index.d.ts +98 -0
- package/dist/menubox/index.js +296 -0
- package/dist/pager/index.cjs +243 -0
- package/dist/pager/index.d.cts +93 -0
- package/dist/pager/index.d.ts +93 -0
- package/dist/pager/index.js +205 -0
- package/dist/progress/index.js +1 -2
- package/dist/radio/index.cjs +537 -0
- package/dist/radio/index.d.cts +145 -0
- package/dist/radio/index.d.ts +145 -0
- package/dist/radio/index.js +464 -0
- package/dist/segment-button/index.js +2 -2
- package/dist/select/index.js +22 -10
- package/dist/skeleton/index.js +2 -2
- package/dist/slider/index.cjs +655 -0
- package/dist/slider/index.d.cts +171 -0
- package/dist/slider/index.d.ts +171 -0
- package/dist/slider/index.js +575 -0
- package/dist/stepper/index.cjs +624 -0
- package/dist/stepper/index.d.cts +137 -0
- package/dist/stepper/index.d.ts +137 -0
- package/dist/stepper/index.js +549 -0
- package/dist/switch/index.js +1 -2
- package/dist/tabs/index.cjs +523 -0
- package/dist/tabs/index.d.cts +176 -0
- package/dist/tabs/index.d.ts +176 -0
- package/dist/tabs/index.js +438 -0
- package/dist/timepicker/index.cjs +1280 -0
- package/dist/timepicker/index.d.cts +215 -0
- package/dist/timepicker/index.d.ts +215 -0
- package/dist/timepicker/index.js +1181 -0
- package/dist/toolbar/index.cjs +395 -0
- package/dist/toolbar/index.d.cts +100 -0
- package/dist/toolbar/index.d.ts +100 -0
- package/dist/toolbar/index.js +325 -0
- package/dist/typography/index.js +1 -2
- package/dist/view/index.cjs +16 -2
- package/dist/view/index.js +16 -2
- package/package.json +73 -8
- package/dist/button.type-D8tzEBo7.d.ts +0 -104
- package/dist/button.type-ikaWzhIg.d.cts +0 -104
- package/dist/chunk-GBHQCAKW.js +0 -19
- package/dist/chunk-JEGEPGVU.js +0 -287
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
import { StyleProp, ViewStyle, TextStyle } from 'react-native';
|
|
3
|
+
import { T as ThemeColor } from '../index-BOw6tbkc.cjs';
|
|
4
|
+
|
|
5
|
+
type TimeValue = {
|
|
6
|
+
/**
|
|
7
|
+
* Hours value (0-23 for 24-hour format, 1-12 for 12-hour format)
|
|
8
|
+
*/
|
|
9
|
+
hours: number;
|
|
10
|
+
/**
|
|
11
|
+
* Minutes value (0-59)
|
|
12
|
+
*/
|
|
13
|
+
minutes: number;
|
|
14
|
+
};
|
|
15
|
+
type TimePickerMode = 'hour' | 'minute';
|
|
16
|
+
type TimePeriod = 'AM' | 'PM';
|
|
17
|
+
type TimePickerProps = {
|
|
18
|
+
/**
|
|
19
|
+
* Current time value
|
|
20
|
+
*/
|
|
21
|
+
value?: TimeValue;
|
|
22
|
+
/**
|
|
23
|
+
* Callback fired when time changes
|
|
24
|
+
*/
|
|
25
|
+
onChange?: (time: TimeValue) => void;
|
|
26
|
+
/**
|
|
27
|
+
* Use 24-hour format. When false, shows AM/PM selector
|
|
28
|
+
* @default false
|
|
29
|
+
*/
|
|
30
|
+
is24Hour?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Theme color for selected elements
|
|
33
|
+
* @default 'primary'
|
|
34
|
+
*/
|
|
35
|
+
themeColor?: ThemeColor;
|
|
36
|
+
/**
|
|
37
|
+
* Custom container style
|
|
38
|
+
*/
|
|
39
|
+
style?: StyleProp<ViewStyle>;
|
|
40
|
+
/**
|
|
41
|
+
* Minimum selectable time
|
|
42
|
+
*/
|
|
43
|
+
minTime?: TimeValue;
|
|
44
|
+
/**
|
|
45
|
+
* Maximum selectable time
|
|
46
|
+
*/
|
|
47
|
+
maxTime?: TimeValue;
|
|
48
|
+
};
|
|
49
|
+
type TimePickerDialogProps = {
|
|
50
|
+
/**
|
|
51
|
+
* Whether the dialog is open
|
|
52
|
+
*/
|
|
53
|
+
isOpen: boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Callback fired when dialog should close
|
|
56
|
+
*/
|
|
57
|
+
onClose: () => void;
|
|
58
|
+
/**
|
|
59
|
+
* Current time value
|
|
60
|
+
*/
|
|
61
|
+
value?: TimeValue;
|
|
62
|
+
/**
|
|
63
|
+
* Callback fired when time changes during selection
|
|
64
|
+
*/
|
|
65
|
+
onChange?: (time: TimeValue) => void;
|
|
66
|
+
/**
|
|
67
|
+
* Use 24-hour format. When false, shows AM/PM selector
|
|
68
|
+
* @default false
|
|
69
|
+
*/
|
|
70
|
+
is24Hour?: boolean;
|
|
71
|
+
/**
|
|
72
|
+
* Theme color for selected elements
|
|
73
|
+
* @default 'primary'
|
|
74
|
+
*/
|
|
75
|
+
themeColor?: ThemeColor;
|
|
76
|
+
/**
|
|
77
|
+
* Dialog title
|
|
78
|
+
* @default 'Select time'
|
|
79
|
+
*/
|
|
80
|
+
title?: ReactNode;
|
|
81
|
+
/**
|
|
82
|
+
* Confirm button text
|
|
83
|
+
* @default 'OK'
|
|
84
|
+
*/
|
|
85
|
+
confirmText?: string;
|
|
86
|
+
/**
|
|
87
|
+
* Cancel button text
|
|
88
|
+
* @default 'Cancel'
|
|
89
|
+
*/
|
|
90
|
+
cancelText?: string;
|
|
91
|
+
/**
|
|
92
|
+
* Callback fired when confirm button is pressed
|
|
93
|
+
*/
|
|
94
|
+
onConfirm?: (time: TimeValue) => void;
|
|
95
|
+
/**
|
|
96
|
+
* Callback fired when cancel button is pressed
|
|
97
|
+
*/
|
|
98
|
+
onCancel?: () => void;
|
|
99
|
+
};
|
|
100
|
+
type TimePickerTriggerProps = {
|
|
101
|
+
/**
|
|
102
|
+
* Current time value shown in trigger.
|
|
103
|
+
*/
|
|
104
|
+
value?: TimeValue;
|
|
105
|
+
/**
|
|
106
|
+
* Placeholder shown when no value is selected.
|
|
107
|
+
* @default 'Select time'
|
|
108
|
+
*/
|
|
109
|
+
placeholder?: string;
|
|
110
|
+
/**
|
|
111
|
+
* Use 24-hour format for display.
|
|
112
|
+
* @default false
|
|
113
|
+
*/
|
|
114
|
+
is24Hour?: boolean;
|
|
115
|
+
/**
|
|
116
|
+
* Theme color for visual accents.
|
|
117
|
+
* @default 'primary'
|
|
118
|
+
*/
|
|
119
|
+
themeColor?: ThemeColor;
|
|
120
|
+
/**
|
|
121
|
+
* Disable interaction.
|
|
122
|
+
* @default false
|
|
123
|
+
*/
|
|
124
|
+
isDisabled?: boolean;
|
|
125
|
+
/**
|
|
126
|
+
* Read-only state that blocks opening.
|
|
127
|
+
* @default false
|
|
128
|
+
*/
|
|
129
|
+
isReadOnly?: boolean;
|
|
130
|
+
/**
|
|
131
|
+
* Show clear button when value exists.
|
|
132
|
+
* @default true
|
|
133
|
+
*/
|
|
134
|
+
isClearable?: boolean;
|
|
135
|
+
/**
|
|
136
|
+
* Optional custom right icon.
|
|
137
|
+
*/
|
|
138
|
+
icon?: ReactNode;
|
|
139
|
+
/**
|
|
140
|
+
* Custom trigger container style.
|
|
141
|
+
*/
|
|
142
|
+
style?: StyleProp<ViewStyle>;
|
|
143
|
+
/**
|
|
144
|
+
* Custom trigger text style.
|
|
145
|
+
*/
|
|
146
|
+
textStyle?: StyleProp<TextStyle>;
|
|
147
|
+
/**
|
|
148
|
+
* Press handler used to open dialog.
|
|
149
|
+
*/
|
|
150
|
+
onPress: () => void;
|
|
151
|
+
/**
|
|
152
|
+
* Clear handler used when clear button is pressed.
|
|
153
|
+
*/
|
|
154
|
+
onClear?: () => void;
|
|
155
|
+
};
|
|
156
|
+
|
|
157
|
+
declare const TimePicker: React.FC<TimePickerProps>;
|
|
158
|
+
|
|
159
|
+
declare const TimePickerDialog: React.FC<TimePickerDialogProps>;
|
|
160
|
+
|
|
161
|
+
declare const TimePickerTrigger: React.FC<TimePickerTriggerProps>;
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* Convert 24-hour time to 12-hour format with period
|
|
165
|
+
*/
|
|
166
|
+
declare const to12HourFormat: (hours: number) => {
|
|
167
|
+
hours: number;
|
|
168
|
+
period: TimePeriod;
|
|
169
|
+
};
|
|
170
|
+
/**
|
|
171
|
+
* Convert 12-hour time with period to 24-hour format
|
|
172
|
+
*/
|
|
173
|
+
declare const to24HourFormat: (hours: number, period: TimePeriod) => number;
|
|
174
|
+
/**
|
|
175
|
+
* Format time value to display string
|
|
176
|
+
*/
|
|
177
|
+
declare const formatTimeValue: (time: TimeValue, is24Hour: boolean) => string;
|
|
178
|
+
/**
|
|
179
|
+
* Calculate angle for hour hand on clock face
|
|
180
|
+
*/
|
|
181
|
+
declare const getHourAngle: (hour: number, is24Hour: boolean) => number;
|
|
182
|
+
/**
|
|
183
|
+
* Calculate angle for minute hand on clock face
|
|
184
|
+
*/
|
|
185
|
+
declare const getMinuteAngle: (minute: number) => number;
|
|
186
|
+
/**
|
|
187
|
+
* Convert angle to hour value
|
|
188
|
+
*/
|
|
189
|
+
declare const angleToHour: (angle: number, _is24Hour: boolean) => number;
|
|
190
|
+
/**
|
|
191
|
+
* Convert angle to minute value
|
|
192
|
+
*/
|
|
193
|
+
declare const angleToMinute: (angle: number) => number;
|
|
194
|
+
/**
|
|
195
|
+
* Calculate angle from touch position on clock face
|
|
196
|
+
*/
|
|
197
|
+
declare const calculateAngleFromPosition: (centerX: number, centerY: number, touchX: number, touchY: number) => number;
|
|
198
|
+
/**
|
|
199
|
+
* Validate if time is within min/max range
|
|
200
|
+
*/
|
|
201
|
+
declare const isTimeInRange: (time: TimeValue, minTime?: TimeValue, maxTime?: TimeValue) => boolean;
|
|
202
|
+
/**
|
|
203
|
+
* Get current time as TimeValue
|
|
204
|
+
*/
|
|
205
|
+
declare const getCurrentTime: () => TimeValue;
|
|
206
|
+
/**
|
|
207
|
+
* Clamp hour value to valid range
|
|
208
|
+
*/
|
|
209
|
+
declare const clampHour: (hour: number, is24Hour: boolean) => number;
|
|
210
|
+
/**
|
|
211
|
+
* Clamp minute value to valid range
|
|
212
|
+
*/
|
|
213
|
+
declare const clampMinute: (minute: number) => number;
|
|
214
|
+
|
|
215
|
+
export { type TimePeriod, TimePicker, TimePickerDialog, type TimePickerDialogProps, type TimePickerMode, type TimePickerProps, TimePickerTrigger, type TimePickerTriggerProps, type TimeValue, angleToHour, angleToMinute, calculateAngleFromPosition, clampHour, clampMinute, formatTimeValue, getCurrentTime, getHourAngle, getMinuteAngle, isTimeInRange, to12HourFormat, to24HourFormat };
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
import { StyleProp, ViewStyle, TextStyle } from 'react-native';
|
|
3
|
+
import { T as ThemeColor } from '../index-BOw6tbkc.js';
|
|
4
|
+
|
|
5
|
+
type TimeValue = {
|
|
6
|
+
/**
|
|
7
|
+
* Hours value (0-23 for 24-hour format, 1-12 for 12-hour format)
|
|
8
|
+
*/
|
|
9
|
+
hours: number;
|
|
10
|
+
/**
|
|
11
|
+
* Minutes value (0-59)
|
|
12
|
+
*/
|
|
13
|
+
minutes: number;
|
|
14
|
+
};
|
|
15
|
+
type TimePickerMode = 'hour' | 'minute';
|
|
16
|
+
type TimePeriod = 'AM' | 'PM';
|
|
17
|
+
type TimePickerProps = {
|
|
18
|
+
/**
|
|
19
|
+
* Current time value
|
|
20
|
+
*/
|
|
21
|
+
value?: TimeValue;
|
|
22
|
+
/**
|
|
23
|
+
* Callback fired when time changes
|
|
24
|
+
*/
|
|
25
|
+
onChange?: (time: TimeValue) => void;
|
|
26
|
+
/**
|
|
27
|
+
* Use 24-hour format. When false, shows AM/PM selector
|
|
28
|
+
* @default false
|
|
29
|
+
*/
|
|
30
|
+
is24Hour?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Theme color for selected elements
|
|
33
|
+
* @default 'primary'
|
|
34
|
+
*/
|
|
35
|
+
themeColor?: ThemeColor;
|
|
36
|
+
/**
|
|
37
|
+
* Custom container style
|
|
38
|
+
*/
|
|
39
|
+
style?: StyleProp<ViewStyle>;
|
|
40
|
+
/**
|
|
41
|
+
* Minimum selectable time
|
|
42
|
+
*/
|
|
43
|
+
minTime?: TimeValue;
|
|
44
|
+
/**
|
|
45
|
+
* Maximum selectable time
|
|
46
|
+
*/
|
|
47
|
+
maxTime?: TimeValue;
|
|
48
|
+
};
|
|
49
|
+
type TimePickerDialogProps = {
|
|
50
|
+
/**
|
|
51
|
+
* Whether the dialog is open
|
|
52
|
+
*/
|
|
53
|
+
isOpen: boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Callback fired when dialog should close
|
|
56
|
+
*/
|
|
57
|
+
onClose: () => void;
|
|
58
|
+
/**
|
|
59
|
+
* Current time value
|
|
60
|
+
*/
|
|
61
|
+
value?: TimeValue;
|
|
62
|
+
/**
|
|
63
|
+
* Callback fired when time changes during selection
|
|
64
|
+
*/
|
|
65
|
+
onChange?: (time: TimeValue) => void;
|
|
66
|
+
/**
|
|
67
|
+
* Use 24-hour format. When false, shows AM/PM selector
|
|
68
|
+
* @default false
|
|
69
|
+
*/
|
|
70
|
+
is24Hour?: boolean;
|
|
71
|
+
/**
|
|
72
|
+
* Theme color for selected elements
|
|
73
|
+
* @default 'primary'
|
|
74
|
+
*/
|
|
75
|
+
themeColor?: ThemeColor;
|
|
76
|
+
/**
|
|
77
|
+
* Dialog title
|
|
78
|
+
* @default 'Select time'
|
|
79
|
+
*/
|
|
80
|
+
title?: ReactNode;
|
|
81
|
+
/**
|
|
82
|
+
* Confirm button text
|
|
83
|
+
* @default 'OK'
|
|
84
|
+
*/
|
|
85
|
+
confirmText?: string;
|
|
86
|
+
/**
|
|
87
|
+
* Cancel button text
|
|
88
|
+
* @default 'Cancel'
|
|
89
|
+
*/
|
|
90
|
+
cancelText?: string;
|
|
91
|
+
/**
|
|
92
|
+
* Callback fired when confirm button is pressed
|
|
93
|
+
*/
|
|
94
|
+
onConfirm?: (time: TimeValue) => void;
|
|
95
|
+
/**
|
|
96
|
+
* Callback fired when cancel button is pressed
|
|
97
|
+
*/
|
|
98
|
+
onCancel?: () => void;
|
|
99
|
+
};
|
|
100
|
+
type TimePickerTriggerProps = {
|
|
101
|
+
/**
|
|
102
|
+
* Current time value shown in trigger.
|
|
103
|
+
*/
|
|
104
|
+
value?: TimeValue;
|
|
105
|
+
/**
|
|
106
|
+
* Placeholder shown when no value is selected.
|
|
107
|
+
* @default 'Select time'
|
|
108
|
+
*/
|
|
109
|
+
placeholder?: string;
|
|
110
|
+
/**
|
|
111
|
+
* Use 24-hour format for display.
|
|
112
|
+
* @default false
|
|
113
|
+
*/
|
|
114
|
+
is24Hour?: boolean;
|
|
115
|
+
/**
|
|
116
|
+
* Theme color for visual accents.
|
|
117
|
+
* @default 'primary'
|
|
118
|
+
*/
|
|
119
|
+
themeColor?: ThemeColor;
|
|
120
|
+
/**
|
|
121
|
+
* Disable interaction.
|
|
122
|
+
* @default false
|
|
123
|
+
*/
|
|
124
|
+
isDisabled?: boolean;
|
|
125
|
+
/**
|
|
126
|
+
* Read-only state that blocks opening.
|
|
127
|
+
* @default false
|
|
128
|
+
*/
|
|
129
|
+
isReadOnly?: boolean;
|
|
130
|
+
/**
|
|
131
|
+
* Show clear button when value exists.
|
|
132
|
+
* @default true
|
|
133
|
+
*/
|
|
134
|
+
isClearable?: boolean;
|
|
135
|
+
/**
|
|
136
|
+
* Optional custom right icon.
|
|
137
|
+
*/
|
|
138
|
+
icon?: ReactNode;
|
|
139
|
+
/**
|
|
140
|
+
* Custom trigger container style.
|
|
141
|
+
*/
|
|
142
|
+
style?: StyleProp<ViewStyle>;
|
|
143
|
+
/**
|
|
144
|
+
* Custom trigger text style.
|
|
145
|
+
*/
|
|
146
|
+
textStyle?: StyleProp<TextStyle>;
|
|
147
|
+
/**
|
|
148
|
+
* Press handler used to open dialog.
|
|
149
|
+
*/
|
|
150
|
+
onPress: () => void;
|
|
151
|
+
/**
|
|
152
|
+
* Clear handler used when clear button is pressed.
|
|
153
|
+
*/
|
|
154
|
+
onClear?: () => void;
|
|
155
|
+
};
|
|
156
|
+
|
|
157
|
+
declare const TimePicker: React.FC<TimePickerProps>;
|
|
158
|
+
|
|
159
|
+
declare const TimePickerDialog: React.FC<TimePickerDialogProps>;
|
|
160
|
+
|
|
161
|
+
declare const TimePickerTrigger: React.FC<TimePickerTriggerProps>;
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* Convert 24-hour time to 12-hour format with period
|
|
165
|
+
*/
|
|
166
|
+
declare const to12HourFormat: (hours: number) => {
|
|
167
|
+
hours: number;
|
|
168
|
+
period: TimePeriod;
|
|
169
|
+
};
|
|
170
|
+
/**
|
|
171
|
+
* Convert 12-hour time with period to 24-hour format
|
|
172
|
+
*/
|
|
173
|
+
declare const to24HourFormat: (hours: number, period: TimePeriod) => number;
|
|
174
|
+
/**
|
|
175
|
+
* Format time value to display string
|
|
176
|
+
*/
|
|
177
|
+
declare const formatTimeValue: (time: TimeValue, is24Hour: boolean) => string;
|
|
178
|
+
/**
|
|
179
|
+
* Calculate angle for hour hand on clock face
|
|
180
|
+
*/
|
|
181
|
+
declare const getHourAngle: (hour: number, is24Hour: boolean) => number;
|
|
182
|
+
/**
|
|
183
|
+
* Calculate angle for minute hand on clock face
|
|
184
|
+
*/
|
|
185
|
+
declare const getMinuteAngle: (minute: number) => number;
|
|
186
|
+
/**
|
|
187
|
+
* Convert angle to hour value
|
|
188
|
+
*/
|
|
189
|
+
declare const angleToHour: (angle: number, _is24Hour: boolean) => number;
|
|
190
|
+
/**
|
|
191
|
+
* Convert angle to minute value
|
|
192
|
+
*/
|
|
193
|
+
declare const angleToMinute: (angle: number) => number;
|
|
194
|
+
/**
|
|
195
|
+
* Calculate angle from touch position on clock face
|
|
196
|
+
*/
|
|
197
|
+
declare const calculateAngleFromPosition: (centerX: number, centerY: number, touchX: number, touchY: number) => number;
|
|
198
|
+
/**
|
|
199
|
+
* Validate if time is within min/max range
|
|
200
|
+
*/
|
|
201
|
+
declare const isTimeInRange: (time: TimeValue, minTime?: TimeValue, maxTime?: TimeValue) => boolean;
|
|
202
|
+
/**
|
|
203
|
+
* Get current time as TimeValue
|
|
204
|
+
*/
|
|
205
|
+
declare const getCurrentTime: () => TimeValue;
|
|
206
|
+
/**
|
|
207
|
+
* Clamp hour value to valid range
|
|
208
|
+
*/
|
|
209
|
+
declare const clampHour: (hour: number, is24Hour: boolean) => number;
|
|
210
|
+
/**
|
|
211
|
+
* Clamp minute value to valid range
|
|
212
|
+
*/
|
|
213
|
+
declare const clampMinute: (minute: number) => number;
|
|
214
|
+
|
|
215
|
+
export { type TimePeriod, TimePicker, TimePickerDialog, type TimePickerDialogProps, type TimePickerMode, type TimePickerProps, TimePickerTrigger, type TimePickerTriggerProps, type TimeValue, angleToHour, angleToMinute, calculateAngleFromPosition, clampHour, clampMinute, formatTimeValue, getCurrentTime, getHourAngle, getMinuteAngle, isTimeInRange, to12HourFormat, to24HourFormat };
|