panelui-native 0.28.1 → 0.32.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 +22 -3
- package/lib/module/components/calendar/index.js +450 -132
- package/lib/module/components/calendar/index.js.map +1 -1
- package/lib/module/components/code-block/highlight.js +363 -0
- package/lib/module/components/code-block/highlight.js.map +1 -0
- package/lib/module/components/code-block/index.js +313 -0
- package/lib/module/components/code-block/index.js.map +1 -0
- package/lib/module/components/date-picker/index.js +8 -1
- package/lib/module/components/date-picker/index.js.map +1 -1
- package/lib/module/components/heatmap-chart/index.js +9 -8
- package/lib/module/components/heatmap-chart/index.js.map +1 -1
- package/lib/module/components/map/index.js +50 -4
- package/lib/module/components/map/index.js.map +1 -1
- package/lib/module/components/menu/index.js +714 -0
- package/lib/module/components/menu/index.js.map +1 -0
- package/lib/module/components/plan/index.js +582 -0
- package/lib/module/components/plan/index.js.map +1 -0
- package/lib/module/components/popover/index.js +35 -4
- package/lib/module/components/popover/index.js.map +1 -1
- package/lib/module/components/post/index.js +992 -0
- package/lib/module/components/post/index.js.map +1 -0
- package/lib/module/components/radio-group/index.js +13 -8
- package/lib/module/components/radio-group/index.js.map +1 -1
- package/lib/module/components/reasoning/index.js +244 -0
- package/lib/module/components/reasoning/index.js.map +1 -0
- package/lib/module/components/response/index.js +296 -0
- package/lib/module/components/response/index.js.map +1 -0
- package/lib/module/components/response/markdown.js +463 -0
- package/lib/module/components/response/markdown.js.map +1 -0
- package/lib/module/components/select/index.js +97 -15
- package/lib/module/components/select/index.js.map +1 -1
- package/lib/module/components/sources/index.js +221 -0
- package/lib/module/components/sources/index.js.map +1 -0
- package/lib/module/components/table/index.js +632 -0
- package/lib/module/components/table/index.js.map +1 -0
- package/lib/module/components/task/index.js +300 -0
- package/lib/module/components/task/index.js.map +1 -0
- package/lib/module/components/textarea/index.js +295 -0
- package/lib/module/components/textarea/index.js.map +1 -0
- package/lib/module/components/tooltip/index.js +179 -23
- package/lib/module/components/tooltip/index.js.map +1 -1
- package/lib/module/icons/index.js +339 -0
- package/lib/module/icons/index.js.map +1 -1
- package/lib/module/index.js +12 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/primitives/collapse.js +112 -0
- package/lib/module/primitives/collapse.js.map +1 -0
- package/lib/module/utils/date.js +129 -22
- package/lib/module/utils/date.js.map +1 -1
- package/lib/typescript/src/components/calendar/index.d.ts +79 -5
- package/lib/typescript/src/components/calendar/index.d.ts.map +1 -1
- package/lib/typescript/src/components/code-block/highlight.d.ts +39 -0
- package/lib/typescript/src/components/code-block/highlight.d.ts.map +1 -0
- package/lib/typescript/src/components/code-block/index.d.ts +113 -0
- package/lib/typescript/src/components/code-block/index.d.ts.map +1 -0
- package/lib/typescript/src/components/date-picker/index.d.ts +7 -1
- package/lib/typescript/src/components/date-picker/index.d.ts.map +1 -1
- package/lib/typescript/src/components/heatmap-chart/index.d.ts.map +1 -1
- package/lib/typescript/src/components/map/index.d.ts +8 -1
- package/lib/typescript/src/components/map/index.d.ts.map +1 -1
- package/lib/typescript/src/components/menu/index.d.ts +261 -0
- package/lib/typescript/src/components/menu/index.d.ts.map +1 -0
- package/lib/typescript/src/components/plan/index.d.ts +238 -0
- package/lib/typescript/src/components/plan/index.d.ts.map +1 -0
- package/lib/typescript/src/components/popover/index.d.ts +35 -1
- package/lib/typescript/src/components/popover/index.d.ts.map +1 -1
- package/lib/typescript/src/components/post/index.d.ts +358 -0
- package/lib/typescript/src/components/post/index.d.ts.map +1 -0
- package/lib/typescript/src/components/radio-group/index.d.ts.map +1 -1
- package/lib/typescript/src/components/reasoning/index.d.ts +97 -0
- package/lib/typescript/src/components/reasoning/index.d.ts.map +1 -0
- package/lib/typescript/src/components/response/index.d.ts +91 -0
- package/lib/typescript/src/components/response/index.d.ts.map +1 -0
- package/lib/typescript/src/components/response/markdown.d.ts +88 -0
- package/lib/typescript/src/components/response/markdown.d.ts.map +1 -0
- package/lib/typescript/src/components/select/index.d.ts +27 -2
- package/lib/typescript/src/components/select/index.d.ts.map +1 -1
- package/lib/typescript/src/components/sources/index.d.ts +85 -0
- package/lib/typescript/src/components/sources/index.d.ts.map +1 -0
- package/lib/typescript/src/components/table/index.d.ts +274 -0
- package/lib/typescript/src/components/table/index.d.ts.map +1 -0
- package/lib/typescript/src/components/task/index.d.ts +103 -0
- package/lib/typescript/src/components/task/index.d.ts.map +1 -0
- package/lib/typescript/src/components/textarea/index.d.ts +175 -0
- package/lib/typescript/src/components/textarea/index.d.ts.map +1 -0
- package/lib/typescript/src/components/tooltip/index.d.ts +63 -8
- package/lib/typescript/src/components/tooltip/index.d.ts.map +1 -1
- package/lib/typescript/src/icons/index.d.ts +54 -1
- package/lib/typescript/src/icons/index.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +14 -3
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/primitives/collapse.d.ts +42 -0
- package/lib/typescript/src/primitives/collapse.d.ts.map +1 -0
- package/lib/typescript/src/utils/date.d.ts +49 -5
- package/lib/typescript/src/utils/date.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/calendar/index.tsx +519 -139
- package/src/components/code-block/highlight.ts +278 -0
- package/src/components/code-block/index.tsx +341 -0
- package/src/components/date-picker/index.tsx +19 -1
- package/src/components/heatmap-chart/index.tsx +9 -9
- package/src/components/map/index.tsx +53 -4
- package/src/components/menu/index.tsx +812 -0
- package/src/components/plan/index.tsx +648 -0
- package/src/components/popover/index.tsx +69 -2
- package/src/components/post/index.tsx +1116 -0
- package/src/components/radio-group/index.tsx +11 -2
- package/src/components/reasoning/index.tsx +297 -0
- package/src/components/response/index.tsx +390 -0
- package/src/components/response/markdown.ts +489 -0
- package/src/components/select/index.tsx +132 -12
- package/src/components/sources/index.tsx +278 -0
- package/src/components/table/index.tsx +747 -0
- package/src/components/task/index.tsx +329 -0
- package/src/components/textarea/index.tsx +381 -0
- package/src/components/tooltip/index.tsx +203 -20
- package/src/icons/index.tsx +264 -1
- package/src/index.ts +131 -0
- package/src/primitives/collapse.tsx +128 -0
- package/src/utils/date.ts +146 -22
- package/theme.css +112 -0
|
@@ -22,18 +22,25 @@
|
|
|
22
22
|
* <Select.Item value="eu" label="Europe" />
|
|
23
23
|
* </Select>
|
|
24
24
|
* ```
|
|
25
|
+
*
|
|
26
|
+
* Past a couple of dozen options, scrolling stops being a way of finding
|
|
27
|
+
* anything: pass `searchable` and the list gets a filter above it, matching on
|
|
28
|
+
* the option labels. The filter narrows what is *shown* — the declared options
|
|
29
|
+
* are still the source of truth, so nothing has to be lifted into state to make
|
|
30
|
+
* it work.
|
|
25
31
|
*/
|
|
26
32
|
import { Children, createContext, isValidElement, useCallback, useContext, useMemo, useRef, useState } from 'react';
|
|
27
33
|
import { Pressable, ScrollView, useWindowDimensions, View } from 'react-native';
|
|
28
34
|
import Animated, { FadeIn, FadeOut, useAnimatedStyle, useSharedValue, withTiming } from 'react-native-reanimated';
|
|
29
35
|
import { tv } from 'tailwind-variants';
|
|
30
36
|
import { useCSSVariable } from 'uniwind';
|
|
31
|
-
import { CheckIcon, ChevronDownIcon } from "../../icons/index.js";
|
|
37
|
+
import { CheckIcon, ChevronDownIcon, SearchIcon } from "../../icons/index.js";
|
|
32
38
|
import { getNativeUI } from "../../native/index.js";
|
|
33
39
|
import { Portal } from "../../primitives/portal.js";
|
|
34
40
|
import { Text, textChildren } from "../../primitives/text.js";
|
|
35
41
|
import { useBackHandler } from "../../hooks/use-back-handler.js";
|
|
36
42
|
import { BottomSheet } from "../bottom-sheet/index.js";
|
|
43
|
+
import { InputGroup } from "../input-group/index.js";
|
|
37
44
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
38
45
|
const selectVariants = tv({
|
|
39
46
|
slots: {
|
|
@@ -58,6 +65,11 @@ const selectVariants = tv({
|
|
|
58
65
|
trigger: 'opacity-[0.64]'
|
|
59
66
|
}
|
|
60
67
|
},
|
|
68
|
+
itemDisabled: {
|
|
69
|
+
true: {
|
|
70
|
+
item: 'opacity-[0.64]'
|
|
71
|
+
}
|
|
72
|
+
},
|
|
61
73
|
presentation: {
|
|
62
74
|
sheet: {},
|
|
63
75
|
inline: {
|
|
@@ -76,7 +88,8 @@ const SelectContext = /*#__PURE__*/createContext(null);
|
|
|
76
88
|
/** Declarative option. Rendered inside whichever surface is presenting. */
|
|
77
89
|
function SelectItem({
|
|
78
90
|
value,
|
|
79
|
-
label
|
|
91
|
+
label,
|
|
92
|
+
disabled
|
|
80
93
|
}) {
|
|
81
94
|
const context = useContext(SelectContext);
|
|
82
95
|
if (!context) {
|
|
@@ -88,14 +101,17 @@ function SelectItem({
|
|
|
88
101
|
itemLabel,
|
|
89
102
|
itemIndicator
|
|
90
103
|
} = selectVariants({
|
|
91
|
-
selected
|
|
104
|
+
selected,
|
|
105
|
+
itemDisabled: !!disabled
|
|
92
106
|
});
|
|
93
107
|
const checkColor = useCSSVariable('--color-muted-foreground');
|
|
94
108
|
return /*#__PURE__*/_jsxs(Pressable, {
|
|
95
109
|
accessibilityRole: "menuitem",
|
|
96
110
|
accessibilityState: {
|
|
97
|
-
selected
|
|
111
|
+
selected,
|
|
112
|
+
disabled: !!disabled
|
|
98
113
|
},
|
|
114
|
+
disabled: disabled,
|
|
99
115
|
onPress: () => context.onSelect(value),
|
|
100
116
|
className: item(),
|
|
101
117
|
children: [/*#__PURE__*/_jsx(Text, {
|
|
@@ -124,11 +140,15 @@ function SelectRoot({
|
|
|
124
140
|
contentWidth = 'trigger',
|
|
125
141
|
offset = 8,
|
|
126
142
|
onOpenChange,
|
|
143
|
+
searchable = false,
|
|
144
|
+
searchPlaceholder = 'Search',
|
|
145
|
+
emptyMessage = 'No matches',
|
|
127
146
|
native,
|
|
128
147
|
nativeAppearance = 'menu',
|
|
129
148
|
children
|
|
130
149
|
}) {
|
|
131
150
|
const [open, setOpen] = useState(false);
|
|
151
|
+
const [query, setQuery] = useState('');
|
|
132
152
|
const [anchor, setAnchor] = useState(null);
|
|
133
153
|
const [listHeight, setListHeight] = useState(0);
|
|
134
154
|
const triggerRef = useRef(null);
|
|
@@ -143,19 +163,35 @@ function SelectRoot({
|
|
|
143
163
|
if (/*#__PURE__*/isValidElement(child)) {
|
|
144
164
|
collected.push({
|
|
145
165
|
value: child.props.value,
|
|
146
|
-
label: child.props.label
|
|
166
|
+
label: child.props.label,
|
|
167
|
+
disabled: child.props.disabled
|
|
147
168
|
});
|
|
148
169
|
}
|
|
149
170
|
});
|
|
150
171
|
return collected;
|
|
151
172
|
}, [children]);
|
|
152
173
|
const selectedLabel = useMemo(() => options.find(option => option.value === value)?.label, [options, value]);
|
|
174
|
+
|
|
175
|
+
/*
|
|
176
|
+
* The options the filter leaves standing, or null when nothing is being
|
|
177
|
+
* filtered — which is the common case, and the one that must not pay for the
|
|
178
|
+
* feature. `null` means "render the children as given", so an unsearched
|
|
179
|
+
* Select does no per-option work at all.
|
|
180
|
+
*/
|
|
181
|
+
const filtered = useMemo(() => {
|
|
182
|
+
const needle = searchable ? query.trim().toLowerCase() : '';
|
|
183
|
+
if (!needle) return null;
|
|
184
|
+
return Children.toArray(children).filter(child => /*#__PURE__*/isValidElement(child) && child.props.label.toLowerCase().includes(needle));
|
|
185
|
+
}, [children, query, searchable]);
|
|
153
186
|
const close = useCallback(() => {
|
|
154
187
|
chevron.value = withTiming(0, {
|
|
155
188
|
duration: 160
|
|
156
189
|
});
|
|
157
190
|
setOpen(false);
|
|
158
191
|
onOpenChange?.(false);
|
|
192
|
+
// A filter left behind would be waiting the next time the list opens, with
|
|
193
|
+
// most of the options missing and no obvious reason why.
|
|
194
|
+
setQuery('');
|
|
159
195
|
}, [chevron, onOpenChange]);
|
|
160
196
|
|
|
161
197
|
// An open overlay list catches the Android back button, closing itself
|
|
@@ -214,7 +250,8 @@ function SelectRoot({
|
|
|
214
250
|
Picker
|
|
215
251
|
} = nativeUI;
|
|
216
252
|
// The native picker has no empty state, so an unset value shows the first
|
|
217
|
-
// option rather than the placeholder.
|
|
253
|
+
// selectable option rather than the placeholder.
|
|
254
|
+
const firstEnabled = options.find(option => !option.disabled);
|
|
218
255
|
return (
|
|
219
256
|
/*#__PURE__*/
|
|
220
257
|
// A picker fills the width of the row it sits in and reports its own
|
|
@@ -225,7 +262,7 @@ function SelectRoot({
|
|
|
225
262
|
vertical: true
|
|
226
263
|
},
|
|
227
264
|
children: /*#__PURE__*/_jsx(Picker, {
|
|
228
|
-
selectedValue: value ??
|
|
265
|
+
selectedValue: value ?? firstEnabled?.value ?? '',
|
|
229
266
|
onValueChange: next => onValueChange(next),
|
|
230
267
|
appearance: nativeAppearance,
|
|
231
268
|
enabled: !disabled,
|
|
@@ -260,6 +297,40 @@ function SelectRoot({
|
|
|
260
297
|
})
|
|
261
298
|
})]
|
|
262
299
|
});
|
|
300
|
+
|
|
301
|
+
/*
|
|
302
|
+
* The filter, and the list it narrows. Both are built once here rather than
|
|
303
|
+
* per presentation: the three surfaces differ in where they put the field —
|
|
304
|
+
* above the scroller, so it does not scroll away with the options — not in
|
|
305
|
+
* what it is.
|
|
306
|
+
*/
|
|
307
|
+
const search = searchable ? /*#__PURE__*/_jsx(View, {
|
|
308
|
+
className: "pb-2",
|
|
309
|
+
children: /*#__PURE__*/_jsxs(InputGroup, {
|
|
310
|
+
children: [/*#__PURE__*/_jsx(InputGroup.Prefix, {
|
|
311
|
+
isDecorative: true,
|
|
312
|
+
children: /*#__PURE__*/_jsx(SearchIcon, {
|
|
313
|
+
size: 18,
|
|
314
|
+
color: typeof chevronColor === 'string' ? chevronColor : '#737373'
|
|
315
|
+
})
|
|
316
|
+
}), /*#__PURE__*/_jsx(InputGroup.Input, {
|
|
317
|
+
variant: "filled",
|
|
318
|
+
size: "sm",
|
|
319
|
+
value: query,
|
|
320
|
+
onChangeText: setQuery,
|
|
321
|
+
placeholder: searchPlaceholder,
|
|
322
|
+
accessibilityLabel: searchPlaceholder,
|
|
323
|
+
autoCapitalize: "none",
|
|
324
|
+
autoCorrect: false,
|
|
325
|
+
returnKeyType: "search",
|
|
326
|
+
clearButtonMode: "while-editing"
|
|
327
|
+
})]
|
|
328
|
+
})
|
|
329
|
+
}) : null;
|
|
330
|
+
const optionList = filtered === null ? textChildren(children) : filtered.length ? filtered : /*#__PURE__*/_jsx(Text, {
|
|
331
|
+
className: "px-3 py-6 text-center text-sm text-muted-foreground",
|
|
332
|
+
children: emptyMessage
|
|
333
|
+
});
|
|
263
334
|
if (presentation === 'sheet') {
|
|
264
335
|
return /*#__PURE__*/_jsxs(SelectContext.Provider, {
|
|
265
336
|
value: context,
|
|
@@ -279,12 +350,21 @@ function SelectRoot({
|
|
|
279
350
|
weight: "semibold",
|
|
280
351
|
className: "mb-2 px-3",
|
|
281
352
|
children: title
|
|
353
|
+
}) : null, search ? /*#__PURE__*/_jsx(View, {
|
|
354
|
+
className: "px-1",
|
|
355
|
+
children: search
|
|
282
356
|
}) : null, /*#__PURE__*/_jsx(ScrollView, {
|
|
283
357
|
bounces: false,
|
|
284
|
-
className: "max-h-96"
|
|
358
|
+
className: "max-h-96"
|
|
359
|
+
// The filter is a text field above a scroller: dismissing the
|
|
360
|
+
// keyboard on a drag is what lets you look at what you filtered
|
|
361
|
+
// to without first tapping somewhere neutral.
|
|
362
|
+
,
|
|
363
|
+
keyboardDismissMode: "on-drag",
|
|
364
|
+
keyboardShouldPersistTaps: "handled",
|
|
285
365
|
children: /*#__PURE__*/_jsx(View, {
|
|
286
366
|
className: "gap-1 pb-2",
|
|
287
|
-
children:
|
|
367
|
+
children: optionList
|
|
288
368
|
})
|
|
289
369
|
})]
|
|
290
370
|
})
|
|
@@ -297,11 +377,11 @@ function SelectRoot({
|
|
|
297
377
|
value: context,
|
|
298
378
|
children: /*#__PURE__*/_jsxs(View, {
|
|
299
379
|
className: className,
|
|
300
|
-
children: [trigger, open ? /*#__PURE__*/
|
|
380
|
+
children: [trigger, open ? /*#__PURE__*/_jsxs(Animated.View, {
|
|
301
381
|
entering: FadeIn.duration(140),
|
|
302
382
|
exiting: FadeOut.duration(120),
|
|
303
383
|
className: slots.list(),
|
|
304
|
-
children:
|
|
384
|
+
children: [search, optionList]
|
|
305
385
|
}) : null]
|
|
306
386
|
})
|
|
307
387
|
});
|
|
@@ -352,17 +432,19 @@ function SelectRoot({
|
|
|
352
432
|
}
|
|
353
433
|
}), /*#__PURE__*/_jsx(SelectContext.Provider, {
|
|
354
434
|
value: context,
|
|
355
|
-
children: /*#__PURE__*/
|
|
435
|
+
children: /*#__PURE__*/_jsxs(Animated.View, {
|
|
356
436
|
entering: FadeIn.duration(140),
|
|
357
437
|
exiting: FadeOut.duration(120),
|
|
358
438
|
onLayout: onListLayout,
|
|
359
439
|
style: overlayPosition,
|
|
360
440
|
className: slots.list(),
|
|
361
|
-
children: /*#__PURE__*/_jsx(ScrollView, {
|
|
441
|
+
children: [search, /*#__PURE__*/_jsx(ScrollView, {
|
|
362
442
|
bounces: false,
|
|
363
443
|
showsVerticalScrollIndicator: false,
|
|
364
|
-
|
|
365
|
-
|
|
444
|
+
keyboardDismissMode: "on-drag",
|
|
445
|
+
keyboardShouldPersistTaps: "handled",
|
|
446
|
+
children: optionList
|
|
447
|
+
})]
|
|
366
448
|
})
|
|
367
449
|
})]
|
|
368
450
|
}) : null]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Children","createContext","isValidElement","useCallback","useContext","useMemo","useRef","useState","Pressable","ScrollView","useWindowDimensions","View","Animated","FadeIn","FadeOut","useAnimatedStyle","useSharedValue","withTiming","tv","useCSSVariable","CheckIcon","ChevronDownIcon","getNativeUI","Portal","Text","textChildren","useBackHandler","BottomSheet","jsx","_jsx","jsxs","_jsxs","selectVariants","slots","trigger","triggerLabel","placeholder","list","item","itemLabel","itemIndicator","variants","selected","true","disabled","presentation","sheet","inline","overlay","defaultVariants","SelectContext","SelectItem","value","label","context","Error","checkColor","accessibilityRole","accessibilityState","onPress","onSelect","className","children","size","color","SelectRoot","onValueChange","title","contentWidth","offset","onOpenChange","native","nativeAppearance","open","setOpen","anchor","setAnchor","listHeight","setListHeight","triggerRef","chevron","height","screenHeight","nativeUI","options","collected","forEach","child","push","props","selectedLabel","find","option","close","duration","toggle","show","current","measureInWindow","x","y","width","next","chevronColor","chevronStyle","transform","rotate","Host","Picker","matchContents","vertical","selectedValue","appearance","enabled","map","Item","ref","expanded","style","Provider","Content","weight","bounces","entering","exiting","spaceBelow","flip","overlayPosition","position","left","bottom","top","minWidth","maxHeight","Math","max","onListLayout","event","nativeEvent","layout","accessibilityLabel","right","onLayout","showsVerticalScrollIndicator","Select","Object","assign"],"sourceRoot":"../../../../src","sources":["components/select/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["Children","createContext","isValidElement","useCallback","useContext","useMemo","useRef","useState","Pressable","ScrollView","useWindowDimensions","View","Animated","FadeIn","FadeOut","useAnimatedStyle","useSharedValue","withTiming","tv","useCSSVariable","CheckIcon","ChevronDownIcon","SearchIcon","getNativeUI","Portal","Text","textChildren","useBackHandler","BottomSheet","InputGroup","jsx","_jsx","jsxs","_jsxs","selectVariants","slots","trigger","triggerLabel","placeholder","list","item","itemLabel","itemIndicator","variants","selected","true","disabled","itemDisabled","presentation","sheet","inline","overlay","defaultVariants","SelectContext","SelectItem","value","label","context","Error","checkColor","accessibilityRole","accessibilityState","onPress","onSelect","className","children","size","color","SelectRoot","onValueChange","title","contentWidth","offset","onOpenChange","searchable","searchPlaceholder","emptyMessage","native","nativeAppearance","open","setOpen","query","setQuery","anchor","setAnchor","listHeight","setListHeight","triggerRef","chevron","height","screenHeight","nativeUI","options","collected","forEach","child","push","props","selectedLabel","find","option","filtered","needle","trim","toLowerCase","toArray","filter","includes","close","duration","toggle","show","current","measureInWindow","x","y","width","next","chevronColor","chevronStyle","transform","rotate","Host","Picker","firstEnabled","matchContents","vertical","selectedValue","appearance","enabled","map","Item","ref","expanded","style","search","Prefix","isDecorative","Input","variant","onChangeText","accessibilityLabel","autoCapitalize","autoCorrect","returnKeyType","clearButtonMode","optionList","length","Provider","Content","weight","bounces","keyboardDismissMode","keyboardShouldPersistTaps","entering","exiting","spaceBelow","flip","overlayPosition","position","left","bottom","top","minWidth","maxHeight","Math","max","onListLayout","event","nativeEvent","layout","right","onLayout","showsVerticalScrollIndicator","Select","Object","assign"],"sourceRoot":"../../../../src","sources":["components/select/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Sources — where an answer came from, folded under a count.
|
|
5
|
+
*
|
|
6
|
+
* A cited answer usually cites more places than anyone wants listed above it,
|
|
7
|
+
* so the list opens from a single line: "Used 6 sources". Folded is the resting
|
|
8
|
+
* state, unlike `Reasoning`, because a citation list is a thing you go and
|
|
9
|
+
* check rather than a thing you watch arrive.
|
|
10
|
+
*
|
|
11
|
+
* ```tsx
|
|
12
|
+
* <Sources>
|
|
13
|
+
* <Sources.Trigger count={sources.length} />
|
|
14
|
+
* <Sources.Content>
|
|
15
|
+
* {sources.map((source) => (
|
|
16
|
+
* <Sources.Source key={source.url} href={source.url} title={source.title} />
|
|
17
|
+
* ))}
|
|
18
|
+
* </Sources.Content>
|
|
19
|
+
* </Sources>
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* ## Where the props come from
|
|
23
|
+
*
|
|
24
|
+
* With the AI SDK these are the `source-url` parts of an assistant message:
|
|
25
|
+
* `part.url` is the `href` and `part.title` the `title`. A part carries no
|
|
26
|
+
* title of its own when the model did not supply one, in which case the host
|
|
27
|
+
* of the URL is a better label than the whole of it.
|
|
28
|
+
*/
|
|
29
|
+
import { createContext, useCallback, useContext, useEffect, useMemo, useState } from 'react';
|
|
30
|
+
import { Linking, Pressable, View } from 'react-native';
|
|
31
|
+
import Animated, { useAnimatedStyle, useReducedMotion, useSharedValue, withTiming } from 'react-native-reanimated';
|
|
32
|
+
import { tv } from 'tailwind-variants';
|
|
33
|
+
import { ChevronDownIcon, LinkIcon } from "../../icons/index.js";
|
|
34
|
+
import { Collapse } from "../../primitives/collapse.js";
|
|
35
|
+
import { Text } from "../../primitives/text.js";
|
|
36
|
+
import { cn } from "../../utils/cn.js";
|
|
37
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
38
|
+
const sourcesVariants = tv({
|
|
39
|
+
slots: {
|
|
40
|
+
root: 'w-full gap-2',
|
|
41
|
+
trigger: 'flex-row items-center gap-2 py-0.5',
|
|
42
|
+
triggerLabel: 'text-sm font-medium text-muted-foreground',
|
|
43
|
+
content: 'gap-0.5',
|
|
44
|
+
source: 'flex-row items-center gap-2 rounded-xl px-2 py-2 active:bg-accent',
|
|
45
|
+
sourceTitle: 'flex-1 text-sm text-foreground',
|
|
46
|
+
sourceHost: 'text-xs text-muted-foreground'
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
const SourcesContext = /*#__PURE__*/createContext(null);
|
|
50
|
+
function useSources(component) {
|
|
51
|
+
const context = useContext(SourcesContext);
|
|
52
|
+
if (!context) {
|
|
53
|
+
throw new Error(`${component} must be used within a <Sources>`);
|
|
54
|
+
}
|
|
55
|
+
return context;
|
|
56
|
+
}
|
|
57
|
+
function SourcesRoot({
|
|
58
|
+
className,
|
|
59
|
+
open: openProp,
|
|
60
|
+
defaultOpen = false,
|
|
61
|
+
onOpenChange,
|
|
62
|
+
children,
|
|
63
|
+
...props
|
|
64
|
+
}) {
|
|
65
|
+
const {
|
|
66
|
+
root
|
|
67
|
+
} = sourcesVariants();
|
|
68
|
+
const [internalOpen, setInternalOpen] = useState(defaultOpen);
|
|
69
|
+
const isControlled = openProp !== undefined;
|
|
70
|
+
const open = isControlled ? openProp : internalOpen;
|
|
71
|
+
const setOpen = useCallback(next => {
|
|
72
|
+
if (!isControlled) setInternalOpen(next);
|
|
73
|
+
onOpenChange?.(next);
|
|
74
|
+
}, [isControlled, onOpenChange]);
|
|
75
|
+
const context = useMemo(() => ({
|
|
76
|
+
open,
|
|
77
|
+
setOpen
|
|
78
|
+
}), [open, setOpen]);
|
|
79
|
+
return /*#__PURE__*/_jsx(SourcesContext.Provider, {
|
|
80
|
+
value: context,
|
|
81
|
+
children: /*#__PURE__*/_jsx(View, {
|
|
82
|
+
...props,
|
|
83
|
+
className: cn(root(), className),
|
|
84
|
+
children: children
|
|
85
|
+
})
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
SourcesRoot.displayName = 'Sources';
|
|
89
|
+
function SourcesTrigger({
|
|
90
|
+
className,
|
|
91
|
+
count = 0,
|
|
92
|
+
children,
|
|
93
|
+
onPress,
|
|
94
|
+
...props
|
|
95
|
+
}) {
|
|
96
|
+
const {
|
|
97
|
+
open,
|
|
98
|
+
setOpen
|
|
99
|
+
} = useSources('Sources.Trigger');
|
|
100
|
+
const {
|
|
101
|
+
trigger,
|
|
102
|
+
triggerLabel
|
|
103
|
+
} = sourcesVariants();
|
|
104
|
+
const reducedMotion = useReducedMotion();
|
|
105
|
+
const progress = useSharedValue(open ? 1 : 0);
|
|
106
|
+
useEffect(() => {
|
|
107
|
+
progress.value = reducedMotion ? open ? 1 : 0 : withTiming(open ? 1 : 0, {
|
|
108
|
+
duration: 180
|
|
109
|
+
});
|
|
110
|
+
}, [open, reducedMotion, progress]);
|
|
111
|
+
const chevronStyle = useAnimatedStyle(() => ({
|
|
112
|
+
transform: [{
|
|
113
|
+
rotate: `${progress.value * 180}deg`
|
|
114
|
+
}]
|
|
115
|
+
}));
|
|
116
|
+
return /*#__PURE__*/_jsx(Pressable, {
|
|
117
|
+
accessibilityRole: "button",
|
|
118
|
+
accessibilityState: {
|
|
119
|
+
expanded: open
|
|
120
|
+
},
|
|
121
|
+
onPress: event => {
|
|
122
|
+
onPress?.(event);
|
|
123
|
+
setOpen(!open);
|
|
124
|
+
},
|
|
125
|
+
className: cn(trigger(), className),
|
|
126
|
+
...props,
|
|
127
|
+
children: children ?? /*#__PURE__*/_jsxs(_Fragment, {
|
|
128
|
+
children: [/*#__PURE__*/_jsxs(Text, {
|
|
129
|
+
className: triggerLabel(),
|
|
130
|
+
children: ["Used ", count, " ", count === 1 ? 'source' : 'sources']
|
|
131
|
+
}), /*#__PURE__*/_jsx(Animated.View, {
|
|
132
|
+
style: chevronStyle,
|
|
133
|
+
children: /*#__PURE__*/_jsx(ChevronDownIcon, {
|
|
134
|
+
size: 16
|
|
135
|
+
})
|
|
136
|
+
})]
|
|
137
|
+
})
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
function SourcesContent({
|
|
141
|
+
className,
|
|
142
|
+
children,
|
|
143
|
+
...props
|
|
144
|
+
}) {
|
|
145
|
+
const {
|
|
146
|
+
open
|
|
147
|
+
} = useSources('Sources.Content');
|
|
148
|
+
const {
|
|
149
|
+
content
|
|
150
|
+
} = sourcesVariants();
|
|
151
|
+
return /*#__PURE__*/_jsx(Collapse, {
|
|
152
|
+
open: open,
|
|
153
|
+
className: cn(content(), className),
|
|
154
|
+
...props,
|
|
155
|
+
children: children
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
/** One citation. */
|
|
159
|
+
function SourcesSource({
|
|
160
|
+
className,
|
|
161
|
+
href,
|
|
162
|
+
title,
|
|
163
|
+
icon,
|
|
164
|
+
children,
|
|
165
|
+
onPress,
|
|
166
|
+
...props
|
|
167
|
+
}) {
|
|
168
|
+
const {
|
|
169
|
+
source,
|
|
170
|
+
sourceTitle,
|
|
171
|
+
sourceHost
|
|
172
|
+
} = sourcesVariants();
|
|
173
|
+
const host = useMemo(() => hostOf(href), [href]);
|
|
174
|
+
return /*#__PURE__*/_jsx(Pressable, {
|
|
175
|
+
accessibilityRole: "link",
|
|
176
|
+
accessibilityLabel: title ?? host ?? href,
|
|
177
|
+
onPress: event => {
|
|
178
|
+
onPress?.(event);
|
|
179
|
+
// No `canOpenURL` guard: it needs the scheme declared up front on iOS,
|
|
180
|
+
// and a source is always http(s), which is always openable.
|
|
181
|
+
if (href) void Linking.openURL(href).catch(() => undefined);
|
|
182
|
+
},
|
|
183
|
+
className: cn(source(), className),
|
|
184
|
+
...props,
|
|
185
|
+
children: children ?? /*#__PURE__*/_jsxs(_Fragment, {
|
|
186
|
+
children: [icon ?? /*#__PURE__*/_jsx(LinkIcon, {
|
|
187
|
+
size: 14
|
|
188
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
189
|
+
numberOfLines: 1,
|
|
190
|
+
className: sourceTitle(),
|
|
191
|
+
children: title ?? host ?? href
|
|
192
|
+
}), title && host ? /*#__PURE__*/_jsx(Text, {
|
|
193
|
+
numberOfLines: 1,
|
|
194
|
+
className: sourceHost(),
|
|
195
|
+
children: host
|
|
196
|
+
}) : null]
|
|
197
|
+
})
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
/**
|
|
202
|
+
* The host of a URL, without a URL parser.
|
|
203
|
+
*
|
|
204
|
+
* `URL` exists in Hermes but throws on anything malformed, and a model's
|
|
205
|
+
* citation is not a thing to trust with an exception. A label is worth having
|
|
206
|
+
* even when the string it came from is not a URL at all.
|
|
207
|
+
*/
|
|
208
|
+
function hostOf(href) {
|
|
209
|
+
if (!href) return undefined;
|
|
210
|
+
const match = /^[a-z][a-z0-9+.-]*:\/\/([^/?#]+)/i.exec(href);
|
|
211
|
+
return match?.[1]?.replace(/^www\./i, '');
|
|
212
|
+
}
|
|
213
|
+
SourcesTrigger.displayName = 'Sources.Trigger';
|
|
214
|
+
SourcesContent.displayName = 'Sources.Content';
|
|
215
|
+
SourcesSource.displayName = 'Sources.Source';
|
|
216
|
+
export const Sources = Object.assign(SourcesRoot, {
|
|
217
|
+
Trigger: SourcesTrigger,
|
|
218
|
+
Content: SourcesContent,
|
|
219
|
+
Source: SourcesSource
|
|
220
|
+
});
|
|
221
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createContext","useCallback","useContext","useEffect","useMemo","useState","Linking","Pressable","View","Animated","useAnimatedStyle","useReducedMotion","useSharedValue","withTiming","tv","ChevronDownIcon","LinkIcon","Collapse","Text","cn","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","sourcesVariants","slots","root","trigger","triggerLabel","content","source","sourceTitle","sourceHost","SourcesContext","useSources","component","context","Error","SourcesRoot","className","open","openProp","defaultOpen","onOpenChange","children","props","internalOpen","setInternalOpen","isControlled","undefined","setOpen","next","Provider","value","displayName","SourcesTrigger","count","onPress","reducedMotion","progress","duration","chevronStyle","transform","rotate","accessibilityRole","accessibilityState","expanded","event","style","size","SourcesContent","SourcesSource","href","title","icon","host","hostOf","accessibilityLabel","openURL","catch","numberOfLines","match","exec","replace","Sources","Object","assign","Trigger","Content","Source"],"sourceRoot":"../../../../src","sources":["components/sources/index.tsx"],"mappings":"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","ignoreList":[]}
|