panelui-native 0.87.0 → 0.88.1
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/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 +557 -41
- package/lib/module/components/bubble-chart/index.js.map +1 -1
- package/lib/module/components/feedback/index.js +474 -0
- package/lib/module/components/feedback/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 +390 -45
- 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 +3 -0
- package/lib/module/index.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 +150 -7
- package/lib/typescript/src/components/bubble-chart/index.d.ts.map +1 -1
- package/lib/typescript/src/components/feedback/index.d.ts +156 -0
- package/lib/typescript/src/components/feedback/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 +142 -7
- 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 +5 -2
- package/lib/typescript/src/index.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 +664 -46
- package/src/components/feedback/index.tsx +557 -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 +471 -41
- package/src/hooks/use-keyboard-avoidance.ts +24 -1
- package/src/hooks/use-reveal-progress.ts +30 -1
- package/src/index.ts +27 -0
|
@@ -0,0 +1,451 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* AnimatedBadge — a status pill whose icon and label roll over when the status
|
|
5
|
+
* changes.
|
|
6
|
+
*
|
|
7
|
+
* A badge that swaps its word between one frame and the next is a badge people
|
|
8
|
+
* miss. The status is the smallest thing on the screen and usually not the
|
|
9
|
+
* thing being looked at, so a change with no movement in it registers as
|
|
10
|
+
* having always said that. Rolling the old glyph out and the new one in is
|
|
11
|
+
* what makes the change itself visible.
|
|
12
|
+
*
|
|
13
|
+
* ```tsx
|
|
14
|
+
* <AnimatedBadge status="loading">Deploying</AnimatedBadge>
|
|
15
|
+
* <AnimatedBadge status="success">Live</AnimatedBadge>
|
|
16
|
+
* ```
|
|
17
|
+
*
|
|
18
|
+
* ## The roll, and the width
|
|
19
|
+
*
|
|
20
|
+
* The outgoing glyph rises out of the pill and fades; the incoming one comes
|
|
21
|
+
* up from below and settles on a spring, with a slight rotation and scale so
|
|
22
|
+
* it reads as turning over rather than sliding. Both are clipped to the pill,
|
|
23
|
+
* which is what keeps the movement inside the badge instead of over whatever
|
|
24
|
+
* it sits beside.
|
|
25
|
+
*
|
|
26
|
+
* The pill's width springs to the new word rather than jumping, because a
|
|
27
|
+
* badge in a row of them shoves its neighbours as it changes and a jump does
|
|
28
|
+
* that in one frame. Everything runs on the UI thread.
|
|
29
|
+
*
|
|
30
|
+
* ## Which change counts as a change
|
|
31
|
+
*
|
|
32
|
+
* The label is keyed on what it says, so `"Queued"` to `"Building"` rolls and
|
|
33
|
+
* a re-render with the same word does not. Where the label is an element
|
|
34
|
+
* rather than a string, or where two different states share a word, pass
|
|
35
|
+
* `contentKey` — the badge cannot tell those apart on its own, and without a
|
|
36
|
+
* key it either animates on every render or never.
|
|
37
|
+
*
|
|
38
|
+
* ## Reduced motion
|
|
39
|
+
*
|
|
40
|
+
* With the preference on, every part of this is skipped: the glyph and the
|
|
41
|
+
* label cut over, the pill resizes immediately, and the pulse does not run.
|
|
42
|
+
* The badge still says what it says, which is the part that mattered.
|
|
43
|
+
*/
|
|
44
|
+
import { forwardRef, useCallback, useEffect, useRef, useState } from 'react';
|
|
45
|
+
import { View } from 'react-native';
|
|
46
|
+
import Animated, { Easing, LinearTransition, runOnJS, useAnimatedStyle, useReducedMotion, useSharedValue, withRepeat, withSequence, withSpring, withTiming } from 'react-native-reanimated';
|
|
47
|
+
import { tv } from 'tailwind-variants';
|
|
48
|
+
import { useCSSVariable } from 'uniwind';
|
|
49
|
+
import { AlertTriangleIcon, CheckCircleIcon, CircleIcon, InfoIcon, XIcon } from "../../icons/index.js";
|
|
50
|
+
import { IconColorProvider } from "../../icons/index.js";
|
|
51
|
+
import { Text, textChildren } from "../../primitives/text.js";
|
|
52
|
+
|
|
53
|
+
/** How long the pulse takes to swell and settle again, in milliseconds. */
|
|
54
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
55
|
+
const PULSE_DURATION = 800;
|
|
56
|
+
|
|
57
|
+
/** The roll's exit: short, because it is over before anyone looks at it. */
|
|
58
|
+
const ROLL_OUT = 180;
|
|
59
|
+
|
|
60
|
+
/** The roll's entrance. Springy, so the glyph lands rather than arriving. */
|
|
61
|
+
const ROLL_IN = {
|
|
62
|
+
damping: 18,
|
|
63
|
+
stiffness: 210,
|
|
64
|
+
mass: 0.85
|
|
65
|
+
};
|
|
66
|
+
const animatedBadgeVariants = tv({
|
|
67
|
+
slots: {
|
|
68
|
+
/*
|
|
69
|
+
* Clipped, which is the whole mechanism: the glyphs travel a full line box
|
|
70
|
+
* in and out, and without this they would be drawn over whatever the badge
|
|
71
|
+
* is sitting next to.
|
|
72
|
+
*/
|
|
73
|
+
/*
|
|
74
|
+
* No border. A ring would have to be a colour per status, and there is no
|
|
75
|
+
* token for one — `border` on its own resolves to `currentColor`, which
|
|
76
|
+
* comes out black on every pill in every theme. The tinted fill is what
|
|
77
|
+
* separates the badge from the surface, which is how `Badge` does it too.
|
|
78
|
+
*/
|
|
79
|
+
root: 'flex-row items-center self-start overflow-hidden rounded-full',
|
|
80
|
+
label: 'font-medium',
|
|
81
|
+
/** The pulse's fill, behind the content and inside the same clip. */
|
|
82
|
+
pulse: 'absolute inset-0',
|
|
83
|
+
/** One clipped column per rolling element, so the two move independently. */
|
|
84
|
+
slot: 'items-center justify-center overflow-hidden'
|
|
85
|
+
},
|
|
86
|
+
variants: {
|
|
87
|
+
status: {
|
|
88
|
+
neutral: {
|
|
89
|
+
root: 'bg-muted',
|
|
90
|
+
label: 'text-muted-foreground',
|
|
91
|
+
pulse: 'bg-muted-foreground'
|
|
92
|
+
},
|
|
93
|
+
info: {
|
|
94
|
+
root: 'bg-info-subtle',
|
|
95
|
+
label: 'text-info-foreground',
|
|
96
|
+
pulse: 'bg-info'
|
|
97
|
+
},
|
|
98
|
+
success: {
|
|
99
|
+
root: 'bg-success-subtle',
|
|
100
|
+
label: 'text-success-foreground',
|
|
101
|
+
pulse: 'bg-success'
|
|
102
|
+
},
|
|
103
|
+
warning: {
|
|
104
|
+
root: 'bg-warning-subtle',
|
|
105
|
+
label: 'text-warning-foreground',
|
|
106
|
+
pulse: 'bg-warning'
|
|
107
|
+
},
|
|
108
|
+
danger: {
|
|
109
|
+
root: 'bg-destructive-subtle',
|
|
110
|
+
label: 'text-destructive-foreground',
|
|
111
|
+
pulse: 'bg-destructive'
|
|
112
|
+
},
|
|
113
|
+
loading: {
|
|
114
|
+
root: 'bg-info-subtle',
|
|
115
|
+
label: 'text-info-foreground',
|
|
116
|
+
pulse: 'bg-info'
|
|
117
|
+
}
|
|
118
|
+
},
|
|
119
|
+
size: {
|
|
120
|
+
sm: {
|
|
121
|
+
root: 'h-6 gap-1.5 px-2',
|
|
122
|
+
label: 'text-[11px]'
|
|
123
|
+
},
|
|
124
|
+
md: {
|
|
125
|
+
root: 'h-8 gap-2 px-3',
|
|
126
|
+
label: 'text-xs'
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
defaultVariants: {
|
|
131
|
+
status: 'neutral',
|
|
132
|
+
size: 'md'
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
|
|
136
|
+
/** The glyph each status carries, when none is passed. */
|
|
137
|
+
const STATUS_ICON = {
|
|
138
|
+
neutral: CircleIcon,
|
|
139
|
+
info: InfoIcon,
|
|
140
|
+
success: CheckCircleIcon,
|
|
141
|
+
warning: AlertTriangleIcon,
|
|
142
|
+
danger: XIcon,
|
|
143
|
+
// Never drawn: `loading` uses the spinner instead, because a still glyph
|
|
144
|
+
// beside the word "loading" is the one status that has to move.
|
|
145
|
+
loading: CircleIcon
|
|
146
|
+
};
|
|
147
|
+
|
|
148
|
+
/** Which token the glyph is tinted from, so it matches the label beside it. */
|
|
149
|
+
const STATUS_COLOR_VAR = {
|
|
150
|
+
neutral: '--color-muted-foreground',
|
|
151
|
+
info: '--color-info-foreground',
|
|
152
|
+
success: '--color-success-foreground',
|
|
153
|
+
warning: '--color-warning-foreground',
|
|
154
|
+
danger: '--color-destructive-foreground',
|
|
155
|
+
loading: '--color-info-foreground'
|
|
156
|
+
};
|
|
157
|
+
|
|
158
|
+
/** Glyph sizes per badge size — the icon tracks the text, not the box. */
|
|
159
|
+
const ICON_SIZE = {
|
|
160
|
+
sm: 12,
|
|
161
|
+
md: 14
|
|
162
|
+
};
|
|
163
|
+
|
|
164
|
+
/** Milliseconds for one full turn of the loading ring. */
|
|
165
|
+
const SPIN_DURATION = 800;
|
|
166
|
+
export const AnimatedBadge = /*#__PURE__*/forwardRef(({
|
|
167
|
+
status = 'neutral',
|
|
168
|
+
size = 'md',
|
|
169
|
+
children,
|
|
170
|
+
icon,
|
|
171
|
+
showIcon = true,
|
|
172
|
+
pulse,
|
|
173
|
+
contentKey,
|
|
174
|
+
className,
|
|
175
|
+
labelClassName,
|
|
176
|
+
...props
|
|
177
|
+
}, ref) => {
|
|
178
|
+
const reducedMotion = useReducedMotion();
|
|
179
|
+
const slots = animatedBadgeVariants({
|
|
180
|
+
status,
|
|
181
|
+
size
|
|
182
|
+
});
|
|
183
|
+
const themeColor = useCSSVariable(STATUS_COLOR_VAR[status]);
|
|
184
|
+
const iconColor = typeof themeColor === 'string' ? themeColor : undefined;
|
|
185
|
+
const Icon = STATUS_ICON[status];
|
|
186
|
+
const pulsing = (pulse ?? status === 'loading') && !reducedMotion;
|
|
187
|
+
|
|
188
|
+
/*
|
|
189
|
+
* Keyed on what it says, so a re-render with the same word does not roll.
|
|
190
|
+
* Falling back to the status rather than to a constant means an element
|
|
191
|
+
* label at least changes when the state does, which is the common case for
|
|
192
|
+
* one — a caller with two states sharing a word passes `contentKey`.
|
|
193
|
+
*/
|
|
194
|
+
const labelKey = contentKey ?? (typeof children === 'string' || typeof children === 'number' ? children : status);
|
|
195
|
+
|
|
196
|
+
/*
|
|
197
|
+
* The width spring is for a badge changing, not for one arriving.
|
|
198
|
+
*
|
|
199
|
+
* Arming it on mount is not enough, and that is the whole subtlety: the
|
|
200
|
+
* pill's first *measured* layout lands a frame or two after the first
|
|
201
|
+
* render — text measures, the row settles — so a spring switched on at
|
|
202
|
+
* mount still catches that settling and animates it. From the outside the
|
|
203
|
+
* badge appears, drifts, and stops, on every screen that shows one.
|
|
204
|
+
*
|
|
205
|
+
* So it arms on the first real change instead. Nothing has to be guessed
|
|
206
|
+
* about when layout has finished, because until the status or the word
|
|
207
|
+
* actually moves there is nothing the spring is for.
|
|
208
|
+
*/
|
|
209
|
+
const [armed, setArmed] = useState(false);
|
|
210
|
+
const first = useRef(null);
|
|
211
|
+
useEffect(() => {
|
|
212
|
+
const key = `${status}\u0000${labelKey}`;
|
|
213
|
+
if (first.current === null) {
|
|
214
|
+
first.current = key;
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
if (key !== first.current) setArmed(true);
|
|
218
|
+
}, [status, labelKey]);
|
|
219
|
+
const swell = useSharedValue(0);
|
|
220
|
+
useEffect(() => {
|
|
221
|
+
if (!pulsing) {
|
|
222
|
+
swell.value = withTiming(0, {
|
|
223
|
+
duration: 200
|
|
224
|
+
});
|
|
225
|
+
return;
|
|
226
|
+
}
|
|
227
|
+
swell.value = withRepeat(withSequence(withTiming(1, {
|
|
228
|
+
duration: PULSE_DURATION,
|
|
229
|
+
easing: Easing.inOut(Easing.quad)
|
|
230
|
+
}), withTiming(0, {
|
|
231
|
+
duration: PULSE_DURATION,
|
|
232
|
+
easing: Easing.inOut(Easing.quad)
|
|
233
|
+
})), -1, false);
|
|
234
|
+
}, [pulsing, swell]);
|
|
235
|
+
const pulseStyle = useAnimatedStyle(() => ({
|
|
236
|
+
opacity: 0.08 + swell.value * 0.1,
|
|
237
|
+
transform: [{
|
|
238
|
+
scale: 0.96 + swell.value * 0.08
|
|
239
|
+
}]
|
|
240
|
+
}));
|
|
241
|
+
return /*#__PURE__*/_jsxs(Animated.View, {
|
|
242
|
+
ref: ref
|
|
243
|
+
// The pill grows to the new word rather than jumping to it: a badge in
|
|
244
|
+
// a row of them shoves its neighbours as it changes, and a jump does
|
|
245
|
+
// all of that shoving in one frame.
|
|
246
|
+
,
|
|
247
|
+
layout: reducedMotion || !armed ? undefined : LinearTransition.springify().damping(22),
|
|
248
|
+
accessibilityRole: "text",
|
|
249
|
+
accessibilityState: {
|
|
250
|
+
busy: status === 'loading'
|
|
251
|
+
},
|
|
252
|
+
className: slots.root({
|
|
253
|
+
className
|
|
254
|
+
}),
|
|
255
|
+
...props,
|
|
256
|
+
children: [pulsing ? /*#__PURE__*/_jsx(Animated.View, {
|
|
257
|
+
pointerEvents: "none",
|
|
258
|
+
className: slots.pulse(),
|
|
259
|
+
style: pulseStyle
|
|
260
|
+
}) : null, showIcon ? /*#__PURE__*/_jsx(View, {
|
|
261
|
+
className: slots.slot(),
|
|
262
|
+
style: {
|
|
263
|
+
height: ICON_SIZE[size] + 4
|
|
264
|
+
},
|
|
265
|
+
children: /*#__PURE__*/_jsx(IconColorProvider, {
|
|
266
|
+
color: iconColor,
|
|
267
|
+
children: /*#__PURE__*/_jsx(Roll, {
|
|
268
|
+
contentKey: status,
|
|
269
|
+
reducedMotion: reducedMotion,
|
|
270
|
+
turn: true,
|
|
271
|
+
children: icon ?? (status === 'loading' ? /*#__PURE__*/_jsx(LoadingRing, {
|
|
272
|
+
size: ICON_SIZE[size],
|
|
273
|
+
color: iconColor,
|
|
274
|
+
reducedMotion: reducedMotion
|
|
275
|
+
}) : /*#__PURE__*/_jsx(Icon, {
|
|
276
|
+
size: ICON_SIZE[size],
|
|
277
|
+
color: iconColor
|
|
278
|
+
}))
|
|
279
|
+
})
|
|
280
|
+
})
|
|
281
|
+
}) : null, children != null ? /*#__PURE__*/_jsx(View, {
|
|
282
|
+
className: slots.slot(),
|
|
283
|
+
children: /*#__PURE__*/_jsx(Roll, {
|
|
284
|
+
contentKey: labelKey,
|
|
285
|
+
reducedMotion: reducedMotion,
|
|
286
|
+
children: textChildren(children, text => /*#__PURE__*/_jsx(Text, {
|
|
287
|
+
className: slots.label({
|
|
288
|
+
className: labelClassName
|
|
289
|
+
}),
|
|
290
|
+
children: text
|
|
291
|
+
}))
|
|
292
|
+
})
|
|
293
|
+
}) : null]
|
|
294
|
+
});
|
|
295
|
+
});
|
|
296
|
+
AnimatedBadge.displayName = 'AnimatedBadge';
|
|
297
|
+
|
|
298
|
+
/**
|
|
299
|
+
* The turning ring `loading` draws in place of a glyph.
|
|
300
|
+
*
|
|
301
|
+
* Built here rather than borrowed from `Spinner` because this one has to be
|
|
302
|
+
* the status's colour and the badge's glyph size, and `Spinner` takes both
|
|
303
|
+
* from classes — a badge overriding them ends up fighting the merge, and an
|
|
304
|
+
* arbitrary border width that fails to compile leaves a ring with no border at
|
|
305
|
+
* all, which is an empty hole where the icon should be.
|
|
306
|
+
*
|
|
307
|
+
* The track and the arc are two views of the same colour rather than two
|
|
308
|
+
* colours: the track is the same stroke at low opacity, so there is nothing to
|
|
309
|
+
* resolve but the one value the label already uses.
|
|
310
|
+
*/
|
|
311
|
+
function LoadingRing({
|
|
312
|
+
size,
|
|
313
|
+
color,
|
|
314
|
+
reducedMotion
|
|
315
|
+
}) {
|
|
316
|
+
const turn = useSharedValue(0);
|
|
317
|
+
useEffect(() => {
|
|
318
|
+
if (reducedMotion) return;
|
|
319
|
+
turn.value = withRepeat(withTiming(1, {
|
|
320
|
+
duration: SPIN_DURATION,
|
|
321
|
+
easing: Easing.linear
|
|
322
|
+
}), -1, false);
|
|
323
|
+
}, [reducedMotion, turn]);
|
|
324
|
+
const style = useAnimatedStyle(() => ({
|
|
325
|
+
transform: [{
|
|
326
|
+
rotate: `${turn.value * 360}deg`
|
|
327
|
+
}]
|
|
328
|
+
}));
|
|
329
|
+
const ring = {
|
|
330
|
+
position: 'absolute',
|
|
331
|
+
inset: 0,
|
|
332
|
+
borderRadius: size / 2,
|
|
333
|
+
borderWidth: Math.max(1, Math.round(size / 8))
|
|
334
|
+
};
|
|
335
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
336
|
+
style: {
|
|
337
|
+
width: size,
|
|
338
|
+
height: size
|
|
339
|
+
},
|
|
340
|
+
children: [/*#__PURE__*/_jsx(View, {
|
|
341
|
+
style: [ring, {
|
|
342
|
+
borderColor: color,
|
|
343
|
+
opacity: 0.25
|
|
344
|
+
}]
|
|
345
|
+
}), /*#__PURE__*/_jsx(Animated.View, {
|
|
346
|
+
style: [ring, {
|
|
347
|
+
borderColor: 'transparent',
|
|
348
|
+
borderTopColor: color
|
|
349
|
+
}, style]
|
|
350
|
+
})]
|
|
351
|
+
});
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
/**
|
|
355
|
+
* One element's turn: the old one out through the top, the new one up from
|
|
356
|
+
* below.
|
|
357
|
+
*
|
|
358
|
+
* ## Why it is one view rather than two
|
|
359
|
+
*
|
|
360
|
+
* The obvious build is to key the element on its content and let the old one
|
|
361
|
+
* animate out while the new one animates in. It does not work here: for the
|
|
362
|
+
* length of the transition both are mounted in the same box, and the box
|
|
363
|
+
* becomes as large as the pair of them — a badge that swells and collapses
|
|
364
|
+
* around every change.
|
|
365
|
+
*
|
|
366
|
+
* So there is one view throughout, and the content is swapped at the far end
|
|
367
|
+
* of the roll: it travels out carrying the old word, the word is changed while
|
|
368
|
+
* it is off-screen, and it comes back with the new one. Nothing is ever in the
|
|
369
|
+
* badge twice.
|
|
370
|
+
*
|
|
371
|
+
* The two halves are deliberately not symmetrical. The entrance is what the
|
|
372
|
+
* reader is meant to follow, so it springs and takes its time; the exit is
|
|
373
|
+
* only getting out of the way, and an exit that lingers holds the badge empty.
|
|
374
|
+
*
|
|
375
|
+
* The travel is a percentage rather than a distance, so a glyph and a word of
|
|
376
|
+
* different heights each clear their own box by the same amount.
|
|
377
|
+
*/
|
|
378
|
+
function Roll({
|
|
379
|
+
contentKey,
|
|
380
|
+
children,
|
|
381
|
+
reducedMotion,
|
|
382
|
+
turn = false
|
|
383
|
+
}) {
|
|
384
|
+
const [shownKey, setShownKey] = useState(contentKey);
|
|
385
|
+
const settled = Object.is(shownKey, contentKey);
|
|
386
|
+
|
|
387
|
+
/*
|
|
388
|
+
* What is on screen while the swap is in flight. Held in a ref rather than
|
|
389
|
+
* state because it is only read at the moment of the swap, and holding it in
|
|
390
|
+
* state would re-render the badge on every parent render to store an element
|
|
391
|
+
* nobody is looking at yet.
|
|
392
|
+
*/
|
|
393
|
+
const outgoing = useRef(children);
|
|
394
|
+
const incomingKey = useRef(contentKey);
|
|
395
|
+
useEffect(() => {
|
|
396
|
+
incomingKey.current = contentKey;
|
|
397
|
+
if (settled) outgoing.current = children;
|
|
398
|
+
});
|
|
399
|
+
|
|
400
|
+
// -1 fully below, 0 at rest, +1 fully above.
|
|
401
|
+
const phase = useSharedValue(0);
|
|
402
|
+
const commit = useCallback(() => {
|
|
403
|
+
setShownKey(incomingKey.current);
|
|
404
|
+
phase.value = -1;
|
|
405
|
+
phase.value = withSpring(0, ROLL_IN);
|
|
406
|
+
}, [phase]);
|
|
407
|
+
useEffect(() => {
|
|
408
|
+
if (settled) {
|
|
409
|
+
/*
|
|
410
|
+
* Changed and changed back before the roll finished. The swap that would
|
|
411
|
+
* have brought the element home is never scheduled, so without this it
|
|
412
|
+
* stays parked outside the badge — an empty slot where the glyph should
|
|
413
|
+
* be, for as long as the status holds.
|
|
414
|
+
*/
|
|
415
|
+
if (phase.value !== 0) phase.value = withSpring(0, ROLL_IN);
|
|
416
|
+
return;
|
|
417
|
+
}
|
|
418
|
+
if (reducedMotion) {
|
|
419
|
+
setShownKey(incomingKey.current);
|
|
420
|
+
return;
|
|
421
|
+
}
|
|
422
|
+
phase.value = withTiming(1, {
|
|
423
|
+
duration: ROLL_OUT
|
|
424
|
+
}, finished => {
|
|
425
|
+
'worklet';
|
|
426
|
+
|
|
427
|
+
// Interrupted means another change arrived mid-roll; that change's own
|
|
428
|
+
// effect owns the swap, and committing here too would swap twice.
|
|
429
|
+
if (finished) runOnJS(commit)();
|
|
430
|
+
});
|
|
431
|
+
}, [contentKey, settled, reducedMotion, commit, phase]);
|
|
432
|
+
const style = useAnimatedStyle(() => {
|
|
433
|
+
const p = phase.value;
|
|
434
|
+
const distance = Math.min(Math.abs(p), 1);
|
|
435
|
+
return {
|
|
436
|
+
opacity: 1 - distance * 0.9,
|
|
437
|
+
transform: [{
|
|
438
|
+
translateY: `${p * -90}%`
|
|
439
|
+
}, {
|
|
440
|
+
scale: 1 - distance * 0.1
|
|
441
|
+
}, {
|
|
442
|
+
rotate: turn ? `${p * 12}deg` : '0deg'
|
|
443
|
+
}]
|
|
444
|
+
};
|
|
445
|
+
});
|
|
446
|
+
return /*#__PURE__*/_jsx(Animated.View, {
|
|
447
|
+
style: style,
|
|
448
|
+
children: settled ? children : outgoing.current
|
|
449
|
+
});
|
|
450
|
+
}
|
|
451
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["forwardRef","useCallback","useEffect","useRef","useState","View","Animated","Easing","LinearTransition","runOnJS","useAnimatedStyle","useReducedMotion","useSharedValue","withRepeat","withSequence","withSpring","withTiming","tv","useCSSVariable","AlertTriangleIcon","CheckCircleIcon","CircleIcon","InfoIcon","XIcon","IconColorProvider","Text","textChildren","jsx","_jsx","jsxs","_jsxs","PULSE_DURATION","ROLL_OUT","ROLL_IN","damping","stiffness","mass","animatedBadgeVariants","slots","root","label","pulse","slot","variants","status","neutral","info","success","warning","danger","loading","size","sm","md","defaultVariants","STATUS_ICON","STATUS_COLOR_VAR","ICON_SIZE","SPIN_DURATION","AnimatedBadge","children","icon","showIcon","contentKey","className","labelClassName","props","ref","reducedMotion","themeColor","iconColor","undefined","Icon","pulsing","labelKey","armed","setArmed","first","key","current","swell","value","duration","easing","inOut","quad","pulseStyle","opacity","transform","scale","layout","springify","accessibilityRole","accessibilityState","busy","pointerEvents","style","height","color","Roll","turn","LoadingRing","text","displayName","linear","rotate","ring","position","inset","borderRadius","borderWidth","Math","max","round","width","borderColor","borderTopColor","shownKey","setShownKey","settled","Object","is","outgoing","incomingKey","phase","commit","finished","p","distance","min","abs","translateY"],"sourceRoot":"../../../../src","sources":["components/animated-badge/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { cloneElement, createContext, isValidElement, useCallback, useContext, useEffect, useMemo, useRef, useState } from 'react';
|
|
3
|
+
import { cloneElement, createContext, forwardRef, isValidElement, useCallback, useContext, useEffect, useMemo, useRef, useState } from 'react';
|
|
4
4
|
import { Pressable, StyleSheet, useWindowDimensions, View } from 'react-native';
|
|
5
5
|
import { useCSSVariable } from 'uniwind';
|
|
6
6
|
import { Gesture, GestureDetector } from 'react-native-gesture-handler';
|
|
7
|
-
import Animated, { Extrapolation, FadeIn, cancelAnimation, interpolate, runOnJS, useAnimatedScrollHandler, useAnimatedStyle, useReducedMotion, useSharedValue, withSpring, withTiming } from 'react-native-reanimated';
|
|
7
|
+
import Animated, { Extrapolation, FadeIn, cancelAnimation, interpolate, runOnJS, useAnimatedScrollHandler, useAnimatedStyle, useComposedEventHandler, useReducedMotion, useSharedValue, withSpring, withTiming } from 'react-native-reanimated';
|
|
8
8
|
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
|
9
9
|
import { tv } from 'tailwind-variants';
|
|
10
10
|
import { NativeHost, getComposeModifiers, getNativeUI, getSwiftUIModifiers } from "../../native/index.js";
|
|
@@ -694,12 +694,12 @@ BottomSheetHeader.displayName = 'BottomSheet.Header';
|
|
|
694
694
|
* out — pull down on a list at its top and the sheet comes with you, pull
|
|
695
695
|
* down anywhere else and the list scrolls.
|
|
696
696
|
*/
|
|
697
|
-
function BottomSheetBody({
|
|
697
|
+
const BottomSheetBody = /*#__PURE__*/forwardRef(function BottomSheetBody({
|
|
698
698
|
className,
|
|
699
699
|
children,
|
|
700
700
|
onScroll,
|
|
701
701
|
...props
|
|
702
|
-
}) {
|
|
702
|
+
}, ref) {
|
|
703
703
|
const surface = useContext(SheetSurfaceContext);
|
|
704
704
|
useEffect(() => {
|
|
705
705
|
if (!surface) return;
|
|
@@ -720,12 +720,23 @@ function BottomSheetBody({
|
|
|
720
720
|
const handler = useAnimatedScrollHandler(event => {
|
|
721
721
|
if (scrollOffset) scrollOffset.value = event.contentOffset.y;
|
|
722
722
|
});
|
|
723
|
+
|
|
724
|
+
/*
|
|
725
|
+
* Composed, not replaced. A caller's `onScroll` arriving after this one used
|
|
726
|
+
* to take its place, which silently cost the sheet the position report its
|
|
727
|
+
* whole drag arrangement is built on — the list and the sheet went back to
|
|
728
|
+
* fighting over every downward swipe, and nothing said why.
|
|
729
|
+
*
|
|
730
|
+
* It has to be an animated handler for the same reason this one is.
|
|
731
|
+
*/
|
|
732
|
+
const composed = useComposedEventHandler([handler, onScroll ?? null]);
|
|
723
733
|
const body = /*#__PURE__*/_jsx(Animated.ScrollView, {
|
|
724
|
-
|
|
734
|
+
ref: ref,
|
|
725
735
|
scrollEventThrottle: 16,
|
|
726
736
|
showsVerticalScrollIndicator: false,
|
|
727
737
|
className: cn('flex-1', className),
|
|
728
738
|
...props,
|
|
739
|
+
onScroll: composed,
|
|
729
740
|
children: textChildren(children)
|
|
730
741
|
});
|
|
731
742
|
|
|
@@ -739,7 +750,7 @@ function BottomSheetBody({
|
|
|
739
750
|
gesture: surface.scrollGesture,
|
|
740
751
|
children: body
|
|
741
752
|
});
|
|
742
|
-
}
|
|
753
|
+
});
|
|
743
754
|
BottomSheetBody.displayName = 'BottomSheet.Body';
|
|
744
755
|
/**
|
|
745
756
|
* A row pinned below the body, for whatever the sheet is asking to be decided.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["cloneElement","createContext","isValidElement","useCallback","useContext","useEffect","useMemo","useRef","useState","Pressable","StyleSheet","useWindowDimensions","View","useCSSVariable","Gesture","GestureDetector","Animated","Extrapolation","FadeIn","cancelAnimation","interpolate","runOnJS","useAnimatedScrollHandler","useAnimatedStyle","useReducedMotion","useSharedValue","withSpring","withTiming","useSafeAreaInsets","tv","NativeHost","getComposeModifiers","getNativeUI","getSwiftUIModifiers","XIcon","ModalPortal","Scrim","Text","textChildren","useBackHandler","cn","impactKnock","jsx","_jsx","jsxs","_jsxs","SPRING","duration","dampingRatio","EXIT_SPRING","overshootClamping","DISMISS_DISTANCE","DISMISS_VELOCITY","project","velocity","decelerationRate","sheetVariants","base","variants","detached","false","true","defaultVariants","BottomSheetContext","useBottomSheet","component","context","Error","DETENT_FRACTION","half","full","NATIVE_DISMISS_MS","bottomSheetDetentHeight","snapPoints","screenHeight","length","undefined","first","fraction","height","nativeSheetSurface","color","swiftUI","presentationBackground","compose","background","NativeSheetContext","SheetSurfaceContext","BottomSheetRoot","children","open","onOpenChange","defaultOpen","native","nativeBackground","internalOpen","setInternalOpen","isControlled","resolvedOpen","setOpen","next","nativeUI","nativeSheet","Provider","value","BottomSheetTrigger","onPress","args","props","SIZE_FRACTION","BottomSheetContent","className","dismissible","showClose","showGrabber","blur","size","width","screenWidth","reducedMotion","insets","translateY","closeTint","popoverSurface","scrollGesture","Native","scrollOffset","hasScrollable","close","presented","setPresented","land","finished","nativePresented","setNativePresented","nativeOnScreen","nativeDismissing","nativeDismissTimer","openRef","current","endNativeDismissal","clearTimeout","setTimeout","onNativeDismiss","pan","Pan","activeOffsetY","simultaneousWithExternalGesture","onChange","event","changeY","onEnd","projected","velocityY","sheetStyle","transform","backdropStyle","opacity","CLAMP","sizedHeight","Math","min","top","surface","Host","BottomSheet","NativeBottomSheet","RNHostView","requested","modifiers","host","matchContents","ignoreSafeArea","style","position","isPresented","onDismiss","minHeight","paddingBottom","max","bottom","absoluteFill","accessibilityLabel","gesture","entering","accessibilityViewIsModal","accessibilityRole","hitSlop","BottomSheetHeader","title","description","text","weight","muted","displayName","BottomSheetBody","onScroll","handler","contentOffset","y","body","ScrollView","scrollEventThrottle","showsVerticalScrollIndicator","BottomSheetFooter","Object","assign","Trigger","Content","Header","Body","Footer"],"sourceRoot":"../../../../src","sources":["components/bottom-sheet/index.tsx"],"mappings":";;AAAA,SACEA,YAAY,EACZC,aAAa,EACbC,cAAc,EACdC,WAAW,EACXC,UAAU,EACVC,SAAS,EACTC,OAAO,EACPC,MAAM,EACNC,QAAQ,QAIH,OAAO;AACd,SACEC,SAAS,EACTC,UAAU,EACVC,mBAAmB,EACnBC,IAAI,QAEC,cAAc;AACrB,SAASC,cAAc,QAAQ,SAAS;AACxC,SAASC,OAAO,EAAEC,eAAe,QAAQ,8BAA8B;AACvE,OAAOC,QAAQ,IACbC,aAAa,EACbC,MAAM,EACNC,eAAe,EACfC,WAAW,EACXC,OAAO,EACPC,wBAAwB,EACxBC,gBAAgB,EAChBC,gBAAgB,EAChBC,cAAc,EACdC,UAAU,EACVC,UAAU,QAEL,yBAAyB;AAChC,SAASC,iBAAiB,QAAQ,gCAAgC;AAClE,SAASC,EAAE,QAAQ,mBAAmB;AACtC,SAASC,UAAU,EAAEC,mBAAmB,EAAEC,WAAW,EAAEC,mBAAmB,QAAQ,uBAAc;AAChG,SAASC,KAAK,QAAQ,sBAAa;AACnC,SAASC,WAAW,QAAQ,4BAAyB;AACrD,SAASC,KAAK,QAAQ,2BAAwB;AAC9C,SAASC,IAAI,EAAEC,YAAY,QAAQ,0BAAuB;AAC1D,SAASC,cAAc,QAAQ,iCAA8B;AAC7D,SAASC,EAAE,QAAQ,mBAAgB;AACnC,SAASC,WAAW,QAAQ,wBAAqB;;AAEjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAfA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAgBA,MAAMC,MAAM,GAAG;EAAEC,QAAQ,EAAE,GAAG;EAAEC,YAAY,EAAE;AAAI,CAAU;;AAE5D;AACA;AACA;AACA;AACA;AACA,MAAMC,WAAW,GAAG;EAAEF,QAAQ,EAAE,GAAG;EAAEC,YAAY,EAAE,CAAC;EAAEE,iBAAiB,EAAE;AAAK,CAAU;AAExF,MAAMC,gBAAgB,GAAG,GAAG;AAC5B,MAAMC,gBAAgB,GAAG,GAAG;;AAE5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,OAAOA,CAACC,QAAgB,EAAU;EACzC,SAAS;;EACT,MAAMC,gBAAgB,GAAG,KAAK;EAC9B,OAASD,QAAQ,GAAG,IAAI,GAAIC,gBAAgB,IAAK,CAAC,GAAGA,gBAAgB,CAAC;AACxE;AAEA,MAAMC,aAAa,GAAG3B,EAAE,CAAC;EACvB4B,IAAI,EAAE,qDAAqD;EAC3DC,QAAQ,EAAE;IACRC,QAAQ,EAAE;MACR;MACA;MACA;MACAC,KAAK,EAAE,0BAA0B;MACjC;MACA;MACAC,IAAI,EAAE;IACR;EACF,CAAC;EACDC,eAAe,EAAE;IACfH,QAAQ,EAAE;EACZ;AACF,CAAC,CAAC;AAOF,MAAMI,kBAAkB,gBAAG9D,aAAa,CAAiC,IAAI,CAAC;AAE9E,SAAS+D,cAAcA,CAACC,SAAiB,EAA2B;EAClE,MAAMC,OAAO,GAAG9D,UAAU,CAAC2D,kBAAkB,CAAC;EAC9C,IAAI,CAACG,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,GAAGF,SAAS,sCAAsC,CAAC;EACrE;EACA,OAAOC,OAAO;AAChB;AAyCA;AACA;AACA;AACA;AACA;AACA,MAAME,eAAe,GAAG;EAAEC,IAAI,EAAE,GAAG;EAAEC,IAAI,EAAE;AAAI,CAAU;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,iBAAiB,GAAG,GAAG;;AAE7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,uBAAuBA,CACrCC,UAA0C,EAC1CC,YAAoB,EACA;EACpB,IAAI,CAACD,UAAU,EAAEE,MAAM,EAAE,OAAOC,SAAS;;EAEzC;EACA,MAAMC,KAAK,GAAGJ,UAAU,CAAC,CAAC,CAAC;EAC3B,IAAII,KAAK,KAAK,MAAM,IAAIA,KAAK,KAAK,MAAM,EAAE;IACxC,OAAOH,YAAY,GAAGN,eAAe,CAACS,KAAK,CAAC;EAC9C;EACA,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAI,UAAU,IAAIA,KAAK,EAAE;IACpD,OAAOH,YAAY,GAAGG,KAAK,CAACC,QAAQ;EACtC;EACA,IAAI,OAAOD,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAIA,KAAK,EAAE,OAAOA,KAAK,CAACE,MAAM;EACvE,OAAOH,SAAS;AAClB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASI,kBAAkBA,CAACC,KAAa,EAAyB;EAChE,MAAMC,OAAO,GAAGjD,mBAAmB,CAAC,CAAC;EACrC,IAAIiD,OAAO,EAAE,OAAO,CAACA,OAAO,CAACC,sBAAsB,CAACF,KAAK,CAAC,CAAC;EAE3D,MAAMG,OAAO,GAAGrD,mBAAmB,CAAC,CAAC;EACrC,IAAIqD,OAAO,EAAE,OAAO,CAACA,OAAO,CAACC,UAAU,CAACJ,KAAK,CAAC,CAAC;EAE/C,OAAOL,SAAS;AAClB;;AAEA;AACA;AACA;AACA;AACA,MAAMU,kBAAkB,gBAAGrF,aAAa,CAI9B,IAAI,CAAC;;AAEf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,MAAMsF,mBAAmB,gBAAGtF,aAAa,CAI/B,IAAI,CAAC;AAEf,SAASuF,eAAeA,CAAC;EACvBC,QAAQ;EACRC,IAAI;EACJC,YAAY;EACZC,WAAW,GAAG,KAAK;EACnBC,MAAM;EACNpB,UAAU;EACVqB;AACgB,CAAC,EAAE;EACnB,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAGxF,QAAQ,CAACoF,WAAW,CAAC;EAC7D,MAAMK,YAAY,GAAGP,IAAI,KAAKd,SAAS;EACvC,MAAMsB,YAAY,GAAGD,YAAY,GAAGP,IAAI,GAAGK,YAAY;EAEvD,MAAMI,OAAO,GAAGhG,WAAW,CACxBiG,IAAa,IAAK;IACjB,IAAI,CAACH,YAAY,EAAED,eAAe,CAACI,IAAI,CAAC;IACxCT,YAAY,GAAGS,IAAI,CAAC;EACtB,CAAC,EACD,CAACH,YAAY,EAAEN,YAAY,CAC7B,CAAC;EAED,MAAMzB,OAAO,GAAG5D,OAAO,CACrB,OAAO;IAAEoF,IAAI,EAAEQ,YAAY;IAAEC;EAAQ,CAAC,CAAC,EACvC,CAACD,YAAY,EAAEC,OAAO,CACxB,CAAC;EAED,MAAME,QAAQ,GAAGR,MAAM,GAAG7D,WAAW,CAAC,CAAC,GAAG,IAAI;EAC9C,MAAMsE,WAAW,GAAGhG,OAAO,CACzB,MAAO+F,QAAQ,GAAG;IAAEA,QAAQ;IAAE5B,UAAU;IAAEY,UAAU,EAAES;EAAiB,CAAC,GAAG,IAAK,EAChF,CAACA,gBAAgB,EAAEO,QAAQ,EAAE5B,UAAU,CACzC,CAAC;EAED,oBACE9B,IAAA,CAACoB,kBAAkB,CAACwC,QAAQ;IAACC,KAAK,EAAEtC,OAAQ;IAAAuB,QAAA,eAC1C9C,IAAA,CAAC2C,kBAAkB,CAACiB,QAAQ;MAACC,KAAK,EAAEF,WAAY;MAAAb,QAAA,EAC7CA;IAAQ,CACkB;EAAC,CACH,CAAC;AAElC;AAMA,SAASgB,kBAAkBA,CAAC;EAAEhB;AAAkC,CAAC,EAAE;EACjE,MAAM;IAAEU;EAAQ,CAAC,GAAGnC,cAAc,CAAC,qBAAqB,CAAC;EACzD,IAAI,eAAC9D,cAAc,CAACuF,QAAQ,CAAC,EAAE,OAAOA,QAAQ;EAE9C,oBAAOzF,YAAY,CAACyF,QAAQ,EAAE;IAC5BiB,OAAO,EAAEA,CAAC,GAAGC,IAAe,KAAK;MAC/BlB,QAAQ,CAACmB,KAAK,CAACF,OAAO,GAAG,GAAGC,IAAI,CAAC;MACjCR,OAAO,CAAC,IAAI,CAAC;IACf;EACF,CAAC,CAAC;AACJ;AAsDA;AACA;AACA;AACA;AACA;AACA,MAAMU,aAAa,GAAG;EAAExC,IAAI,EAAE,GAAG;EAAEC,IAAI,EAAE;AAAK,CAAU;AAExD,SAASwC,kBAAkBA,CAAC;EAC1BC,SAAS;EACTC,WAAW,GAAG,IAAI;EAClBC,SAAS,GAAG,IAAI;EAChBC,WAAW,GAAG,IAAI;EAClBvD,QAAQ,GAAG,KAAK;EAChBwD,IAAI,GAAG,KAAK;EACZC,IAAI,GAAG,MAAM;EACb3B,QAAQ;EACR,GAAGmB;AACoB,CAAC,EAAE;EAC1B,MAAM1C,OAAO,GAAGF,cAAc,CAAC,qBAAqB,CAAC;EACrD,MAAM;IAAE0B,IAAI;IAAES;EAAQ,CAAC,GAAGjC,OAAO;EACjC,MAAMoC,WAAW,GAAGlG,UAAU,CAACkF,kBAAkB,CAAC;EAClD,MAAM;IAAEP,MAAM,EAAEL,YAAY;IAAE2C,KAAK,EAAEC;EAAY,CAAC,GAAG3G,mBAAmB,CAAC,CAAC;EAC1E,MAAM4G,aAAa,GAAG/F,gBAAgB,CAAC,CAAC;EACxC,MAAMgG,MAAM,GAAG5F,iBAAiB,CAAC,CAAC;EAClC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,MAAM6F,UAAU,GAAGhG,cAAc,CAAC8F,aAAa,GAAG,CAAC,GAAG7C,YAAY,CAAC;EACnE,MAAMgD,SAAS,GAAG7G,cAAc,CAAC,0BAA0B,CAAC;EAC5D;EACA;EACA;EACA,MAAM8G,cAAc,GAAG9G,cAAc,CAAC,iBAAiB,CAAC;;EAExD;AACF;AACA;AACA;AACA;AACA;AACA;EACE,MAAM+G,aAAa,GAAGtH,OAAO,CAAC,MAAMQ,OAAO,CAAC+G,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC;EACzD,MAAMC,YAAY,GAAGrG,cAAc,CAAC,CAAC,CAAC;EACtC,MAAMsG,aAAa,GAAGtG,cAAc,CAAC,KAAK,CAAC;EAE3C,MAAMuG,KAAK,GAAG7H,WAAW,CAAC,MAAMgG,OAAO,CAAC,KAAK,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;;EAE1D;EACA;EACA5D,cAAc,CAACmD,IAAI,IAAIsB,WAAW,EAAEgB,KAAK,CAAC;;EAE1C;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAG1H,QAAQ,CAACkF,IAAI,CAAC;EAEhDrF,SAAS,CAAC,MAAM;IACd,IAAIqF,IAAI,EAAE;MACRvE,eAAe,CAACsG,UAAU,CAAC;MAC3B,IAAI,CAACQ,SAAS,EAAE;QACd;AACR;AACA;AACA;AACA;AACA;QACQR,UAAU,CAACjB,KAAK,GAAGe,aAAa,GAAG,CAAC,GAAG7C,YAAY;QACnDwD,YAAY,CAAC,IAAI,CAAC;QAClB;MACF;MACAT,UAAU,CAACjB,KAAK,GAAGe,aAAa,GAC5B5F,UAAU,CAAC,CAAC,EAAE;QAAEoB,QAAQ,EAAE;MAAI,CAAC,CAAC,GAChCrB,UAAU,CAAC,CAAC,EAAEoB,MAAM,CAAC;MACzB;IACF;IAEA,IAAI,CAACmF,SAAS,EAAE;IAEhB,MAAME,IAAI,GAAIC,QAAkB,IAAK;MACnC,SAAS;;MACT,IAAIA,QAAQ,EAAE/G,OAAO,CAAC6G,YAAY,CAAC,CAAC,KAAK,CAAC;IAC5C,CAAC;IACDT,UAAU,CAACjB,KAAK,GAAGe,aAAa,GAC5B5F,UAAU,CAAC+C,YAAY,EAAE;MAAE3B,QAAQ,EAAE;IAAI,CAAC,EAAEoF,IAAI,CAAC,GACjDzG,UAAU,CAACgD,YAAY,EAAEzB,WAAW,EAAEkF,IAAI,CAAC;EACjD,CAAC,EAAE,CAACzC,IAAI,EAAEuC,SAAS,EAAEV,aAAa,EAAE7C,YAAY,EAAE+C,UAAU,CAAC,CAAC;;EAE9D;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,MAAM,CAACY,eAAe,EAAEC,kBAAkB,CAAC,GAAG9H,QAAQ,CAACkF,IAAI,CAAC;EAC5D,MAAM6C,cAAc,GAAGhI,MAAM,CAACmF,IAAI,CAAC;EACnC,MAAM8C,gBAAgB,GAAGjI,MAAM,CAAC,KAAK,CAAC;EACtC,MAAMkI,kBAAkB,GAAGlI,MAAM,CAAuC,IAAI,CAAC;EAC7E,MAAMmI,OAAO,GAAGnI,MAAM,CAACmF,IAAI,CAAC;EAC5BgD,OAAO,CAACC,OAAO,GAAGjD,IAAI;;EAEtB;EACA,MAAMkD,kBAAkB,GAAGzI,WAAW,CAAC,MAAM;IAC3C,IAAIsI,kBAAkB,CAACE,OAAO,KAAK,IAAI,EAAE;MACvCE,YAAY,CAACJ,kBAAkB,CAACE,OAAO,CAAC;MACxCF,kBAAkB,CAACE,OAAO,GAAG,IAAI;IACnC;IACA,IAAI,CAACH,gBAAgB,CAACG,OAAO,EAAE;IAC/BH,gBAAgB,CAACG,OAAO,GAAG,KAAK;IAEhC,IAAID,OAAO,CAACC,OAAO,EAAE;MACnBJ,cAAc,CAACI,OAAO,GAAG,IAAI;MAC7BL,kBAAkB,CAAC,IAAI,CAAC;IAC1B;EACF,CAAC,EAAE,EAAE,CAAC;EAENjI,SAAS,CAAC,MAAM;IACd,IAAI,CAACiG,WAAW,EAAE;IAElB,IAAIZ,IAAI,EAAE;MACR,IAAI8C,gBAAgB,CAACG,OAAO,EAAE;MAC9BJ,cAAc,CAACI,OAAO,GAAG,IAAI;MAC7BL,kBAAkB,CAAC,IAAI,CAAC;MACxB;IACF;;IAEA;IACA;IACA,IAAIC,cAAc,CAACI,OAAO,EAAE;MAC1BJ,cAAc,CAACI,OAAO,GAAG,KAAK;MAC9BH,gBAAgB,CAACG,OAAO,GAAG,IAAI;MAC/B,IAAIF,kBAAkB,CAACE,OAAO,KAAK,IAAI,EAAEE,YAAY,CAACJ,kBAAkB,CAACE,OAAO,CAAC;MACjFF,kBAAkB,CAACE,OAAO,GAAGG,UAAU,CAACF,kBAAkB,EAAErE,iBAAiB,CAAC;IAChF;IACA+D,kBAAkB,CAAC,KAAK,CAAC;EAC3B,CAAC,EAAE,CAACM,kBAAkB,EAAEtC,WAAW,EAAEZ,IAAI,CAAC,CAAC;EAE3CrF,SAAS,CACP,MAAM,MAAM;IACV,IAAIoI,kBAAkB,CAACE,OAAO,KAAK,IAAI,EAAEE,YAAY,CAACJ,kBAAkB,CAACE,OAAO,CAAC;EACnF,CAAC,EACD,EACF,CAAC;EAED,MAAMI,eAAe,GAAG5I,WAAW,CAAC,MAAM;IACxC;IACA;IACAoI,cAAc,CAACI,OAAO,GAAG,KAAK;;IAE9B;IACA;IACA,IAAIH,gBAAgB,CAACG,OAAO,EAAE;MAC5BC,kBAAkB,CAAC,CAAC;MACpB;IACF;IAEA,IAAI5B,WAAW,EAAEgB,KAAK,CAAC,CAAC;EAC1B,CAAC,EAAE,CAACA,KAAK,EAAEhB,WAAW,EAAE4B,kBAAkB,CAAC,CAAC;EAE5C,MAAMI,GAAG,GAAG1I,OAAO,CACjB,MACEQ,OAAO,CAACmI,GAAG,CAAC;EACV;AACR;AACA;AACA;AACA;AACA,KALQ,CAMCC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC;EACxB;AACR;AACA;AACA;AACA;AACA,KALQ,CAMCC,+BAA+B,CAACvB,aAAa,CAAC,CAC9CwB,QAAQ,CAAEC,KAAK,IAAK;IACnB;AACV;AACA;AACA;AACA;AACA;AACA;AACA;IACU,IAAItB,aAAa,CAACvB,KAAK,IAAIsB,YAAY,CAACtB,KAAK,GAAG,CAAC,IAAIiB,UAAU,CAACjB,KAAK,IAAI,CAAC,EAAE;MAC1E;IACF;IACA;IACA,MAAMJ,IAAI,GAAGqB,UAAU,CAACjB,KAAK,GAAG6C,KAAK,CAACC,OAAO;IAC7C7B,UAAU,CAACjB,KAAK,GAAGJ,IAAI,GAAG,CAAC,GAAGA,IAAI,GAAGA,IAAI,GAAG,CAAC;EAC/C,CAAC,CAAC,CACDmD,KAAK,CAAEF,KAAK,IAAK;IAChB;AACV;AACA;AACA;AACA;AACA;AACA;AACA;IACU,MAAMG,SAAS,GAAG/B,UAAU,CAACjB,KAAK,GAAGnD,OAAO,CAACgG,KAAK,CAACI,SAAS,CAAC;IAC7D,IACED,SAAS,GAAGrG,gBAAgB,IAC5BkG,KAAK,CAACI,SAAS,GAAGrG,gBAAgB,EAClC;MACAqE,UAAU,CAACjB,KAAK,GAAG9E,UAAU,CAC3BgD,YAAY,EACZ;QAAE,GAAGzB,WAAW;QAAEK,QAAQ,EAAE+F,KAAK,CAACI;MAAU,CAAC,EAC5CrB,QAAQ,IAAK;QACZ,IAAIA,QAAQ,EAAE/G,OAAO,CAAC2G,KAAK,CAAC,CAAC,CAAC;MAChC,CACF,CAAC;IACH,CAAC,MAAM;MACLP,UAAU,CAACjB,KAAK,GAAG9E,UAAU,CAAC,CAAC,EAAE;QAAE,GAAGoB,MAAM;QAAEQ,QAAQ,EAAE+F,KAAK,CAACI;MAAU,CAAC,CAAC;MAC1E;MACA;MACApI,OAAO,CAACoB,WAAW,CAAC,CAAC,CAAC;IACxB;EACF,CAAC,CAAC;EACN;EACA;EACA;EACA,CAACuF,KAAK,EAAEtD,YAAY,EAAE+C,UAAU,EAAEG,aAAa,EAAEE,YAAY,EAAEC,aAAa,CAC9E,CAAC;EAED,MAAM2B,UAAU,GAAGnI,gBAAgB,CAAC,OAAO;IACzCoI,SAAS,EAAE,CAAC;MAAElC,UAAU,EAAEA,UAAU,CAACjB;IAAM,CAAC;EAC9C,CAAC,CAAC,CAAC;EAEH,MAAMoD,aAAa,GAAGrI,gBAAgB,CAAC,OAAO;IAC5CsI,OAAO,EAAEzI,WAAW,CAClBqG,UAAU,CAACjB,KAAK,EAChB,CAAC,CAAC,EAAE9B,YAAY,CAAC,EACjB,CAAC,CAAC,EAAE,CAAC,CAAC,EACNzD,aAAa,CAAC6I,KAChB;EACF,CAAC,CAAC,CAAC;;EAEH;AACF;AACA;AACA;AACA;EACE,MAAMC,WAAW,GACf3C,IAAI,KAAK,MAAM,GACXxC,SAAS,GACToF,IAAI,CAACC,GAAG,CACNvF,YAAY,GAAGmC,aAAa,CAACO,IAAI,CAAC,EAClC1C,YAAY,GAAG8C,MAAM,CAAC0C,GAAG,IAAIvG,QAAQ,GAAG,EAAE,GAAG,CAAC,CAChD,CAAC;EAEP,MAAMwG,OAAO,GAAG7J,OAAO,CACrB,OAAO;IAAEsH,aAAa;IAAEE,YAAY;IAAEC;EAAc,CAAC,CAAC,EACtD,CAACH,aAAa,EAAEE,YAAY,EAAEC,aAAa,CAC7C,CAAC;EAED,IAAIzB,WAAW,EAAE;IACf,MAAM;MAAE8D,IAAI;MAAEC,WAAW,EAAEC,iBAAiB;MAAEC;IAAW,CAAC,GAAGjE,WAAW,CAACD,QAAQ;IACjF;AACJ;AACA;AACA;AACA;IACI,MAAM5B,UAAU,GACd6B,WAAW,CAAC7B,UAAU,KAAK2C,IAAI,KAAK,MAAM,GAAGxC,SAAS,GAAG,CAACwC,IAAI,CAAC,CAAC;IAClE;AACJ;AACA;AACA;AACA;AACA;IACI,MAAMoD,SAAS,GAAGlE,WAAW,CAACjB,UAAU;IACxC,MAAM8E,OAAO,GACXK,SAAS,KAAK,IAAI,GACd,OAAO7C,cAAc,KAAK,QAAQ,GAChCA,cAAc,GACd/C,SAAS,GACX,OAAO4F,SAAS,KAAK,QAAQ,GAC3BA,SAAS,GACT5F,SAAS;IACjB,MAAM6F,SAAS,GAAGN,OAAO,GAAGnF,kBAAkB,CAACmF,OAAO,CAAC,GAAGvF,SAAS;IACnE;IACA;IACA;IACA;IACA;IACA;IACA,oBACEjC,IAAA,CAACb,UAAU;MACT4I,IAAI,EAAEN,IAAK;MACXO,aAAa;MACbC,cAAc,EAAC,UAAU;MACzBC,KAAK,EAAE;QAAEC,QAAQ,EAAE;MAAW,CAAE;MAAArF,QAAA,eAEhC9C,IAAA,CAAC2H,iBAAiB;QAChBS,WAAW,EAAE1C,eAAgB;QAC7B2C,SAAS,EAAEjC,eAAgB;QAC3BtE,UAAU,EAAEA,UAAW;QACvBgG,SAAS,EAAEA,SAAU;QAAAhF,QAAA,eAErB9C,IAAA,CAAC4H,UAAU;UAACI,aAAa;UAAAlF,QAAA,eACvB9C,IAAA,CAACoB,kBAAkB,CAACwC,QAAQ;YAACC,KAAK,EAAEtC,OAAQ;YAAAuB,QAAA,eAC1C9C,IAAA,CAAC/B,IAAI;cAAA,GACCgG,KAAK;cACTG,SAAS,EAAEvE,EAAE;cACX;cACA;cACA;cACA;cACA,oCAAoC,EACpCuE,SACF,CAAE;cACF8D,KAAK,EAAE;gBACL;gBACA;gBACA;gBACA;gBACAxD,KAAK,EAAEC,WAAW;gBAClB2D,SAAS,EAAEzG,uBAAuB,CAACC,UAAU,EAAEC,YAAY,CAAC;gBAC5DwG,aAAa,EAAElB,IAAI,CAACmB,GAAG,CAAC3D,MAAM,CAAC4D,MAAM,EAAE,EAAE;cAC3C,CAAE;cAAA3F,QAAA,EAEDnD,YAAY,CAACmD,QAAQ;YAAC,CACnB;UAAC,CACoB;QAAC,CACpB;MAAC,CACI;IAAC,CACV,CAAC;EAEjB;;EAEA;EACA;EACA,IAAI,CAACwC,SAAS,EAAE,OAAO,IAAI;EAE3B,oBACEtF,IAAA,CAACR,WAAW;IAAAsD,QAAA,eAGV9C,IAAA,CAACoB,kBAAkB,CAACwC,QAAQ;MAACC,KAAK,EAAEtC,OAAQ;MAAAuB,QAAA,eAC1C5C,KAAA,CAACjC,IAAI;QAACmG,SAAS,EAAC,8BAA8B;QAAAtB,QAAA,gBAM9C5C,KAAA,CAAC7B,QAAQ,CAACJ,IAAI;UAACiK,KAAK,EAAE,CAACnK,UAAU,CAAC2K,YAAY,EAAEzB,aAAa,CAAE;UAAAnE,QAAA,gBAG7D9C,IAAA,CAACP,KAAK;YAAC+E,IAAI,EAAEA;UAAK,CAAE,CAAC,eACrBxE,IAAA,CAAClC,SAAS;YACR6K,kBAAkB,EAAC,aAAa;YAChCvE,SAAS,EAAC,QAAQ;YAClBL,OAAO,EAAEM,WAAW,GAAGgB,KAAK,GAAGpD;UAAU,CAC1C,CAAC;QAAA,CACW,CAAC,eAChBjC,IAAA,CAAC5B,eAAe;UAACwK,OAAO,EAAEvC,GAAI;UAAAvD,QAAA,eAC5B9C,IAAA,CAAC3B,QAAQ,CAACJ,IAAI;YACZ;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;YACY4K,QAAQ,EAAEjE,aAAa,GAAGrG,MAAM,CAAC6B,QAAQ,CAAC,GAAG,CAAC,GAAG6B,SAAU;YAC3D6G,wBAAwB;YACxB1E,SAAS,EAAEvD,aAAa,CAAC;cAAEG,QAAQ;cAAEoD;YAAU,CAAC,CAAE;YAAA,GAC9CH,KAAK;YACT;YACA;YACA;YACA;YACAiE,KAAK,EAAE,CACLnB,UAAU;YACV;YACA;YACA;YACA;cAAEwB,aAAa,EAAEvH,QAAQ,GAAG,EAAE,GAAGqG,IAAI,CAACmB,GAAG,CAAC3D,MAAM,CAAC4D,MAAM,EAAE,EAAE;YAAE,CAAC,EAC9DrB,WAAW,KAAKnF,SAAS,GAAG,IAAI,GAAG;cAAEG,MAAM,EAAEgF;YAAY,CAAC,EAC1DnD,KAAK,CAACiE,KAAK,CACX;YAAApF,QAAA,eAEF5C,KAAA,CAAC0C,mBAAmB,CAACgB,QAAQ;cAACC,KAAK,EAAE2D,OAAQ;cAAA1E,QAAA,GAC1CyB,WAAW,gBACVvE,IAAA,CAAC/B,IAAI;gBAACmG,SAAS,EAAC,kBAAkB;gBAAAtB,QAAA,eAChC9C,IAAA,CAAC/B,IAAI;kBAACmG,SAAS,EAAC;gBAA8C,CAAE;cAAC,CAC7D,CAAC,GACL,IAAI,EACPzE,YAAY,CAACmD,QAAQ,CAAC,EAatBwB,SAAS,gBACRtE,IAAA,CAAClC,SAAS;gBACRiL,iBAAiB,EAAC,QAAQ;gBAC1BJ,kBAAkB,EAAC,OAAO;gBAC1B5E,OAAO,EAAEsB,KAAM;gBACf2D,OAAO,EAAE,CAAE;gBACX5E,SAAS,EAAC,uGAAuG;gBAAAtB,QAAA,eAEjH9C,IAAA,CAACT,KAAK;kBACJkF,IAAI,EAAE,EAAG;kBACTnC,KAAK,EAAE,OAAOyC,SAAS,KAAK,QAAQ,GAAGA,SAAS,GAAG9C;gBAAU,CAC9D;cAAC,CACO,CAAC,GACV,IAAI;YAAA,CACoB;UAAC,CAClB;QAAC,CACD,CAAC;MAAA,CACZ;IAAC,CACoB;EAAC,CACnB,CAAC;AAElB;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASgH,iBAAiBA,CAAC;EACzB7E,SAAS;EACT8E,KAAK;EACLC,WAAW;EACXrG,QAAQ;EACR,GAAGmB;AACmB,CAAC,EAAE;EACzB,oBACE/D,KAAA,CAACjC,IAAI;IAACmG,SAAS,EAAEvE,EAAE,CAAC,kBAAkB,EAAEuE,SAAS,CAAE;IAAA,GAAKH,KAAK;IAAAnB,QAAA,GAC1DnD,YAAY,CAACuJ,KAAK,EAAGE,IAAI,iBACxBpJ,IAAA,CAACN,IAAI;MAAC+E,IAAI,EAAC,IAAI;MAAC4E,MAAM,EAAC,UAAU;MAAAvG,QAAA,EAC9BsG;IAAI,CACD,CACP,CAAC,EACDzJ,YAAY,CAACwJ,WAAW,EAAGC,IAAI,iBAC9BpJ,IAAA,CAACN,IAAI;MAAC+E,IAAI,EAAC,IAAI;MAAC6E,KAAK;MAAAxG,QAAA,EAClBsG;IAAI,CACD,CACP,CAAC,EACDzJ,YAAY,CAACmD,QAAQ,CAAC;EAAA,CACnB,CAAC;AAEX;AACAmG,iBAAiB,CAACM,WAAW,GAAG,oBAAoB;AAQpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,eAAeA,CAAC;EACvBpF,SAAS;EACTtB,QAAQ;EACR2G,QAAQ;EACR,GAAGxF;AACiB,CAAC,EAAE;EACvB,MAAMuD,OAAO,GAAG/J,UAAU,CAACmF,mBAAmB,CAAC;EAE/ClF,SAAS,CAAC,MAAM;IACd,IAAI,CAAC8J,OAAO,EAAE;IACdA,OAAO,CAACpC,aAAa,CAACvB,KAAK,GAAG,IAAI;IAClC,OAAO,MAAM;MACX2D,OAAO,CAACpC,aAAa,CAACvB,KAAK,GAAG,KAAK;MACnC2D,OAAO,CAACrC,YAAY,CAACtB,KAAK,GAAG,CAAC;IAChC,CAAC;EACH,CAAC,EAAE,CAAC2D,OAAO,CAAC,CAAC;;EAEb;AACF;AACA;AACA;AACA;AACA;EACE,MAAMrC,YAAY,GAAGqC,OAAO,EAAErC,YAAY;EAE1C,MAAMuE,OAAO,GAAG/K,wBAAwB,CAAE+H,KAAK,IAAK;IAClD,IAAIvB,YAAY,EAAEA,YAAY,CAACtB,KAAK,GAAG6C,KAAK,CAACiD,aAAa,CAACC,CAAC;EAC9D,CAAC,CAAC;EAEF,MAAMC,IAAI,gBACR7J,IAAA,CAAC3B,QAAQ,CAACyL,UAAU;IAClBL,QAAQ,EAAEC,OAAQ;IAClBK,mBAAmB,EAAE,EAAG;IACxBC,4BAA4B,EAAE,KAAM;IACpC5F,SAAS,EAAEvE,EAAE,CAAC,QAAQ,EAAEuE,SAAS,CAAE;IAAA,GAC/BH,KAAK;IAAAnB,QAAA,EAERnD,YAAY,CAACmD,QAAQ;EAAC,CACJ,CACtB;;EAED;AACF;AACA;AACA;AACA;EACE,IAAI,CAAC0E,OAAO,EAAE,OAAOqC,IAAI;EACzB,oBAAO7J,IAAA,CAAC5B,eAAe;IAACwK,OAAO,EAAEpB,OAAO,CAACvC,aAAc;IAAAnC,QAAA,EAAE+G;EAAI,CAAkB,CAAC;AAClF;AACAL,eAAe,CAACD,WAAW,GAAG,kBAAkB;AAOhD;AACA;AACA;AACA;AACA;AACA,SAASU,iBAAiBA,CAAC;EACzB7F,SAAS;EACTtB,QAAQ;EACR,GAAGmB;AACmB,CAAC,EAAE;EACzB,oBACEjE,IAAA,CAAC/B,IAAI;IACHmG,SAAS,EAAEvE,EAAE,CAAC,mCAAmC,EAAEuE,SAAS,CAAE;IAAA,GAC1DH,KAAK;IAAAnB,QAAA,EAERnD,YAAY,CAACmD,QAAQ;EAAC,CACnB,CAAC;AAEX;AACAmH,iBAAiB,CAACV,WAAW,GAAG,oBAAoB;AAEpD,OAAO,MAAM7B,WAAW,GAAGwC,MAAM,CAACC,MAAM,CAACtH,eAAe,EAAE;EACxDuH,OAAO,EAAEtG,kBAAkB;EAC3BuG,OAAO,EAAElG,kBAAkB;EAC3BmG,MAAM,EAAErB,iBAAiB;EACzBsB,IAAI,EAAEf,eAAe;EACrBgB,MAAM,EAAEP;AACV,CAAC,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["cloneElement","createContext","forwardRef","isValidElement","useCallback","useContext","useEffect","useMemo","useRef","useState","Pressable","StyleSheet","useWindowDimensions","View","useCSSVariable","Gesture","GestureDetector","Animated","Extrapolation","FadeIn","cancelAnimation","interpolate","runOnJS","useAnimatedScrollHandler","useAnimatedStyle","useComposedEventHandler","useReducedMotion","useSharedValue","withSpring","withTiming","useSafeAreaInsets","tv","NativeHost","getComposeModifiers","getNativeUI","getSwiftUIModifiers","XIcon","ModalPortal","Scrim","Text","textChildren","useBackHandler","cn","impactKnock","jsx","_jsx","jsxs","_jsxs","SPRING","duration","dampingRatio","EXIT_SPRING","overshootClamping","DISMISS_DISTANCE","DISMISS_VELOCITY","project","velocity","decelerationRate","sheetVariants","base","variants","detached","false","true","defaultVariants","BottomSheetContext","useBottomSheet","component","context","Error","DETENT_FRACTION","half","full","NATIVE_DISMISS_MS","bottomSheetDetentHeight","snapPoints","screenHeight","length","undefined","first","fraction","height","nativeSheetSurface","color","swiftUI","presentationBackground","compose","background","NativeSheetContext","SheetSurfaceContext","BottomSheetRoot","children","open","onOpenChange","defaultOpen","native","nativeBackground","internalOpen","setInternalOpen","isControlled","resolvedOpen","setOpen","next","nativeUI","nativeSheet","Provider","value","BottomSheetTrigger","onPress","args","props","SIZE_FRACTION","BottomSheetContent","className","dismissible","showClose","showGrabber","blur","size","width","screenWidth","reducedMotion","insets","translateY","closeTint","popoverSurface","scrollGesture","Native","scrollOffset","hasScrollable","close","presented","setPresented","land","finished","nativePresented","setNativePresented","nativeOnScreen","nativeDismissing","nativeDismissTimer","openRef","current","endNativeDismissal","clearTimeout","setTimeout","onNativeDismiss","pan","Pan","activeOffsetY","simultaneousWithExternalGesture","onChange","event","changeY","onEnd","projected","velocityY","sheetStyle","transform","backdropStyle","opacity","CLAMP","sizedHeight","Math","min","top","surface","Host","BottomSheet","NativeBottomSheet","RNHostView","requested","modifiers","host","matchContents","ignoreSafeArea","style","position","isPresented","onDismiss","minHeight","paddingBottom","max","bottom","absoluteFill","accessibilityLabel","gesture","entering","accessibilityViewIsModal","accessibilityRole","hitSlop","BottomSheetHeader","title","description","text","weight","muted","displayName","BottomSheetBody","onScroll","ref","handler","contentOffset","y","composed","body","ScrollView","scrollEventThrottle","showsVerticalScrollIndicator","BottomSheetFooter","Object","assign","Trigger","Content","Header","Body","Footer"],"sourceRoot":"../../../../src","sources":["components/bottom-sheet/index.tsx"],"mappings":"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","ignoreList":[]}
|