panelui-native 0.34.0 → 0.36.0
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 +2 -1
- package/lib/module/components/input/index.js +135 -32
- package/lib/module/components/input/index.js.map +1 -1
- package/lib/module/components/otp-input/index.js +4 -1
- package/lib/module/components/otp-input/index.js.map +1 -1
- package/lib/module/components/panelside/index.js +1 -1
- package/lib/module/components/panelside/index.js.map +1 -1
- package/lib/module/components/progress/index.js +64 -24
- package/lib/module/components/progress/index.js.map +1 -1
- package/lib/module/components/swipe/index.js +537 -0
- package/lib/module/components/swipe/index.js.map +1 -0
- package/lib/module/components/textarea/index.js +3 -1
- package/lib/module/components/textarea/index.js.map +1 -1
- package/lib/module/components/time-picker/index.js +801 -0
- package/lib/module/components/time-picker/index.js.map +1 -0
- package/lib/module/icons/index.js +59 -0
- package/lib/module/icons/index.js.map +1 -1
- package/lib/module/index.js +4 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/utils/time.js +180 -0
- package/lib/module/utils/time.js.map +1 -0
- package/lib/typescript/src/components/input/index.d.ts +92 -0
- package/lib/typescript/src/components/input/index.d.ts.map +1 -1
- package/lib/typescript/src/components/otp-input/index.d.ts.map +1 -1
- package/lib/typescript/src/components/progress/index.d.ts +25 -4
- package/lib/typescript/src/components/progress/index.d.ts.map +1 -1
- package/lib/typescript/src/components/swipe/index.d.ts +206 -0
- package/lib/typescript/src/components/swipe/index.d.ts.map +1 -0
- package/lib/typescript/src/components/textarea/index.d.ts.map +1 -1
- package/lib/typescript/src/components/time-picker/index.d.ts +104 -0
- package/lib/typescript/src/components/time-picker/index.d.ts.map +1 -0
- package/lib/typescript/src/icons/index.d.ts +4 -0
- package/lib/typescript/src/icons/index.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +4 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/utils/time.d.ts +88 -0
- package/lib/typescript/src/utils/time.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/components/input/index.tsx +171 -29
- package/src/components/otp-input/index.tsx +4 -1
- package/src/components/panelside/index.tsx +1 -1
- package/src/components/progress/index.tsx +93 -25
- package/src/components/swipe/index.tsx +687 -0
- package/src/components/textarea/index.tsx +3 -1
- package/src/components/time-picker/index.tsx +971 -0
- package/src/icons/index.tsx +47 -0
- package/src/index.ts +34 -0
- package/src/theme/use-theme.ts +1 -1
- package/src/utils/time.ts +192 -0
- package/theme.css +32 -0
|
@@ -1,3 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Input — a text field with a label, a description and an error line.
|
|
3
|
+
*
|
|
4
|
+
* The field's focus state is animated rather than switched. A border that
|
|
5
|
+
* snaps between two colours reads as a redraw; one that crosses over in
|
|
6
|
+
* 150ms reads as the field responding to you. The interpolation runs on the
|
|
7
|
+
* UI thread, so it costs nothing and keeps up with a fast tab through a form.
|
|
8
|
+
*
|
|
9
|
+
* Two backgrounds, because a field's job changes with what surrounds it:
|
|
10
|
+
* `outline` sits on the page and draws its own edge; `filled` sits inside a
|
|
11
|
+
* card or a sheet, where a second border next to the container's own reads as
|
|
12
|
+
* a seam.
|
|
13
|
+
*
|
|
14
|
+
* ```tsx
|
|
15
|
+
* <Input label="Email" placeholder="you@example.com" />
|
|
16
|
+
* <Input variant="filled" size="lg" label="Name" isRequired />
|
|
17
|
+
* <Input label="Note" startContent={<PencilIcon size={18} />} />
|
|
18
|
+
* ```
|
|
19
|
+
*
|
|
20
|
+
* ## An icon inside the field, and why it lives here
|
|
21
|
+
*
|
|
22
|
+
* `startContent` and `endContent` are measured and turned into padding on the
|
|
23
|
+
* text, so a value never runs underneath them however wide they turn out to
|
|
24
|
+
* be. They are positioned against the *field box* rather than against the
|
|
25
|
+
* component, which is the whole reason they are a prop rather than something
|
|
26
|
+
* you compose: a label and a description are laid out above and below the
|
|
27
|
+
* field, so anything centred on the component as a whole drifts upward the
|
|
28
|
+
* moment a label is added.
|
|
29
|
+
*
|
|
30
|
+
* `InputGroup` is still the right answer for a decorator that is not part of
|
|
31
|
+
* the field — a button attached to its end, a select bolted to its start, an
|
|
32
|
+
* addon with its own background. It measures the same way; it just spans a
|
|
33
|
+
* different box.
|
|
34
|
+
*/
|
|
35
|
+
import { type ReactNode } from 'react';
|
|
1
36
|
import { TextInput, type TextInputProps } from 'react-native';
|
|
2
37
|
import { type VariantProps } from 'tailwind-variants';
|
|
3
38
|
import type { KeyboardAvoidanceMode } from '../../hooks/use-keyboard-avoidance.js';
|
|
@@ -13,22 +48,32 @@ declare const inputVariants: import("tailwind-variants").TVReturnType<{
|
|
|
13
48
|
size: {
|
|
14
49
|
sm: {
|
|
15
50
|
field: string;
|
|
51
|
+
startContent: string;
|
|
52
|
+
endContent: string;
|
|
16
53
|
};
|
|
17
54
|
md: {
|
|
18
55
|
field: string;
|
|
56
|
+
startContent: string;
|
|
57
|
+
endContent: string;
|
|
19
58
|
};
|
|
20
59
|
lg: {
|
|
21
60
|
field: string;
|
|
61
|
+
startContent: string;
|
|
62
|
+
endContent: string;
|
|
22
63
|
};
|
|
23
64
|
};
|
|
24
65
|
multiline: {
|
|
25
66
|
true: {
|
|
26
67
|
field: string;
|
|
68
|
+
startContent: string;
|
|
69
|
+
endContent: string;
|
|
27
70
|
};
|
|
28
71
|
};
|
|
29
72
|
disabled: {
|
|
30
73
|
true: {
|
|
31
74
|
field: string;
|
|
75
|
+
startContent: string;
|
|
76
|
+
endContent: string;
|
|
32
77
|
};
|
|
33
78
|
};
|
|
34
79
|
}, {
|
|
@@ -36,6 +81,9 @@ declare const inputVariants: import("tailwind-variants").TVReturnType<{
|
|
|
36
81
|
field: string;
|
|
37
82
|
description: string;
|
|
38
83
|
error: string;
|
|
84
|
+
fieldBox: string;
|
|
85
|
+
startContent: string;
|
|
86
|
+
endContent: string;
|
|
39
87
|
}, undefined, {
|
|
40
88
|
variant: {
|
|
41
89
|
outline: {
|
|
@@ -48,22 +96,32 @@ declare const inputVariants: import("tailwind-variants").TVReturnType<{
|
|
|
48
96
|
size: {
|
|
49
97
|
sm: {
|
|
50
98
|
field: string;
|
|
99
|
+
startContent: string;
|
|
100
|
+
endContent: string;
|
|
51
101
|
};
|
|
52
102
|
md: {
|
|
53
103
|
field: string;
|
|
104
|
+
startContent: string;
|
|
105
|
+
endContent: string;
|
|
54
106
|
};
|
|
55
107
|
lg: {
|
|
56
108
|
field: string;
|
|
109
|
+
startContent: string;
|
|
110
|
+
endContent: string;
|
|
57
111
|
};
|
|
58
112
|
};
|
|
59
113
|
multiline: {
|
|
60
114
|
true: {
|
|
61
115
|
field: string;
|
|
116
|
+
startContent: string;
|
|
117
|
+
endContent: string;
|
|
62
118
|
};
|
|
63
119
|
};
|
|
64
120
|
disabled: {
|
|
65
121
|
true: {
|
|
66
122
|
field: string;
|
|
123
|
+
startContent: string;
|
|
124
|
+
endContent: string;
|
|
67
125
|
};
|
|
68
126
|
};
|
|
69
127
|
}, {
|
|
@@ -71,6 +129,9 @@ declare const inputVariants: import("tailwind-variants").TVReturnType<{
|
|
|
71
129
|
field: string;
|
|
72
130
|
description: string;
|
|
73
131
|
error: string;
|
|
132
|
+
fieldBox: string;
|
|
133
|
+
startContent: string;
|
|
134
|
+
endContent: string;
|
|
74
135
|
}, import("tailwind-variants").TVReturnType<{
|
|
75
136
|
variant: {
|
|
76
137
|
outline: {
|
|
@@ -83,22 +144,32 @@ declare const inputVariants: import("tailwind-variants").TVReturnType<{
|
|
|
83
144
|
size: {
|
|
84
145
|
sm: {
|
|
85
146
|
field: string;
|
|
147
|
+
startContent: string;
|
|
148
|
+
endContent: string;
|
|
86
149
|
};
|
|
87
150
|
md: {
|
|
88
151
|
field: string;
|
|
152
|
+
startContent: string;
|
|
153
|
+
endContent: string;
|
|
89
154
|
};
|
|
90
155
|
lg: {
|
|
91
156
|
field: string;
|
|
157
|
+
startContent: string;
|
|
158
|
+
endContent: string;
|
|
92
159
|
};
|
|
93
160
|
};
|
|
94
161
|
multiline: {
|
|
95
162
|
true: {
|
|
96
163
|
field: string;
|
|
164
|
+
startContent: string;
|
|
165
|
+
endContent: string;
|
|
97
166
|
};
|
|
98
167
|
};
|
|
99
168
|
disabled: {
|
|
100
169
|
true: {
|
|
101
170
|
field: string;
|
|
171
|
+
startContent: string;
|
|
172
|
+
endContent: string;
|
|
102
173
|
};
|
|
103
174
|
};
|
|
104
175
|
}, {
|
|
@@ -106,6 +177,9 @@ declare const inputVariants: import("tailwind-variants").TVReturnType<{
|
|
|
106
177
|
field: string;
|
|
107
178
|
description: string;
|
|
108
179
|
error: string;
|
|
180
|
+
fieldBox: string;
|
|
181
|
+
startContent: string;
|
|
182
|
+
endContent: string;
|
|
109
183
|
}, undefined, unknown, unknown, undefined>>;
|
|
110
184
|
type InputVariantProps = VariantProps<typeof inputVariants>;
|
|
111
185
|
export interface InputProps extends TextInputProps, Omit<InputVariantProps, 'disabled' | 'multiline'> {
|
|
@@ -118,6 +192,24 @@ export interface InputProps extends TextInputProps, Omit<InputVariantProps, 'dis
|
|
|
118
192
|
/** Marks the field required — an asterisk on the label, and the a11y state. */
|
|
119
193
|
isRequired?: boolean;
|
|
120
194
|
disabled?: boolean;
|
|
195
|
+
/**
|
|
196
|
+
* Content inside the field, before the text — usually an icon. Measured, so
|
|
197
|
+
* the text is padded clear of it however wide it is.
|
|
198
|
+
*
|
|
199
|
+
* `start`, not `left`: it follows the reading direction, and swaps sides
|
|
200
|
+
* under `Direction dir="rtl"` along with the text it introduces.
|
|
201
|
+
*/
|
|
202
|
+
startContent?: ReactNode;
|
|
203
|
+
/** Content inside the field, after the text — an icon, a unit, a count. */
|
|
204
|
+
endContent?: ReactNode;
|
|
205
|
+
/**
|
|
206
|
+
* Let touches reach the content instead of falling through to the field.
|
|
207
|
+
*
|
|
208
|
+
* Off by default: an icon is decoration, and a tap anywhere on a field
|
|
209
|
+
* should put the caret in it rather than hitting a dead spot. Turn it on for
|
|
210
|
+
* content that does something — a clear button, a show-password toggle.
|
|
211
|
+
*/
|
|
212
|
+
interactiveContent?: boolean;
|
|
121
213
|
/**
|
|
122
214
|
* Keep the field clear of the software keyboard. Moves by exactly the
|
|
123
215
|
* overlap, and not at all when the field is already clear — or when the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/input/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/input/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,OAAO,EAAgD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACrF,OAAO,EACL,SAAS,EAGT,KAAK,cAAc,EACpB,MAAM,cAAc,CAAC;AAOtB,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uCAAoC,CAAC;AAShF,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAwEjB,CAAC;AAEH,KAAK,iBAAiB,GAAG,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC;AAE5D,MAAM,WAAW,UACf,SAAQ,cAAc,EACpB,IAAI,CAAC,iBAAiB,EAAE,UAAU,GAAG,WAAW,CAAC;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+EAA+E;IAC/E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,2EAA2E;IAC3E,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,qBAAqB,CAAC;IACrC,+EAA+E;IAC/E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAID,eAAO,MAAM,KAAK,kGA2NjB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/otp-input/index.tsx"],"names":[],"mappings":"AA0BA,OAAO,EAAa,SAAS,EAAQ,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAW/E,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAS1D,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/otp-input/index.tsx"],"names":[],"mappings":"AA0BA,OAAO,EAAa,SAAS,EAAQ,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAW/E,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAS1D,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CA0Bf,CAAC;AAEH,KAAK,eAAe,GAAG,YAAY,CAAC,OAAO,WAAW,CAAC,CAAC;AAExD,MAAM,WAAW,aACf,SAAQ,IAAI,CACR,cAAc,EACd,OAAO,GAAG,cAAc,GAAG,cAAc,GAAG,WAAW,GAAG,UAAU,CACrE,EACD,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,sDAAsD;IACtD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC;;;OAGG;IACH,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1B,8EAA8E;IAC9E,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,+EAA+E;IAC/E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gFAAgF;IAChF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qEAAqE;IACrE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uFAAuF;IACvF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wDAAwD;IACxD,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAuHD,eAAO,MAAM,QAAQ,qGAqKpB,CAAC"}
|
|
@@ -121,8 +121,21 @@ declare const progressVariants: import("tailwind-variants").TVReturnType<{
|
|
|
121
121
|
type ProgressVariantProps = VariantProps<typeof progressVariants>;
|
|
122
122
|
export interface ProgressProps extends Omit<ViewProps, 'children'>, ProgressVariantProps {
|
|
123
123
|
className?: string;
|
|
124
|
-
/**
|
|
124
|
+
/**
|
|
125
|
+
* Where the work has got to, somewhere between `minValue` and `maxValue`.
|
|
126
|
+
* Ignored when `indeterminate` is set.
|
|
127
|
+
*/
|
|
125
128
|
value?: number;
|
|
129
|
+
/**
|
|
130
|
+
* The bottom of the range — the value at which the bar reads as empty.
|
|
131
|
+
* Defaults to `0`.
|
|
132
|
+
*/
|
|
133
|
+
minValue?: number;
|
|
134
|
+
/**
|
|
135
|
+
* The top of the range — the value at which the bar reads as full. Defaults
|
|
136
|
+
* to `100`, so a bare percentage keeps working with neither bound set.
|
|
137
|
+
*/
|
|
138
|
+
maxValue?: number;
|
|
126
139
|
/** Show a looping animation for unknown-duration work. */
|
|
127
140
|
indeterminate?: boolean;
|
|
128
141
|
/** Extra classes for the moving indicator. */
|
|
@@ -144,9 +157,11 @@ export interface ProgressProps extends Omit<ViewProps, 'children'>, ProgressVari
|
|
|
144
157
|
*/
|
|
145
158
|
valueLabel?: string;
|
|
146
159
|
/**
|
|
147
|
-
*
|
|
148
|
-
*
|
|
149
|
-
*
|
|
160
|
+
* How to write the value, through `Intl.NumberFormat`. A `percent` style
|
|
161
|
+
* formats how far along the bar is; every other style formats the value
|
|
162
|
+
* itself, so `{ style: 'currency', currency: 'USD' }` against a `maxValue`
|
|
163
|
+
* of `2000` reads `$1,250.00` rather than a percentage of it. Falls back to
|
|
164
|
+
* a rounded percent when omitted.
|
|
150
165
|
*/
|
|
151
166
|
formatOptions?: Intl.NumberFormatOptions;
|
|
152
167
|
/** Extra classes for the label + value-label row. */
|
|
@@ -159,6 +174,12 @@ export interface ProgressProps extends Omit<ViewProps, 'children'>, ProgressVari
|
|
|
159
174
|
*
|
|
160
175
|
* Pass `label` or `showValueLabel` to caption the bar with a header row; the
|
|
161
176
|
* bare track renders when neither is set, so existing call sites are untouched.
|
|
177
|
+
*
|
|
178
|
+
* The value is read against `minValue` / `maxValue`, which default to 0 and
|
|
179
|
+
* 100 — so a percentage needs neither. Set them and the bar speaks in whatever
|
|
180
|
+
* the work is actually counted in: bytes uploaded, seats filled, points
|
|
181
|
+
* scored. Nothing has to be converted to a percent on the way in, and the
|
|
182
|
+
* screen reader is told the real range rather than a derived one.
|
|
162
183
|
*/
|
|
163
184
|
export declare const Progress: import("react").ForwardRefExoticComponent<ProgressProps & import("react").RefAttributes<View>>;
|
|
164
185
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/progress/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAA0B,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAW5E,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAS1D,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAyBpB,CAAC;AAEH,KAAK,oBAAoB,GAAG,YAAY,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAElE,MAAM,WAAW,aACf,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,EACjC,oBAAoB;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/progress/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAA0B,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAW5E,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAS1D,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAyBpB,CAAC;AAEH,KAAK,oBAAoB,GAAG,YAAY,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAElE,MAAM,WAAW,aACf,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,EACjC,oBAAoB;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0DAA0D;IAC1D,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,8CAA8C;IAC9C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC;IACzC,qDAAqD;IACrD,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AA8CD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,QAAQ,gGA6IpB,CAAC"}
|
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Swipe — a row that slides aside to reveal the things you can do to it.
|
|
3
|
+
*
|
|
4
|
+
* It is the one list interaction a phone has that a page does not: the actions
|
|
5
|
+
* are not on screen taking up room, they are behind the row, and the gesture
|
|
6
|
+
* that reveals them is the same one everywhere else in the OS. An inbox, a
|
|
7
|
+
* task list, a settings screen — all of them want it, and all of them
|
|
8
|
+
* otherwise end up with a trailing button too small to hit.
|
|
9
|
+
*
|
|
10
|
+
* ```tsx
|
|
11
|
+
* <Swipe>
|
|
12
|
+
* <Swipe.End>
|
|
13
|
+
* <Swipe.Action icon={<TrashIcon />} label="Delete" color="destructive" onPress={remove} />
|
|
14
|
+
* </Swipe.End>
|
|
15
|
+
* <Item variant="outline">
|
|
16
|
+
* <Item.Content><Item.Title>Invoice.pdf</Item.Title></Item.Content>
|
|
17
|
+
* </Item>
|
|
18
|
+
* </Swipe>
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* The sides are `start` and `end` rather than left and right, because the
|
|
22
|
+
* gesture mirrors with the reading direction: in a right-to-left app the row
|
|
23
|
+
* that opened toward the right has to open toward the left, and a caller
|
|
24
|
+
* should not have to write that twice. Yoga mirrors where the panels sit; the
|
|
25
|
+
* drag is measured in raw pixels and cannot be mirrored for us, so it reads
|
|
26
|
+
* the direction and turns itself around.
|
|
27
|
+
*
|
|
28
|
+
* Everything that moves runs on the UI thread. A row being dragged does not
|
|
29
|
+
* re-render — the only React work in a swipe is the callback at the end of it.
|
|
30
|
+
*/
|
|
31
|
+
import { type ReactNode } from 'react';
|
|
32
|
+
import { View, type ViewProps } from 'react-native';
|
|
33
|
+
import { type VariantProps } from 'tailwind-variants';
|
|
34
|
+
type SwipeSide = 'start' | 'end';
|
|
35
|
+
/** The side a row is open on, or `null` while it is closed. */
|
|
36
|
+
export type SwipeOpenSide = SwipeSide | null;
|
|
37
|
+
export interface SwipeHandle {
|
|
38
|
+
/** Slide the row aside to reveal one side's actions. */
|
|
39
|
+
open: (side: SwipeSide) => void;
|
|
40
|
+
/** Put the row back. */
|
|
41
|
+
close: () => void;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* A tile is a filled block of colour with its content laid over it, which
|
|
45
|
+
* settles both halves of how it is coloured:
|
|
46
|
+
*
|
|
47
|
+
* - The fill is the status colour at full strength, never a tint of it. A tile
|
|
48
|
+
* only exists while the row is out of the way, so it has to be legible in the
|
|
49
|
+
* moment it appears; a 6%-alpha wash of the row's own background is not a
|
|
50
|
+
* tile at all, it is a hole with a glyph floating in it.
|
|
51
|
+
* - The content is white, because the status colours are chosen to be carried
|
|
52
|
+
* at full strength with white over them. The `-foreground` token of a status
|
|
53
|
+
* is the *darker text* form of that hue, meant for a neutral surface — laid
|
|
54
|
+
* over the fill it is the same hue twice and the label all but disappears.
|
|
55
|
+
*
|
|
56
|
+
* `default` and `primary` are the two that cannot take white. `primary`
|
|
57
|
+
* inverts with the theme and owns a true on-primary token, so it uses it;
|
|
58
|
+
* `default` is a mid grey in every theme, and takes the background colour,
|
|
59
|
+
* which is the neutral furthest from it in whichever direction the theme runs.
|
|
60
|
+
*/
|
|
61
|
+
declare const actionVariants: import("tailwind-variants").TVReturnType<{
|
|
62
|
+
color: {
|
|
63
|
+
default: {
|
|
64
|
+
root: string;
|
|
65
|
+
label: string;
|
|
66
|
+
};
|
|
67
|
+
primary: {
|
|
68
|
+
root: string;
|
|
69
|
+
label: string;
|
|
70
|
+
};
|
|
71
|
+
success: {
|
|
72
|
+
root: string;
|
|
73
|
+
label: string;
|
|
74
|
+
};
|
|
75
|
+
warning: {
|
|
76
|
+
root: string;
|
|
77
|
+
label: string;
|
|
78
|
+
};
|
|
79
|
+
info: {
|
|
80
|
+
root: string;
|
|
81
|
+
label: string;
|
|
82
|
+
};
|
|
83
|
+
destructive: {
|
|
84
|
+
root: string;
|
|
85
|
+
label: string;
|
|
86
|
+
};
|
|
87
|
+
};
|
|
88
|
+
}, {
|
|
89
|
+
root: string;
|
|
90
|
+
label: string;
|
|
91
|
+
}, undefined, {
|
|
92
|
+
color: {
|
|
93
|
+
default: {
|
|
94
|
+
root: string;
|
|
95
|
+
label: string;
|
|
96
|
+
};
|
|
97
|
+
primary: {
|
|
98
|
+
root: string;
|
|
99
|
+
label: string;
|
|
100
|
+
};
|
|
101
|
+
success: {
|
|
102
|
+
root: string;
|
|
103
|
+
label: string;
|
|
104
|
+
};
|
|
105
|
+
warning: {
|
|
106
|
+
root: string;
|
|
107
|
+
label: string;
|
|
108
|
+
};
|
|
109
|
+
info: {
|
|
110
|
+
root: string;
|
|
111
|
+
label: string;
|
|
112
|
+
};
|
|
113
|
+
destructive: {
|
|
114
|
+
root: string;
|
|
115
|
+
label: string;
|
|
116
|
+
};
|
|
117
|
+
};
|
|
118
|
+
}, {
|
|
119
|
+
root: string;
|
|
120
|
+
label: string;
|
|
121
|
+
}, import("tailwind-variants").TVReturnType<{
|
|
122
|
+
color: {
|
|
123
|
+
default: {
|
|
124
|
+
root: string;
|
|
125
|
+
label: string;
|
|
126
|
+
};
|
|
127
|
+
primary: {
|
|
128
|
+
root: string;
|
|
129
|
+
label: string;
|
|
130
|
+
};
|
|
131
|
+
success: {
|
|
132
|
+
root: string;
|
|
133
|
+
label: string;
|
|
134
|
+
};
|
|
135
|
+
warning: {
|
|
136
|
+
root: string;
|
|
137
|
+
label: string;
|
|
138
|
+
};
|
|
139
|
+
info: {
|
|
140
|
+
root: string;
|
|
141
|
+
label: string;
|
|
142
|
+
};
|
|
143
|
+
destructive: {
|
|
144
|
+
root: string;
|
|
145
|
+
label: string;
|
|
146
|
+
};
|
|
147
|
+
};
|
|
148
|
+
}, {
|
|
149
|
+
root: string;
|
|
150
|
+
label: string;
|
|
151
|
+
}, undefined, unknown, unknown, undefined>>;
|
|
152
|
+
export type SwipeActionColor = 'default' | 'primary' | 'success' | 'warning' | 'info' | 'destructive';
|
|
153
|
+
export interface SwipeActionProps extends Omit<ViewProps, 'children'>, VariantProps<typeof actionVariants> {
|
|
154
|
+
className?: string;
|
|
155
|
+
/** What the action does. Also what a screen reader is offered. */
|
|
156
|
+
label: string;
|
|
157
|
+
/**
|
|
158
|
+
* Drawn above the label and tinted to match it. Pass the glyph, not a colour
|
|
159
|
+
* and not a size — a tile sizes it to read at a glance, since it is the part
|
|
160
|
+
* of an action the eye reaches before the word underneath it.
|
|
161
|
+
*/
|
|
162
|
+
icon?: ReactNode;
|
|
163
|
+
/** Run when the tile is tapped, or when a full swipe reaches it. */
|
|
164
|
+
onPress?: () => void;
|
|
165
|
+
/**
|
|
166
|
+
* Leave the row open after the action runs. Off by default: an action that
|
|
167
|
+
* has already happened has nothing left to offer, and a row left standing
|
|
168
|
+
* open is the most common way a swipe list ends up feeling stuck.
|
|
169
|
+
*/
|
|
170
|
+
keepOpen?: boolean;
|
|
171
|
+
/** Extra classes for the label. */
|
|
172
|
+
labelClassName?: string;
|
|
173
|
+
}
|
|
174
|
+
export interface SwipePanelProps extends Omit<ViewProps, 'children'> {
|
|
175
|
+
className?: string;
|
|
176
|
+
children?: ReactNode;
|
|
177
|
+
}
|
|
178
|
+
export interface SwipeProps extends Omit<ViewProps, 'children'> {
|
|
179
|
+
className?: string;
|
|
180
|
+
/**
|
|
181
|
+
* The row itself, plus a `Swipe.Start` and/or `Swipe.End` holding its
|
|
182
|
+
* actions. Order does not matter — the panels are recognised by type.
|
|
183
|
+
*/
|
|
184
|
+
children?: ReactNode;
|
|
185
|
+
/**
|
|
186
|
+
* Let a drag carried well past the panel fire its outermost action on
|
|
187
|
+
* release, without the tile ever being tapped. On by default, and the reason
|
|
188
|
+
* the far end of a panel is the destructive slot by convention.
|
|
189
|
+
*/
|
|
190
|
+
fullSwipe?: boolean;
|
|
191
|
+
/** Turn the gesture off and leave the row static. The tiles stay tappable. */
|
|
192
|
+
disabled?: boolean;
|
|
193
|
+
/** Tick when a drag crosses the point at which letting go fires an action. */
|
|
194
|
+
haptics?: boolean;
|
|
195
|
+
/** Told which side opened, or `null` when the row closed. */
|
|
196
|
+
onOpenChange?: (side: SwipeOpenSide) => void;
|
|
197
|
+
/** Extra classes for the moving row. */
|
|
198
|
+
contentClassName?: string;
|
|
199
|
+
}
|
|
200
|
+
export declare const Swipe: import("react").ForwardRefExoticComponent<SwipeProps & import("react").RefAttributes<SwipeHandle>> & {
|
|
201
|
+
Start: import("react").ForwardRefExoticComponent<SwipePanelProps & import("react").RefAttributes<View>>;
|
|
202
|
+
End: import("react").ForwardRefExoticComponent<SwipePanelProps & import("react").RefAttributes<View>>;
|
|
203
|
+
Action: import("react").ForwardRefExoticComponent<SwipeActionProps & import("react").RefAttributes<View>>;
|
|
204
|
+
};
|
|
205
|
+
export {};
|
|
206
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/swipe/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,EAYL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,IAAI,EAA0B,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAU5E,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AA0B1D,KAAK,SAAS,GAAG,OAAO,GAAG,KAAK,CAAC;AAEjC,+DAA+D;AAC/D,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,IAAI,CAAC;AAE7C,MAAM,WAAW,WAAW;IAC1B,wDAAwD;IACxD,IAAI,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IAChC,wBAAwB;IACxB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAYD;;;;;;;;;;;;;;;;;GAiBG;AACH,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAkBlB,CAAC;AAEH,MAAM,MAAM,gBAAgB,GACxB,SAAS,GACT,SAAS,GACT,SAAS,GACT,SAAS,GACT,MAAM,GACN,aAAa,CAAC;AAelB,MAAM,WAAW,gBACf,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,EACjC,YAAY,CAAC,OAAO,cAAc,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mCAAmC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AA0FD,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AA+CD,MAAM,WAAW,UAAW,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6DAA6D;IAC7D,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,IAAI,CAAC;IAC7C,wCAAwC;IACxC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAkVD,eAAO,MAAM,KAAK;;;;CAIhB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/textarea/index.tsx"],"names":[],"mappings":"AAsBA,OAAO,EACL,SAAS,EAIT,KAAK,cAAc,EACpB,MAAM,cAAc,CAAC;AAOtB,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uCAAoC,CAAC;AAsBhF,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/textarea/index.tsx"],"names":[],"mappings":"AAsBA,OAAO,EACL,SAAS,EAIT,KAAK,cAAc,EACpB,MAAM,cAAc,CAAC;AAOtB,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uCAAoC,CAAC;AAsBhF,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;IAgClB,yEAAyE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAAzE,yEAAyE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAAzE,yEAAyE;;;;;;;;;;;;;2CAS3E,CAAC;AAEH,KAAK,oBAAoB,GAAG,YAAY,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAElE,MAAM,WAAW,aACf,SAAQ,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,eAAe,CAAC,EACzD,IAAI,CAAC,oBAAoB,EAAE,UAAU,GAAG,MAAM,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+EAA+E;IAC/E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2EAA2E;IAC3E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,qBAAqB,CAAC;IACrC,+EAA+E;IAC/E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAID,eAAO,MAAM,QAAQ,qGA0NpB,CAAC"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TimePicker — a time of day behind a trigger, in one of three faces.
|
|
3
|
+
*
|
|
4
|
+
* ```tsx
|
|
5
|
+
* const [time, setTime] = useState<TimeValue>();
|
|
6
|
+
*
|
|
7
|
+
* <TimePicker value={time} onValueChange={setTime} />
|
|
8
|
+
* ```
|
|
9
|
+
*
|
|
10
|
+
* The value is `{ hour, minute }` on a 24-hour clock, whatever the face shows.
|
|
11
|
+
* A 12-hour display is a rendering choice; storing 7pm as `{ hour: 7 }` plus a
|
|
12
|
+
* meridiem flag would put the flag into every comparison downstream.
|
|
13
|
+
*
|
|
14
|
+
* ## Three layouts, because "pick a time" is three different tasks
|
|
15
|
+
*
|
|
16
|
+
* - **`wheel`** — hour, minute and meridiem as snapping columns. The precise
|
|
17
|
+
* one: any minute in the day is two or three flicks away. The default.
|
|
18
|
+
* - **`clock`** — a face beside a list of times at a fixed step. For picking a
|
|
19
|
+
* *slot* rather than a time — a booking, a reminder, an appointment — where
|
|
20
|
+
* the face answers "is that morning or evening?" faster than reading digits.
|
|
21
|
+
* - **`ruler`** — one large readout over a swipeable scale. The coarse one, and
|
|
22
|
+
* the only one that reads at arm's length, so it is the one for a sheet with
|
|
23
|
+
* a thumb on it.
|
|
24
|
+
*
|
|
25
|
+
* All three produce the same value and take the same props. Swapping between
|
|
26
|
+
* them is a one-word change, which is the point of them being one component.
|
|
27
|
+
*
|
|
28
|
+
* ## Presentation is separate from layout
|
|
29
|
+
*
|
|
30
|
+
* `popover`, `dialog` and `bottom-sheet` wrap the same panel; `inline` renders
|
|
31
|
+
* it bare, for composing into a Frame or a form. Popover and sheet hand off to
|
|
32
|
+
* `Popover`, which already owns both — but `Popover` has no dialog form, so
|
|
33
|
+
* the switch lives here rather than being pushed down into it. A picker is
|
|
34
|
+
* also the wrong place to widen a general-purpose overlay: the three shapes
|
|
35
|
+
* differ in how they are *dismissed*, not in what they contain.
|
|
36
|
+
*
|
|
37
|
+
* ## Scroll offset, not gesture maths
|
|
38
|
+
*
|
|
39
|
+
* The wheel, the clock's list and the ruler are all scroll views with
|
|
40
|
+
* `snapToOffsets`, and the selection is `Math.round(offset / itemSize)`. That
|
|
41
|
+
* buys momentum, deceleration, edge bounce and platform-correct fling physics
|
|
42
|
+
* for nothing, and none of it would be worth rebuilding on a pan gesture. The
|
|
43
|
+
* per-item fade and the ruler's readout follow the offset on the UI thread, so
|
|
44
|
+
* scrolling never round-trips through React — only the settled value does.
|
|
45
|
+
*/
|
|
46
|
+
import { type ReactElement, type ReactNode } from 'react';
|
|
47
|
+
import { type HourCycle, type TimeValue } from '../../utils/time.js';
|
|
48
|
+
export type { HourCycle, TimeValue };
|
|
49
|
+
/** Which face the panel draws. */
|
|
50
|
+
export type TimePickerLayout = 'wheel' | 'clock' | 'ruler';
|
|
51
|
+
/** How the panel gets onto the screen. */
|
|
52
|
+
export type TimePickerPresentation = 'popover' | 'dialog' | 'bottom-sheet' | 'inline';
|
|
53
|
+
export interface TimePickerProps {
|
|
54
|
+
/** Controlled selection, as `{ hour, minute }` on a 24-hour clock. */
|
|
55
|
+
value?: TimeValue;
|
|
56
|
+
/** Starting selection when uncontrolled. Defaults to the top of the hour. */
|
|
57
|
+
defaultValue?: TimeValue;
|
|
58
|
+
onValueChange?: (value: TimeValue) => void;
|
|
59
|
+
/** Which face the panel draws. */
|
|
60
|
+
layout?: TimePickerLayout;
|
|
61
|
+
/** How the panel gets onto the screen. `inline` renders it with no trigger. */
|
|
62
|
+
presentation?: TimePickerPresentation;
|
|
63
|
+
/** Controlled open state of the panel. */
|
|
64
|
+
open?: boolean;
|
|
65
|
+
onOpenChange?: (open: boolean) => void;
|
|
66
|
+
/** `24` drops the meridiem column and writes hours 00–23. */
|
|
67
|
+
hourCycle?: HourCycle;
|
|
68
|
+
/**
|
|
69
|
+
* Minutes between selectable times. `wheel` defaults to 1; `clock` and
|
|
70
|
+
* `ruler` default to 30 and 15, since both scroll the whole day at once.
|
|
71
|
+
*/
|
|
72
|
+
minuteStep?: number;
|
|
73
|
+
/** Earliest selectable time, inclusive. */
|
|
74
|
+
minTime?: TimeValue;
|
|
75
|
+
/** Latest selectable time, inclusive. */
|
|
76
|
+
maxTime?: TimeValue;
|
|
77
|
+
/** What the trigger reads when nothing has been chosen. */
|
|
78
|
+
placeholder?: string;
|
|
79
|
+
/** Override how the chosen time is written on the trigger. */
|
|
80
|
+
format?: (value: TimeValue) => string;
|
|
81
|
+
/** BCP 47 tag for the time's text and the meridiem labels. */
|
|
82
|
+
locale?: string;
|
|
83
|
+
/** Stop the trigger opening it, and the faces from being scrolled. */
|
|
84
|
+
disabled?: boolean;
|
|
85
|
+
className?: string;
|
|
86
|
+
/**
|
|
87
|
+
* A trigger of your own. Given one, it is cloned with an `onPress` that
|
|
88
|
+
* opens the panel — so a field row or an icon button can stand in for the
|
|
89
|
+
* default button without this component knowing what either looks like.
|
|
90
|
+
*
|
|
91
|
+
* Ignored by `presentation="inline"`, which has no trigger.
|
|
92
|
+
*/
|
|
93
|
+
children?: ReactElement<{
|
|
94
|
+
onPress?: () => void;
|
|
95
|
+
}> | ReactNode;
|
|
96
|
+
}
|
|
97
|
+
declare function TimePickerRoot({ value: valueProp, defaultValue, onValueChange, layout, presentation, open: openProp, onOpenChange, hourCycle, minuteStep, minTime, maxTime, placeholder, format, locale, disabled, className, children, }: TimePickerProps): import("react").JSX.Element;
|
|
98
|
+
declare namespace TimePickerRoot {
|
|
99
|
+
var displayName: string;
|
|
100
|
+
}
|
|
101
|
+
export declare const TimePicker: typeof TimePickerRoot & {
|
|
102
|
+
Trigger: ({ children }: import("../popover/index.js").PopoverTriggerProps) => import("react").JSX.Element;
|
|
103
|
+
};
|
|
104
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/time-picker/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,OAAO,EAML,KAAK,YAAY,EACjB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAuBf,OAAO,EAYL,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,qBAAkB,CAAC;AAK1B,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AAErC,kCAAkC;AAClC,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;AAE3D,0CAA0C;AAC1C,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,QAAQ,GAAG,cAAc,GAAG,QAAQ,CAAC;AA+nBtF,MAAM,WAAW,eAAe;IAC9B,sEAAsE;IACtE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IAC3C,kCAAkC;IAClC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,+EAA+E;IAC/E,YAAY,CAAC,EAAE,sBAAsB,CAAC;IACtC,0CAA0C;IAC1C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,6DAA6D;IAC7D,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,yCAAyC;IACzC,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,CAAC;IACtC,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,YAAY,CAAC;QAAE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC,GAAG,SAAS,CAAC;CAC/D;AASD,iBAAS,cAAc,CAAC,EACtB,KAAK,EAAE,SAAS,EAChB,YAAY,EACZ,aAAa,EACb,MAAgB,EAChB,YAAwB,EACxB,IAAI,EAAE,QAAQ,EACd,YAAY,EACZ,SAAc,EACd,UAAU,EACV,OAAO,EACP,OAAO,EACP,WAAiC,EACjC,MAAM,EACN,MAAM,EACN,QAAgB,EAChB,SAAS,EACT,QAAQ,GACT,EAAE,eAAe,+BA6JjB;kBA/KQ,cAAc;;;AAkLvB,eAAO,MAAM,UAAU;;CAErB,CAAC"}
|
|
@@ -39,6 +39,10 @@ export declare function CheckIcon({ size, color, ...props }: IconProps): import(
|
|
|
39
39
|
export declare function MinusIcon({ size, color, strokeWidth, ...props }: IconProps): import("react").JSX.Element;
|
|
40
40
|
export declare function ChevronUpIcon({ size, color, ...props }: IconProps): import("react").JSX.Element;
|
|
41
41
|
export declare function CalendarIcon({ size, color, ...props }: IconProps): import("react").JSX.Element;
|
|
42
|
+
/** A clock face reading ten past ten — the hour, a time field, a schedule. */
|
|
43
|
+
export declare function ClockIcon({ size, color, ...props }: IconProps): import("react").JSX.Element;
|
|
44
|
+
/** A keyboard — swapping a gesture-driven control for typed entry. */
|
|
45
|
+
export declare function KeyboardIcon({ size, color, ...props }: IconProps): import("react").JSX.Element;
|
|
42
46
|
export declare function BookmarkIcon({ size, color, filled, ...props }: IconProps & {
|
|
43
47
|
filled?: boolean;
|
|
44
48
|
}): import("react").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/icons/index.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/icons/index.tsx"],"names":[],"mappings":"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"}
|