panelui-native 0.86.1 → 0.88.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 +4 -2
- package/lib/module/components/animated-badge/index.js +451 -0
- package/lib/module/components/animated-badge/index.js.map +1 -0
- package/lib/module/components/bottom-sheet/index.js +17 -6
- package/lib/module/components/bottom-sheet/index.js.map +1 -1
- package/lib/module/components/bubble-chart/index.js +1782 -0
- package/lib/module/components/bubble-chart/index.js.map +1 -0
- package/lib/module/components/feedback-dialog/index.js +474 -0
- package/lib/module/components/feedback-dialog/index.js.map +1 -0
- package/lib/module/components/pyramid-chart/index.js +1143 -0
- package/lib/module/components/pyramid-chart/index.js.map +1 -0
- package/lib/module/components/scroll-blur/index.js +363 -0
- package/lib/module/components/scroll-blur/index.js.map +1 -0
- package/lib/module/components/scroll-canvas/index.js +2 -0
- package/lib/module/components/scroll-canvas/index.js.map +1 -1
- package/lib/module/components/scroll-text/index.js +3 -0
- package/lib/module/components/scroll-text/index.js.map +1 -1
- package/lib/module/components/search-bar/index.js +753 -25
- package/lib/module/components/search-bar/index.js.map +1 -1
- package/lib/module/hooks/use-keyboard-avoidance.js +21 -1
- package/lib/module/hooks/use-keyboard-avoidance.js.map +1 -1
- package/lib/module/hooks/use-reveal-progress.js +21 -1
- package/lib/module/hooks/use-reveal-progress.js.map +1 -1
- package/lib/module/index.js +5 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/utils/chart.js +24 -0
- package/lib/module/utils/chart.js.map +1 -1
- package/lib/typescript/src/components/animated-badge/index.d.ts +224 -0
- package/lib/typescript/src/components/animated-badge/index.d.ts.map +1 -0
- package/lib/typescript/src/components/bottom-sheet/index.d.ts +1 -15
- package/lib/typescript/src/components/bottom-sheet/index.d.ts.map +1 -1
- package/lib/typescript/src/components/bubble-chart/index.d.ts +481 -0
- package/lib/typescript/src/components/bubble-chart/index.d.ts.map +1 -0
- package/lib/typescript/src/components/feedback-dialog/index.d.ts +156 -0
- package/lib/typescript/src/components/feedback-dialog/index.d.ts.map +1 -0
- package/lib/typescript/src/components/pyramid-chart/index.d.ts +328 -0
- package/lib/typescript/src/components/pyramid-chart/index.d.ts.map +1 -0
- package/lib/typescript/src/components/scroll-blur/index.d.ts +113 -0
- package/lib/typescript/src/components/scroll-blur/index.d.ts.map +1 -0
- package/lib/typescript/src/components/scroll-canvas/index.d.ts.map +1 -1
- package/lib/typescript/src/components/search-bar/index.d.ts +350 -6
- package/lib/typescript/src/components/search-bar/index.d.ts.map +1 -1
- package/lib/typescript/src/hooks/use-keyboard-avoidance.d.ts.map +1 -1
- package/lib/typescript/src/hooks/use-reveal-progress.d.ts +6 -27
- package/lib/typescript/src/hooks/use-reveal-progress.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +6 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/utils/chart.d.ts +14 -0
- package/lib/typescript/src/utils/chart.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/animated-badge/index.tsx +513 -0
- package/src/components/bottom-sheet/index.tsx +23 -8
- package/src/components/bubble-chart/index.tsx +2145 -0
- package/src/components/feedback-dialog/index.tsx +557 -0
- package/src/components/pyramid-chart/index.tsx +1360 -0
- package/src/components/scroll-blur/index.tsx +466 -0
- package/src/components/scroll-canvas/index.tsx +2 -1
- package/src/components/scroll-text/index.tsx +3 -3
- package/src/components/search-bar/index.tsx +933 -45
- package/src/hooks/use-keyboard-avoidance.ts +24 -1
- package/src/hooks/use-reveal-progress.ts +30 -1
- package/src/index.ts +72 -1
- package/src/utils/chart.ts +27 -0
|
@@ -1,13 +1,80 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* SearchBar — a text field for querying a list, with the two controls a search
|
|
3
|
-
* needs and an ordinary field does not
|
|
3
|
+
* needs and an ordinary field does not, and a panel of results that opens out
|
|
4
|
+
* of the field itself.
|
|
4
5
|
*
|
|
5
6
|
* ```tsx
|
|
6
7
|
* <SearchBar placeholder="Search orders" onSubmit={run} />
|
|
7
8
|
* <SearchBar variant="filled" shape="pill" cancel="focus" />
|
|
8
|
-
* <SearchBar
|
|
9
|
+
* <SearchBar avoidKeyboard value={query} onChangeText={setQuery}>
|
|
10
|
+
* <SearchBar.Section label="Suggested">
|
|
11
|
+
* <SearchBar.Item trailing={<AddButton />} onPress={add}>Claude</SearchBar.Item>
|
|
12
|
+
* </SearchBar.Section>
|
|
13
|
+
* </SearchBar>
|
|
9
14
|
* ```
|
|
10
15
|
*
|
|
16
|
+
* ## The results are above the field, and the field is above the keyboard
|
|
17
|
+
*
|
|
18
|
+
* A search that is being typed into has a keyboard under it, and a list drawn
|
|
19
|
+
* below the field is a list drawn behind the keyboard. So `avoidKeyboard`
|
|
20
|
+
* lifts the field until it sits `keyboardOffset` points clear of the keyboard's
|
|
21
|
+
* top edge, and the panel opens *upward* out of it into the space that is
|
|
22
|
+
* actually free.
|
|
23
|
+
*
|
|
24
|
+
* That puts the first result nearest the field and the last one furthest away,
|
|
25
|
+
* which is the order a reader walking away from the caret expects. Pass
|
|
26
|
+
* `panelPlacement="bottom"` for a search bar in a header, where the space is
|
|
27
|
+
* the other way round.
|
|
28
|
+
*
|
|
29
|
+
* The panel is positioned absolutely rather than laid out in the flow, so
|
|
30
|
+
* opening it never moves the page underneath — a list that pushes the field it
|
|
31
|
+
* belongs to is a field that walks away from the finger typing into it.
|
|
32
|
+
*
|
|
33
|
+
* ## Touches inside the panel must not close the keyboard
|
|
34
|
+
*
|
|
35
|
+
* The panel scrolls with `keyboardShouldPersistTaps="always"`, and every press
|
|
36
|
+
* inside it holds the field's focus open for a moment afterwards. Both are
|
|
37
|
+
* needed, because a search closes the instant the field blurs and there are
|
|
38
|
+
* two separate ways for a touch in the panel to blur it.
|
|
39
|
+
*
|
|
40
|
+
* `"handled"` only spares presses a child takes responsibility for, which
|
|
41
|
+
* leaves the panel's own padding, the gaps between rows, a section heading and
|
|
42
|
+
* the whole of `SearchBar.Status` as live dismiss surfaces — tapping the word
|
|
43
|
+
* "Searching …" would end the search. `"always"` gives the panel back.
|
|
44
|
+
*
|
|
45
|
+
* The focus guard covers the other way: a control inside a row — an add
|
|
46
|
+
* button, a remove ✕ — takes focus with the press on Android, and returning it
|
|
47
|
+
* a frame later is not enough on its own, because the blur has already closed
|
|
48
|
+
* the panel the control was drawn in. So a press in the panel marks the field
|
|
49
|
+
* as still being used, and a blur arriving under that mark is answered by
|
|
50
|
+
* asking for focus back rather than by ending the search.
|
|
51
|
+
*
|
|
52
|
+
* That guard only knows about presses that go through this component's own
|
|
53
|
+
* parts, and a caller's `Pressable` in a row's `trailing` slot takes the touch
|
|
54
|
+
* itself. So the panel also waits before believing any blur, and asks the
|
|
55
|
+
* keyboard: it is still up, because nothing in the panel dismisses it, and a
|
|
56
|
+
* search whose keyboard is still up has not ended. Focus goes back instead.
|
|
57
|
+
*
|
|
58
|
+
* ## The space kept for the field is not a target
|
|
59
|
+
*
|
|
60
|
+
* The card is one box around the results *and* the field, so it carries a
|
|
61
|
+
* spacer where the field sits. That spacer is a plain view drawn over a
|
|
62
|
+
* focused field, and a touch on a plain view is the platform's cue to dismiss
|
|
63
|
+
* the keyboard — so winning one blurred the field and closed the panel drawn
|
|
64
|
+
* out of that focus. Tapping the search box shut the results, which is exactly
|
|
65
|
+
* backwards. The card and its spacer take no touches at all now.
|
|
66
|
+
*
|
|
67
|
+
* ## What has already been picked goes in the field
|
|
68
|
+
*
|
|
69
|
+
* `tokens` puts the choices made so far inside the field, before the caret, so
|
|
70
|
+
* the query and what it has produced are one control rather than a control and
|
|
71
|
+
* a list somewhere above it. `SearchBar.Token` is the chip; backspace on an
|
|
72
|
+
* empty field fires `onRemoveLastToken`, which is what a token field does
|
|
73
|
+
* everywhere else.
|
|
74
|
+
*
|
|
75
|
+
* They scroll rather than wrap: the field is one line tall, and a row of chips
|
|
76
|
+
* that grew it would move the caret every time something was picked.
|
|
77
|
+
*
|
|
11
78
|
* ## The clear button, and why it is not the platform's
|
|
12
79
|
*
|
|
13
80
|
* A ✕ appears inside the field as soon as there is something to clear, and
|
|
@@ -44,22 +111,32 @@
|
|
|
44
111
|
* a return key is somebody saying they are done waiting.
|
|
45
112
|
*/
|
|
46
113
|
import { type ReactNode } from 'react';
|
|
47
|
-
import { type TextInput } from 'react-native';
|
|
114
|
+
import { type TextInput, type ViewProps } from 'react-native';
|
|
48
115
|
import { type VariantProps } from 'tailwind-variants';
|
|
116
|
+
import { type AnimatedPressableProps } from '../../primitives/animated-pressable.js';
|
|
49
117
|
import { type InputProps } from '../input/index.js';
|
|
50
118
|
declare const searchBarVariants: import("tailwind-variants").TVReturnType<{
|
|
51
119
|
size: {
|
|
52
120
|
sm: {
|
|
53
121
|
cancelLabel: string;
|
|
54
122
|
clear: string;
|
|
123
|
+
token: string;
|
|
124
|
+
tokenLabel: string;
|
|
125
|
+
tokenRemove: string;
|
|
55
126
|
};
|
|
56
127
|
md: {
|
|
57
128
|
cancelLabel: string;
|
|
58
129
|
clear: string;
|
|
130
|
+
token: string;
|
|
131
|
+
tokenLabel: string;
|
|
132
|
+
tokenRemove: string;
|
|
59
133
|
};
|
|
60
134
|
lg: {
|
|
61
135
|
cancelLabel: string;
|
|
62
136
|
clear: string;
|
|
137
|
+
token: string;
|
|
138
|
+
tokenLabel: string;
|
|
139
|
+
tokenRemove: string;
|
|
63
140
|
};
|
|
64
141
|
};
|
|
65
142
|
/**
|
|
@@ -75,26 +152,67 @@ declare const searchBarVariants: import("tailwind-variants").TVReturnType<{
|
|
|
75
152
|
field: string;
|
|
76
153
|
};
|
|
77
154
|
};
|
|
155
|
+
/**
|
|
156
|
+
* Which edge of the field the card grows out of. The field's corners on
|
|
157
|
+
* that edge go square and its border comes off entirely — the card around
|
|
158
|
+
* both of them is what draws the edge.
|
|
159
|
+
*/
|
|
160
|
+
attached: {
|
|
161
|
+
none: {};
|
|
162
|
+
top: {
|
|
163
|
+
field: string;
|
|
164
|
+
};
|
|
165
|
+
bottom: {
|
|
166
|
+
field: string;
|
|
167
|
+
};
|
|
168
|
+
};
|
|
169
|
+
selected: {
|
|
170
|
+
true: {
|
|
171
|
+
item: string;
|
|
172
|
+
};
|
|
173
|
+
};
|
|
78
174
|
}, {
|
|
79
175
|
row: string;
|
|
176
|
+
anchor: string;
|
|
80
177
|
field: string;
|
|
178
|
+
panel: string;
|
|
179
|
+
panelList: string;
|
|
180
|
+
/** The hairline between the results and the field. */
|
|
181
|
+
panelDivider: string;
|
|
182
|
+
sectionLabel: string;
|
|
183
|
+
item: string;
|
|
184
|
+
itemLabel: string;
|
|
185
|
+
status: string;
|
|
81
186
|
cancelClip: string;
|
|
82
187
|
cancelButton: string;
|
|
83
188
|
cancelLabel: string;
|
|
84
189
|
clear: string;
|
|
190
|
+
tokenRow: string;
|
|
191
|
+
token: string;
|
|
192
|
+
tokenLabel: string;
|
|
193
|
+
tokenRemove: string;
|
|
85
194
|
}, undefined, {
|
|
86
195
|
size: {
|
|
87
196
|
sm: {
|
|
88
197
|
cancelLabel: string;
|
|
89
198
|
clear: string;
|
|
199
|
+
token: string;
|
|
200
|
+
tokenLabel: string;
|
|
201
|
+
tokenRemove: string;
|
|
90
202
|
};
|
|
91
203
|
md: {
|
|
92
204
|
cancelLabel: string;
|
|
93
205
|
clear: string;
|
|
206
|
+
token: string;
|
|
207
|
+
tokenLabel: string;
|
|
208
|
+
tokenRemove: string;
|
|
94
209
|
};
|
|
95
210
|
lg: {
|
|
96
211
|
cancelLabel: string;
|
|
97
212
|
clear: string;
|
|
213
|
+
token: string;
|
|
214
|
+
tokenLabel: string;
|
|
215
|
+
tokenRemove: string;
|
|
98
216
|
};
|
|
99
217
|
};
|
|
100
218
|
/**
|
|
@@ -110,26 +228,67 @@ declare const searchBarVariants: import("tailwind-variants").TVReturnType<{
|
|
|
110
228
|
field: string;
|
|
111
229
|
};
|
|
112
230
|
};
|
|
231
|
+
/**
|
|
232
|
+
* Which edge of the field the card grows out of. The field's corners on
|
|
233
|
+
* that edge go square and its border comes off entirely — the card around
|
|
234
|
+
* both of them is what draws the edge.
|
|
235
|
+
*/
|
|
236
|
+
attached: {
|
|
237
|
+
none: {};
|
|
238
|
+
top: {
|
|
239
|
+
field: string;
|
|
240
|
+
};
|
|
241
|
+
bottom: {
|
|
242
|
+
field: string;
|
|
243
|
+
};
|
|
244
|
+
};
|
|
245
|
+
selected: {
|
|
246
|
+
true: {
|
|
247
|
+
item: string;
|
|
248
|
+
};
|
|
249
|
+
};
|
|
113
250
|
}, {
|
|
114
251
|
row: string;
|
|
252
|
+
anchor: string;
|
|
115
253
|
field: string;
|
|
254
|
+
panel: string;
|
|
255
|
+
panelList: string;
|
|
256
|
+
/** The hairline between the results and the field. */
|
|
257
|
+
panelDivider: string;
|
|
258
|
+
sectionLabel: string;
|
|
259
|
+
item: string;
|
|
260
|
+
itemLabel: string;
|
|
261
|
+
status: string;
|
|
116
262
|
cancelClip: string;
|
|
117
263
|
cancelButton: string;
|
|
118
264
|
cancelLabel: string;
|
|
119
265
|
clear: string;
|
|
266
|
+
tokenRow: string;
|
|
267
|
+
token: string;
|
|
268
|
+
tokenLabel: string;
|
|
269
|
+
tokenRemove: string;
|
|
120
270
|
}, import("tailwind-variants").TVReturnType<{
|
|
121
271
|
size: {
|
|
122
272
|
sm: {
|
|
123
273
|
cancelLabel: string;
|
|
124
274
|
clear: string;
|
|
275
|
+
token: string;
|
|
276
|
+
tokenLabel: string;
|
|
277
|
+
tokenRemove: string;
|
|
125
278
|
};
|
|
126
279
|
md: {
|
|
127
280
|
cancelLabel: string;
|
|
128
281
|
clear: string;
|
|
282
|
+
token: string;
|
|
283
|
+
tokenLabel: string;
|
|
284
|
+
tokenRemove: string;
|
|
129
285
|
};
|
|
130
286
|
lg: {
|
|
131
287
|
cancelLabel: string;
|
|
132
288
|
clear: string;
|
|
289
|
+
token: string;
|
|
290
|
+
tokenLabel: string;
|
|
291
|
+
tokenRemove: string;
|
|
133
292
|
};
|
|
134
293
|
};
|
|
135
294
|
/**
|
|
@@ -145,24 +304,63 @@ declare const searchBarVariants: import("tailwind-variants").TVReturnType<{
|
|
|
145
304
|
field: string;
|
|
146
305
|
};
|
|
147
306
|
};
|
|
307
|
+
/**
|
|
308
|
+
* Which edge of the field the card grows out of. The field's corners on
|
|
309
|
+
* that edge go square and its border comes off entirely — the card around
|
|
310
|
+
* both of them is what draws the edge.
|
|
311
|
+
*/
|
|
312
|
+
attached: {
|
|
313
|
+
none: {};
|
|
314
|
+
top: {
|
|
315
|
+
field: string;
|
|
316
|
+
};
|
|
317
|
+
bottom: {
|
|
318
|
+
field: string;
|
|
319
|
+
};
|
|
320
|
+
};
|
|
321
|
+
selected: {
|
|
322
|
+
true: {
|
|
323
|
+
item: string;
|
|
324
|
+
};
|
|
325
|
+
};
|
|
148
326
|
}, {
|
|
149
327
|
row: string;
|
|
328
|
+
anchor: string;
|
|
150
329
|
field: string;
|
|
330
|
+
panel: string;
|
|
331
|
+
panelList: string;
|
|
332
|
+
/** The hairline between the results and the field. */
|
|
333
|
+
panelDivider: string;
|
|
334
|
+
sectionLabel: string;
|
|
335
|
+
item: string;
|
|
336
|
+
itemLabel: string;
|
|
337
|
+
status: string;
|
|
151
338
|
cancelClip: string;
|
|
152
339
|
cancelButton: string;
|
|
153
340
|
cancelLabel: string;
|
|
154
341
|
clear: string;
|
|
342
|
+
tokenRow: string;
|
|
343
|
+
token: string;
|
|
344
|
+
tokenLabel: string;
|
|
345
|
+
tokenRemove: string;
|
|
155
346
|
}, undefined, unknown, unknown, undefined>>;
|
|
156
347
|
type SearchBarVariantProps = VariantProps<typeof searchBarVariants>;
|
|
348
|
+
/** Where the results open. */
|
|
349
|
+
export type SearchBarPanelPlacement = 'top' | 'bottom';
|
|
350
|
+
/** When the results are shown. */
|
|
351
|
+
export type SearchBarPanelMode = 'never' | 'focus' | 'always';
|
|
157
352
|
/**
|
|
158
353
|
* What SearchBar takes from Input, minus everything it owns itself. The form
|
|
159
354
|
* furniture is dropped along with it: a label and an error line stack above
|
|
160
355
|
* and below the field, and Cancel sits beside the whole stack rather than
|
|
161
356
|
* beside the field it belongs to. Use `Field` for a search that is one answer
|
|
162
357
|
* in a form.
|
|
358
|
+
*
|
|
359
|
+
* The keyboard props go too. Input's would move the field and leave the Cancel
|
|
360
|
+
* button and the panel where they were; SearchBar lifts all three together.
|
|
163
361
|
*/
|
|
164
|
-
type InheritedInputProps = Omit<InputProps, 'defaultValue' | 'description' | 'endContent' | 'errorMessage' | 'interactiveContent' | 'isRequired' | 'label' | 'multiline' | 'onChangeText' | 'size' | 'startContent' | 'value'>;
|
|
165
|
-
export interface SearchBarProps extends InheritedInputProps, SearchBarVariantProps {
|
|
362
|
+
type InheritedInputProps = Omit<InputProps, 'avoidKeyboard' | 'defaultValue' | 'description' | 'endContent' | 'errorMessage' | 'interactiveContent' | 'isRequired' | 'keyboardBottomInset' | 'keyboardMode' | 'keyboardOffset' | 'label' | 'multiline' | 'onChangeText' | 'size' | 'startContent' | 'value'>;
|
|
363
|
+
export interface SearchBarProps extends InheritedInputProps, Omit<SearchBarVariantProps, 'attached' | 'selected'> {
|
|
166
364
|
/**
|
|
167
365
|
* The field's background, from `Input`. `outline` draws its own edge, for a
|
|
168
366
|
* search bar sitting on the page; `filled` drops it, for one inside a card
|
|
@@ -210,7 +408,153 @@ export interface SearchBarProps extends InheritedInputProps, SearchBarVariantPro
|
|
|
210
408
|
loading?: boolean;
|
|
211
409
|
/** The leading glyph, for a search over something with a symbol of its own. */
|
|
212
410
|
icon?: ReactNode;
|
|
411
|
+
/**
|
|
412
|
+
* Lift the whole search — field, Cancel button and panel — until it sits
|
|
413
|
+
* clear of the software keyboard, and put it back on blur. Without it the
|
|
414
|
+
* field stays where the page left it, which on most screens is behind the
|
|
415
|
+
* keyboard it just opened.
|
|
416
|
+
*
|
|
417
|
+
* Install `react-native-keyboard-controller` for this to behave on Android.
|
|
418
|
+
*
|
|
419
|
+
* Do not toggle it at runtime: it changes which component wraps the row, so
|
|
420
|
+
* the field would remount and lose focus.
|
|
421
|
+
*/
|
|
422
|
+
avoidKeyboard?: boolean;
|
|
423
|
+
/** Gap kept between the field's bottom edge and the keyboard. */
|
|
424
|
+
keyboardOffset?: number;
|
|
425
|
+
/**
|
|
426
|
+
* When the results panel is shown. `focus` opens it while the field is being
|
|
427
|
+
* typed into, `always` keeps it out for a screen that is nothing but the
|
|
428
|
+
* search, `never` ignores the children entirely.
|
|
429
|
+
*/
|
|
430
|
+
panel?: SearchBarPanelMode;
|
|
431
|
+
/**
|
|
432
|
+
* Which side of the field the panel opens out of. `top` is the default,
|
|
433
|
+
* because the space under a focused field belongs to the keyboard.
|
|
434
|
+
*/
|
|
435
|
+
panelPlacement?: SearchBarPanelPlacement;
|
|
436
|
+
/**
|
|
437
|
+
* Cap on the panel's height, in points.
|
|
438
|
+
*
|
|
439
|
+
* The panel takes the smaller of this and the room between the field and the
|
|
440
|
+
* edge of the screen, so it never runs off the top of the display. Unset, it
|
|
441
|
+
* is capped at about six rows: the space above a lifted field is most of the
|
|
442
|
+
* screen, and a panel that takes all of it stops reading as something laid
|
|
443
|
+
* over the app. Longer lists scroll.
|
|
444
|
+
*/
|
|
445
|
+
panelMaxHeight?: number;
|
|
446
|
+
/**
|
|
447
|
+
* What has been picked so far, drawn inside the field before the caret.
|
|
448
|
+
* `SearchBar.Token` is the chip; anything else that fits on one line works
|
|
449
|
+
* too. Tokens scroll rather than wrap, so the field stays one line tall.
|
|
450
|
+
*/
|
|
451
|
+
tokens?: ReactNode;
|
|
452
|
+
/**
|
|
453
|
+
* Fires when backspace is pressed in an empty field. Remove the last token
|
|
454
|
+
* here — it is the gesture every token field answers, and without it the
|
|
455
|
+
* only way back out of a choice is its own ✕.
|
|
456
|
+
*/
|
|
457
|
+
onRemoveLastToken?: () => void;
|
|
458
|
+
/** The panel's contents — `SearchBar.Section`, `.Item` and `.Status`. */
|
|
459
|
+
children?: ReactNode;
|
|
460
|
+
}
|
|
461
|
+
export interface SearchBarSectionProps extends ViewProps {
|
|
462
|
+
className?: string;
|
|
463
|
+
/**
|
|
464
|
+
* The heading over the run of rows — "Suggested", "Results". Announced as a
|
|
465
|
+
* header, so a screen reader reaching the group is told what it is before
|
|
466
|
+
* walking into it.
|
|
467
|
+
*/
|
|
468
|
+
label?: string;
|
|
469
|
+
children?: ReactNode;
|
|
470
|
+
}
|
|
471
|
+
/** A labelled run of rows inside the panel. */
|
|
472
|
+
declare function SearchBarSection({ className, label, children, ...props }: SearchBarSectionProps): import("react").JSX.Element;
|
|
473
|
+
declare namespace SearchBarSection {
|
|
474
|
+
var displayName: string;
|
|
475
|
+
}
|
|
476
|
+
export interface SearchBarItemProps extends Omit<AnimatedPressableProps, 'children'> {
|
|
477
|
+
className?: string;
|
|
478
|
+
/** Anything before the label — an avatar, a logo, a status dot. */
|
|
479
|
+
leading?: ReactNode;
|
|
480
|
+
/**
|
|
481
|
+
* Anything after it. A slot rather than a built-in button, because what a
|
|
482
|
+
* result row offers differs per search: an add, a pin, a count, nothing.
|
|
483
|
+
*/
|
|
484
|
+
trailing?: ReactNode;
|
|
485
|
+
/** A second line under the label, for what the label alone cannot say. */
|
|
486
|
+
description?: string;
|
|
487
|
+
/** Draws the row as the one the search has settled on. */
|
|
488
|
+
selected?: boolean;
|
|
489
|
+
/** The row's label. */
|
|
490
|
+
children?: ReactNode;
|
|
491
|
+
}
|
|
492
|
+
/** One result. */
|
|
493
|
+
declare function SearchBarItem({ className, leading, trailing, description, selected, children, onPressIn, ...props }: SearchBarItemProps): import("react").JSX.Element;
|
|
494
|
+
declare namespace SearchBarItem {
|
|
495
|
+
var displayName: string;
|
|
496
|
+
}
|
|
497
|
+
export interface SearchBarStatusProps extends ViewProps {
|
|
498
|
+
className?: string;
|
|
499
|
+
/** A spinner beside the line, for a search that is still running. */
|
|
500
|
+
loading?: boolean;
|
|
501
|
+
children?: ReactNode;
|
|
502
|
+
}
|
|
503
|
+
/**
|
|
504
|
+
* The one line a panel shows instead of rows — nothing typed yet, a search in
|
|
505
|
+
* flight, or a query that matched nothing. It is a sentence rather than an
|
|
506
|
+
* empty box because those three states look identical when they are blank, and
|
|
507
|
+
* which one it is decides what the person does next.
|
|
508
|
+
*/
|
|
509
|
+
declare function SearchBarStatus({ className, loading, children, ...props }: SearchBarStatusProps): import("react").JSX.Element;
|
|
510
|
+
declare namespace SearchBarStatus {
|
|
511
|
+
var displayName: string;
|
|
512
|
+
}
|
|
513
|
+
export interface SearchBarActionProps extends AnimatedPressableProps {
|
|
514
|
+
className?: string;
|
|
515
|
+
children?: ReactNode;
|
|
516
|
+
}
|
|
517
|
+
/**
|
|
518
|
+
* A button inside a row — an add, a pin, a remove — for the `trailing` slot.
|
|
519
|
+
*
|
|
520
|
+
* It exists rather than being left to a plain `Pressable` because a control
|
|
521
|
+
* nested inside a row takes the touch itself, so the row above it never sees
|
|
522
|
+
* the press and cannot hold the field's focus on its behalf. Pressed, this one
|
|
523
|
+
* ends up blurring the field, and a blurred field closes the panel the button
|
|
524
|
+
* was standing in — the press lands and the search disappears under it.
|
|
525
|
+
*/
|
|
526
|
+
declare function SearchBarAction({ className, children, onPressIn, ...props }: SearchBarActionProps): import("react").JSX.Element;
|
|
527
|
+
declare namespace SearchBarAction {
|
|
528
|
+
var displayName: string;
|
|
529
|
+
}
|
|
530
|
+
export interface SearchBarTokenProps extends ViewProps {
|
|
531
|
+
className?: string;
|
|
532
|
+
/** Anything before the label — an avatar, a logo, a status dot. */
|
|
533
|
+
leading?: ReactNode;
|
|
534
|
+
/** Fires when the chip's ✕ is pressed. Without it no ✕ is drawn. */
|
|
535
|
+
onRemove?: () => void;
|
|
536
|
+
/** How the ✕ announces itself. Defaults to `Remove <label>`. */
|
|
537
|
+
removeLabel?: string;
|
|
538
|
+
/** The chip's label. */
|
|
539
|
+
children?: ReactNode;
|
|
540
|
+
}
|
|
541
|
+
/**
|
|
542
|
+
* One choice already made, drawn inside the field before the caret.
|
|
543
|
+
*
|
|
544
|
+
* It sits in the field rather than in a list above it so that the query and
|
|
545
|
+
* what the query has produced are one control. A search that files its results
|
|
546
|
+
* somewhere else asks the reader to look in two places to know where they are.
|
|
547
|
+
*/
|
|
548
|
+
declare function SearchBarToken({ className, leading, onRemove, removeLabel, children, ...props }: SearchBarTokenProps): import("react").JSX.Element;
|
|
549
|
+
declare namespace SearchBarToken {
|
|
550
|
+
var displayName: string;
|
|
213
551
|
}
|
|
214
|
-
export declare const SearchBar: import("react").ForwardRefExoticComponent<SearchBarProps & import("react").RefAttributes<TextInput
|
|
552
|
+
export declare const SearchBar: import("react").ForwardRefExoticComponent<SearchBarProps & import("react").RefAttributes<TextInput>> & {
|
|
553
|
+
Section: typeof SearchBarSection;
|
|
554
|
+
Item: typeof SearchBarItem;
|
|
555
|
+
Action: typeof SearchBarAction;
|
|
556
|
+
Token: typeof SearchBarToken;
|
|
557
|
+
Status: typeof SearchBarStatus;
|
|
558
|
+
};
|
|
215
559
|
export {};
|
|
216
560
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/search-bar/index.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/search-bar/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-keyboard-avoidance.d.ts","sourceRoot":"","sources":["../../../../src/hooks/use-keyboard-avoidance.ts"],"names":[],"mappings":"AA+CA,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,IAAI,EACT,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAML,gBAAgB,EAIhB,KAAK,WAAW,EAEjB,MAAM,yBAAyB,CAAC;AAYjC,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,MAAM,CAAC;AAEpD,MAAM,WAAW,2BAA2B;IAC1C,kDAAkD;IAClD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,IAAI,CAAC,EAAE,qBAAqB,CAAC;IAC7B,mFAAmF;IACnF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,0BAA0B;IACzC,sDAAsD;IACtD,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IACvB,iFAAiF;IACjF,QAAQ,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC7C,iCAAiC;IACjC,aAAa,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;CAC/D;AA6DD,mFAAmF;AACnF,wBAAgB,qBAAqB,IAAI,OAAO,CAS/C;AAED,wBAAgB,oBAAoB,CAAC,EACnC,OAAc,EACd,MAAa,EACb,IAAa,EACb,MAAW,EACX,WAAe,GAChB,GAAE,2BAAgC,GAAG,0BAA0B,
|
|
1
|
+
{"version":3,"file":"use-keyboard-avoidance.d.ts","sourceRoot":"","sources":["../../../../src/hooks/use-keyboard-avoidance.ts"],"names":[],"mappings":"AA+CA,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,IAAI,EACT,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAML,gBAAgB,EAIhB,KAAK,WAAW,EAEjB,MAAM,yBAAyB,CAAC;AAYjC,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,MAAM,CAAC;AAEpD,MAAM,WAAW,2BAA2B;IAC1C,kDAAkD;IAClD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,IAAI,CAAC,EAAE,qBAAqB,CAAC;IAC7B,mFAAmF;IACnF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,0BAA0B;IACzC,sDAAsD;IACtD,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IACvB,iFAAiF;IACjF,QAAQ,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC7C,iCAAiC;IACjC,aAAa,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;CAC/D;AA6DD,mFAAmF;AACnF,wBAAgB,qBAAqB,IAAI,OAAO,CAS/C;AAED,wBAAgB,oBAAoB,CAAC,EACnC,OAAc,EACd,MAAa,EACb,IAAa,EACb,MAAW,EACX,WAAe,GAChB,GAAE,2BAAgC,GAAG,0BAA0B,CAuH/D"}
|
|
@@ -1,30 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* useRevealProgress — how far an element has travelled through the viewport.
|
|
3
|
-
*
|
|
4
|
-
* The number every scroll-driven effect is really made of: `0` before the
|
|
5
|
-
* element has arrived, `1` once it has passed, and a smooth scrub between the
|
|
6
|
-
* two. What an effect *does* with it — recolour, fade, zoom, step through
|
|
7
|
-
* frames — is the only part that differs.
|
|
8
|
-
*
|
|
9
|
-
* The window is set the way a scroll-trigger's is: `start` and `end` are
|
|
10
|
-
* positions down the viewport, as fractions of its height. Progress is `0`
|
|
11
|
-
* while the element's **top** is still below `start`, and reaches `1` when its
|
|
12
|
-
* **bottom** passes `end` — so a tall block scrubs across its own height rather
|
|
13
|
-
* than snapping the moment its first line appears.
|
|
14
|
-
*
|
|
15
|
-
* ```tsx
|
|
16
|
-
* const { ref, progress } = useRevealProgress({ start: 0.9, end: 0.5 });
|
|
17
|
-
*
|
|
18
|
-
* <Animated.View ref={ref} style={useAnimatedStyle(() => ({
|
|
19
|
-
* opacity: progress.value,
|
|
20
|
-
* }))} />
|
|
21
|
-
* ```
|
|
22
|
-
*
|
|
23
|
-
* The element is measured on the UI thread whenever the scroll position
|
|
24
|
-
* changes — not every frame, and not once at layout. Once is wrong the moment
|
|
25
|
-
* anything above it resizes; every frame is a measurement pass for a value that
|
|
26
|
-
* only changes when the scroller moves.
|
|
27
|
-
*/
|
|
28
1
|
import { type View } from 'react-native';
|
|
29
2
|
import { type AnimatedRef, type SharedValue } from 'react-native-reanimated';
|
|
30
3
|
export interface UseRevealProgressOptions {
|
|
@@ -49,6 +22,12 @@ export interface UseRevealProgressOptions {
|
|
|
49
22
|
export interface UseRevealProgressResult {
|
|
50
23
|
/** Attach to the element whose travel drives the effect. */
|
|
51
24
|
ref: AnimatedRef<View>;
|
|
25
|
+
/**
|
|
26
|
+
* Attach to the same element. It is what says the element can be measured —
|
|
27
|
+
* without it the effect still works, at the cost of a warning per frame for
|
|
28
|
+
* every element that is mounted but not yet laid out.
|
|
29
|
+
*/
|
|
30
|
+
onLayout: () => void;
|
|
52
31
|
/** `0` before, `1` after, scrubbed between. */
|
|
53
32
|
progress: SharedValue<number>;
|
|
54
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-reveal-progress.d.ts","sourceRoot":"","sources":["../../../../src/hooks/use-reveal-progress.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-reveal-progress.d.ts","sourceRoot":"","sources":["../../../../src/hooks/use-reveal-progress.ts"],"names":[],"mappings":"AA4BA,OAAO,EAAuB,KAAK,IAAI,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAKL,KAAK,WAAW,EAChB,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAGjC,MAAM,WAAW,wBAAwB;IACvC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,QAAQ,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B,2EAA2E;IAC3E,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,uBAAuB;IACtC,4DAA4D;IAC5D,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IACvB;;;;OAIG;IACH,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,+CAA+C;IAC/C,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC/B;AAED,wBAAgB,iBAAiB,CAAC,EAChC,KAAW,EACX,GAAS,EACT,QAAQ,EAAE,QAAQ,EAClB,OAAc,GACf,GAAE,wBAA6B,GAAG,uBAAuB,CAyDzD"}
|
|
@@ -15,6 +15,7 @@ export { Alert, type AlertProps, type AlertIndicatorProps, } from './components/
|
|
|
15
15
|
export { Avatar, type AvatarProps, type AvatarBadgeProps, type AvatarGroupProps, } from './components/avatar/index.js';
|
|
16
16
|
export { Attachment, type AttachmentProps, type AttachmentGroupProps, type AttachmentMediaProps, type AttachmentContentProps, type AttachmentTitleProps, type AttachmentDescriptionProps, type AttachmentActionsProps, type AttachmentActionProps, type AttachmentState, } from './components/attachment/index.js';
|
|
17
17
|
export { AreaChart, useAreaChart, type AreaChartProps, type AreaChartHandle, type AreaChartGridProps, type AreaChartHeaderProps, type AreaChartAreaProps, type AreaChartXAxisProps, type AreaChartYAxisProps, type AreaChartTooltipProps, type AreaChartLegendProps, type AreaChartDatum, type AreaChartStatus, } from './components/area-chart/index.js';
|
|
18
|
+
export { AnimatedBadge, type AnimatedBadgeProps, type AnimatedBadgeSize, type AnimatedBadgeStatus, } from './components/animated-badge/index.js';
|
|
18
19
|
export { Badge, type BadgeProps } from './components/badge/index.js';
|
|
19
20
|
export { BarChart, useBarChart, type BarChartProps, type BarChartHandle, type BarChartHeaderProps, type BarChartGridProps, type BarChartBarProps, type BarChartXAxisProps, type BarChartYAxisProps, type BarChartTooltipProps, type BarChartLegendProps, type BarChartDatum, type BarChartStatus, type BarChartOrientation, } from './components/bar-chart/index.js';
|
|
20
21
|
export { CandlestickChart, useCandlestickChart, type CandlestickChartProps, type CandlestickChartHandle, type CandlestickChartHeaderProps, type CandlestickChartGridProps, type CandlestickChartCandlesProps, type CandlestickChartXAxisProps, type CandlestickChartYAxisProps, type CandlestickChartTooltipProps, type CandlestickChartLegendProps, type CandlestickChartDatum, type CandlestickChartStatus, } from './components/candlestick-chart/index.js';
|
|
@@ -26,6 +27,7 @@ export { ToggleButton, ToggleButtonGroup, useToggleButton, type ToggleButtonProp
|
|
|
26
27
|
export { DatePicker, type DatePickerProps, type DatePickerMode, } from './components/date-picker/index.js';
|
|
27
28
|
export { DateTimePicker, type DateTimePickerProps, type DateTimePickerPresentation, } from './components/date-time-picker/index.js';
|
|
28
29
|
export { Dialog, type DialogProps, type DialogContentProps, } from './components/dialog/index.js';
|
|
30
|
+
export { FeedbackDialog, type FeedbackDialogProps, type FeedbackDialogContentProps, type FeedbackDialogPanelProps, type FeedbackDialogCloseProps, type FeedbackDialogFieldProps, type FeedbackDialogFooterProps, type FeedbackDialogActionProps, type FeedbackDialogSubmitProps, } from './components/feedback-dialog/index.js';
|
|
29
31
|
export { Soundwave, type SoundwaveProps, type SoundwaveState, type SoundwaveVariant, } from './components/soundwave/index.js';
|
|
30
32
|
export { Direction, useDirection, useDirectionSign, type DirectionProps, type DirectionValue, } from './components/direction/index.js';
|
|
31
33
|
export { Fab, type FabProps, type FabGroupProps, type FabActionProps, type FabPlacement, type FabSize, type FabVariant, } from './components/fab/index.js';
|
|
@@ -62,11 +64,13 @@ export { Input, type InputProps } from './components/input/index.js';
|
|
|
62
64
|
export { InputGroup, type InputGroupProps, type InputGroupInputProps, type InputGroupDecoratorProps, } from './components/input-group/index.js';
|
|
63
65
|
export { NumberInput, type NumberInputProps, } from './components/number-input/index.js';
|
|
64
66
|
export { OtpInput, type OtpInputProps } from './components/otp-input/index.js';
|
|
65
|
-
export { SearchBar, type SearchBarProps } from './components/search-bar/index.js';
|
|
67
|
+
export { SearchBar, type SearchBarProps, type SearchBarActionProps, type SearchBarItemProps, type SearchBarSectionProps, type SearchBarStatusProps, type SearchBarTokenProps, type SearchBarPanelMode, type SearchBarPanelPlacement, } from './components/search-bar/index.js';
|
|
66
68
|
export { Panelside, usePanelside, type PanelsideProps, type PanelsidePanelProps, type PanelsideHeaderProps, type PanelsideSearchProps, type PanelsideContentProps, type PanelsideGroupProps, type PanelsideGroupLabelProps, type PanelsideItemProps, type PanelsideItemIconProps, type PanelsideItemLabelProps, type PanelsideItemBadgeProps, type PanelsideActionProps, type PanelsideItemActionsProps, type PanelsideFooterProps, type PanelsideCtaProps, type PanelsideSceneProps, type PanelsidePagesProps, type PanelsidePageProps, type PanelsideTriggerProps, type PanelsideSearchTriggerProps, type PanelsideMode, type PanelsideSwipeFrom, type PanelsideItemSize, type PanelsideCtaSize, type PanelsideSurface, type PanelsideControlVariant, type UsePanelsideResult, } from './components/panelside/index.js';
|
|
67
69
|
export { Pagination, paginationRange, type PaginationProps, type PaginationItemProps, type PaginationPreviousProps, type PaginationNextProps, type PaginationEllipsisProps, type PaginationSummaryProps, type PaginationStatusProps, type PaginationVariant, type PaginationSize, type PaginationItemValue, } from './components/pagination/index.js';
|
|
68
70
|
export { PieChart, usePieChart, type PieChartProps, type PieChartHandle, type PieChartHeaderProps, type PieChartSlicesProps, type PieChartCenterProps, type PieChartLegendProps, type PieChartSkeletonProps, type PieChartStatus, type PieDatum, } from './components/pie-chart/index.js';
|
|
69
71
|
export { LiveLineChart, useLiveLineChart, type LiveLineChartProps, type LiveLineChartHandle, type LiveLineChartHeaderProps, type LiveLineChartGridProps, type LiveLineChartAreaProps, type LiveLineChartLineProps, type LiveLineChartTipProps, type LiveLineChartXAxisProps, type LiveLineChartYAxisProps, type LiveLineChartTooltipProps, type LiveLineChartSkeletonProps, type LiveLineChartStatus, type LiveLineMomentum, type LiveLineMomentumColors, type LiveLinePoint, } from './components/live-line-chart/index.js';
|
|
72
|
+
export { BubbleChart, useBubbleChart, type BubbleChartProps, type BubbleChartHandle, type BubbleChartHeaderProps, type BubbleChartGridProps, type BubbleChartQuadrantsProps, type BubbleChartTrendProps, type BubbleChartBubblesProps, type BubbleChartLabelsProps, type BubbleChartSizeKeyProps, type BubbleChartSkeletonProps, type BubbleChartXAxisProps, type BubbleChartYAxisProps, type BubbleChartTooltipProps, type BubbleChartLegendProps, type BubbleChartDatum, type BubbleChartPoint, type BubbleChartStatus, } from './components/bubble-chart/index.js';
|
|
73
|
+
export { PyramidChart, usePyramidChart, type PyramidChartProps, type PyramidChartHandle, type PyramidChartHeaderProps, type PyramidChartGridProps, type PyramidChartBarProps, type PyramidChartSkeletonProps, type PyramidChartXAxisProps, type PyramidChartYAxisProps, type PyramidChartTooltipProps, type PyramidChartLegendProps, type PyramidChartDatum, type PyramidChartStatus, type PyramidChartSide, type PyramidChartLabelPlacement, } from './components/pyramid-chart/index.js';
|
|
70
74
|
export { PolarAreaChart, usePolarAreaChart, type PolarAreaChartProps, type PolarAreaChartHandle, type PolarAreaChartHeaderProps, type PolarAreaChartGridProps, type PolarAreaChartWedgesProps, type PolarAreaChartLabelsProps, type PolarAreaChartTooltipProps, type PolarAreaChartLegendProps, type PolarAreaChartSkeletonProps, type PolarAreaChartStatus, type PolarAreaScale, type PolarAreaDatum, } from './components/polar-area-chart/index.js';
|
|
71
75
|
export { Plot, usePlot, usePlotCursor, type PlotProps, type PlotHandle, type PlotGeometry, type PlotHeaderProps, type PlotLegendProps, type PlotGridProps, type PlotSeriesProps, type PlotLineProps, type PlotAreaProps, type PlotBarsProps, type PlotDotsProps, type PlotRuleProps, type PlotLayerProps, type PlotOverlayProps, type PlotXAxisProps, type PlotYAxisProps, type PlotCursorProps, type PlotTooltipProps, type PlotDatum, type PlotStatus, type PlotCurve, type PlotScale, type PlotBound, type PlotBox, } from './components/plot/index.js';
|
|
72
76
|
export { areaPath, bandOf, barPath, compactNumber, linePath, segment, xAt, xOf, yOf, type ChartPoint, } from './components/plot/index.js';
|
|
@@ -96,6 +100,7 @@ export { RadioGroup, type RadioGroupProps, type RadioGroupItemProps, } from './c
|
|
|
96
100
|
export { Rating, type RatingProps, type RatingColor, type RatingSize, } from './components/rating/index.js';
|
|
97
101
|
export { RingChart, useRingChart, type RingChartProps, type RingChartHandle, type RingChartRingProps, type RingChartCenterProps, type RingChartLegendProps, type RingDatum, } from './components/ring-chart/index.js';
|
|
98
102
|
export { ScatterChart, useScatterChart, type ScatterChartProps, type ScatterChartHandle, type ScatterChartHeaderProps, type ScatterChartGridProps, type ScatterChartPointsProps, type ScatterChartSkeletonProps, type ScatterChartXAxisProps, type ScatterChartYAxisProps, type ScatterChartTooltipProps, type ScatterChartLegendProps, type ScatterChartDatum, type ScatterChartPoint, type ScatterChartStatus, } from './components/scatter-chart/index.js';
|
|
103
|
+
export { ScrollBlur, type ScrollBlurProps, type ScrollBlurTint, } from './components/scroll-blur/index.js';
|
|
99
104
|
export { ScrollFade, type ScrollFadeProps, } from './components/scroll-fade/index.js';
|
|
100
105
|
export { Separator, type SeparatorProps } from './components/separator/index.js';
|
|
101
106
|
export { Signature, hasSignatureFileSystem, hasSignatureRaster, type SignatureProps, type SignatureHandle, type SignatureFile, type SignatureSaveOptions, type SignatureToolbarProps, type SignatureButtonProps, } from './components/signature/index.js';
|