react-native-ai-animations 0.0.0-stage → 0.8.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.
Files changed (125) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +226 -2
  3. package/lib/module/brand/index.js +4 -0
  4. package/lib/module/brand/index.js.map +1 -0
  5. package/lib/module/brand/spinning-mark.js +96 -0
  6. package/lib/module/brand/spinning-mark.js.map +1 -0
  7. package/lib/module/chat/effort-bar.js +853 -0
  8. package/lib/module/chat/effort-bar.js.map +1 -0
  9. package/lib/module/chat/index.js +8 -0
  10. package/lib/module/chat/index.js.map +1 -0
  11. package/lib/module/chat/question-card.js +720 -0
  12. package/lib/module/chat/question-card.js.map +1 -0
  13. package/lib/module/chat/reasoning.js +38 -0
  14. package/lib/module/chat/reasoning.js.map +1 -0
  15. package/lib/module/chat/status-row.js +140 -0
  16. package/lib/module/chat/status-row.js.map +1 -0
  17. package/lib/module/chat/thinking-block.js +255 -0
  18. package/lib/module/chat/thinking-block.js.map +1 -0
  19. package/lib/module/index.js +5 -0
  20. package/lib/module/index.js.map +1 -0
  21. package/lib/module/internal/color.js +15 -0
  22. package/lib/module/internal/color.js.map +1 -0
  23. package/lib/module/internal/use-elapsed.js +20 -0
  24. package/lib/module/internal/use-elapsed.js.map +1 -0
  25. package/lib/module/package.json +1 -0
  26. package/lib/module/skia/dot-orb.js +256 -0
  27. package/lib/module/skia/dot-orb.js.map +1 -0
  28. package/lib/module/skia/index.js +8 -0
  29. package/lib/module/skia/index.js.map +1 -0
  30. package/lib/module/skia/liquid-orb.js +303 -0
  31. package/lib/module/skia/liquid-orb.js.map +1 -0
  32. package/lib/module/skia/matrix-orb.js +272 -0
  33. package/lib/module/skia/matrix-orb.js.map +1 -0
  34. package/lib/module/skia/media-generating.js +524 -0
  35. package/lib/module/skia/media-generating.js.map +1 -0
  36. package/lib/module/skia/voice-wave.js +278 -0
  37. package/lib/module/skia/voice-wave.js.map +1 -0
  38. package/lib/module/text/index.js +6 -0
  39. package/lib/module/text/index.js.map +1 -0
  40. package/lib/module/text/shimmer-text.js +122 -0
  41. package/lib/module/text/shimmer-text.js.map +1 -0
  42. package/lib/module/text/spoken-text.js +85 -0
  43. package/lib/module/text/spoken-text.js.map +1 -0
  44. package/lib/module/text/streaming-text.js +135 -0
  45. package/lib/module/text/streaming-text.js.map +1 -0
  46. package/lib/module/theme/index.js +5 -0
  47. package/lib/module/theme/index.js.map +1 -0
  48. package/lib/module/theme/palette.js +45 -0
  49. package/lib/module/theme/palette.js.map +1 -0
  50. package/lib/module/theme/provider.js +65 -0
  51. package/lib/module/theme/provider.js.map +1 -0
  52. package/lib/typescript/package.json +1 -0
  53. package/lib/typescript/src/brand/index.d.ts +2 -0
  54. package/lib/typescript/src/brand/index.d.ts.map +1 -0
  55. package/lib/typescript/src/brand/spinning-mark.d.ts +21 -0
  56. package/lib/typescript/src/brand/spinning-mark.d.ts.map +1 -0
  57. package/lib/typescript/src/chat/effort-bar.d.ts +42 -0
  58. package/lib/typescript/src/chat/effort-bar.d.ts.map +1 -0
  59. package/lib/typescript/src/chat/index.d.ts +6 -0
  60. package/lib/typescript/src/chat/index.d.ts.map +1 -0
  61. package/lib/typescript/src/chat/question-card.d.ts +73 -0
  62. package/lib/typescript/src/chat/question-card.d.ts.map +1 -0
  63. package/lib/typescript/src/chat/reasoning.d.ts +20 -0
  64. package/lib/typescript/src/chat/reasoning.d.ts.map +1 -0
  65. package/lib/typescript/src/chat/status-row.d.ts +20 -0
  66. package/lib/typescript/src/chat/status-row.d.ts.map +1 -0
  67. package/lib/typescript/src/chat/thinking-block.d.ts +35 -0
  68. package/lib/typescript/src/chat/thinking-block.d.ts.map +1 -0
  69. package/lib/typescript/src/index.d.ts +3 -0
  70. package/lib/typescript/src/index.d.ts.map +1 -0
  71. package/lib/typescript/src/internal/color.d.ts +2 -0
  72. package/lib/typescript/src/internal/color.d.ts.map +1 -0
  73. package/lib/typescript/src/internal/use-elapsed.d.ts +3 -0
  74. package/lib/typescript/src/internal/use-elapsed.d.ts.map +1 -0
  75. package/lib/typescript/src/skia/dot-orb.d.ts +16 -0
  76. package/lib/typescript/src/skia/dot-orb.d.ts.map +1 -0
  77. package/lib/typescript/src/skia/index.d.ts +6 -0
  78. package/lib/typescript/src/skia/index.d.ts.map +1 -0
  79. package/lib/typescript/src/skia/liquid-orb.d.ts +20 -0
  80. package/lib/typescript/src/skia/liquid-orb.d.ts.map +1 -0
  81. package/lib/typescript/src/skia/matrix-orb.d.ts +12 -0
  82. package/lib/typescript/src/skia/matrix-orb.d.ts.map +1 -0
  83. package/lib/typescript/src/skia/media-generating.d.ts +59 -0
  84. package/lib/typescript/src/skia/media-generating.d.ts.map +1 -0
  85. package/lib/typescript/src/skia/voice-wave.d.ts +17 -0
  86. package/lib/typescript/src/skia/voice-wave.d.ts.map +1 -0
  87. package/lib/typescript/src/text/index.d.ts +4 -0
  88. package/lib/typescript/src/text/index.d.ts.map +1 -0
  89. package/lib/typescript/src/text/shimmer-text.d.ts +13 -0
  90. package/lib/typescript/src/text/shimmer-text.d.ts.map +1 -0
  91. package/lib/typescript/src/text/spoken-text.d.ts +15 -0
  92. package/lib/typescript/src/text/spoken-text.d.ts.map +1 -0
  93. package/lib/typescript/src/text/streaming-text.d.ts +16 -0
  94. package/lib/typescript/src/text/streaming-text.d.ts.map +1 -0
  95. package/lib/typescript/src/theme/index.d.ts +3 -0
  96. package/lib/typescript/src/theme/index.d.ts.map +1 -0
  97. package/lib/typescript/src/theme/palette.d.ts +33 -0
  98. package/lib/typescript/src/theme/palette.d.ts.map +1 -0
  99. package/lib/typescript/src/theme/provider.d.ts +13 -0
  100. package/lib/typescript/src/theme/provider.d.ts.map +1 -0
  101. package/package.json +133 -4
  102. package/src/brand/index.ts +5 -0
  103. package/src/brand/spinning-mark.tsx +118 -0
  104. package/src/chat/effort-bar.tsx +748 -0
  105. package/src/chat/index.ts +45 -0
  106. package/src/chat/question-card.tsx +649 -0
  107. package/src/chat/reasoning.ts +30 -0
  108. package/src/chat/status-row.tsx +127 -0
  109. package/src/chat/thinking-block.tsx +250 -0
  110. package/src/index.ts +2 -0
  111. package/src/internal/color.ts +18 -0
  112. package/src/internal/use-elapsed.ts +21 -0
  113. package/src/skia/dot-orb.tsx +248 -0
  114. package/src/skia/index.ts +34 -0
  115. package/src/skia/liquid-orb.tsx +274 -0
  116. package/src/skia/matrix-orb.tsx +337 -0
  117. package/src/skia/media-generating.tsx +389 -0
  118. package/src/skia/voice-wave.tsx +215 -0
  119. package/src/text/index.ts +3 -0
  120. package/src/text/shimmer-text.tsx +140 -0
  121. package/src/text/spoken-text.tsx +82 -0
  122. package/src/text/streaming-text.tsx +144 -0
  123. package/src/theme/index.ts +11 -0
  124. package/src/theme/palette.ts +62 -0
  125. package/src/theme/provider.tsx +54 -0
@@ -0,0 +1,524 @@
1
+ "use strict";
2
+
3
+ import { Blur, Canvas, Circle, FractalNoise, Group, LinearGradient, Paint, Rect, useClock, vec } from "@shopify/react-native-skia";
4
+ import { useEffect, useState } from "react";
5
+ import { Text, View } from "react-native";
6
+ import Animated, { cancelAnimation, Easing, FadeIn, LinearTransition, useAnimatedStyle, useDerivedValue, useReducedMotion, useSharedValue, withRepeat, withSequence, withTiming } from "react-native-reanimated";
7
+ import { withAlpha } from "../internal/color.js";
8
+ import { formatElapsed, useElapsed } from "../internal/use-elapsed.js";
9
+ import { ShimmerText } from "../text/shimmer-text.js";
10
+ import { moodstoneSwatches } from "../theme/palette.js";
11
+ import { useMotionPalette } from "../theme/provider.js";
12
+ import { DotOrb } from "./dot-orb.js";
13
+ import { MatrixOrb } from "./matrix-orb.js";
14
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
+ const EASE_IN_OUT = Easing.inOut(Easing.quad);
16
+ const HEADER_TEXT = {
17
+ fontSize: 14,
18
+ lineHeight: 20,
19
+ fontWeight: "500"
20
+ };
21
+ const CHIP_TEXT = {
22
+ fontSize: 13,
23
+ lineHeight: 18,
24
+ fontWeight: "600"
25
+ };
26
+ const DEFAULT_BLOBS = [moodstoneSwatches.lilac, moodstoneSwatches.sky, moodstoneSwatches.blossom];
27
+ const SWEEP_MS = 1400;
28
+ const BAND = 0.6;
29
+ const TRACK = 2;
30
+ const SEGMENT = 0.28;
31
+ const ORBITS = [{
32
+ x: 0.3,
33
+ y: 0.35,
34
+ rx: 0.22,
35
+ ry: 0.18,
36
+ speed: 0.00042,
37
+ phase: 0
38
+ }, {
39
+ x: 0.68,
40
+ y: 0.6,
41
+ rx: 0.2,
42
+ ry: 0.24,
43
+ speed: -0.00035,
44
+ phase: 2.1
45
+ }, {
46
+ x: 0.45,
47
+ y: 0.75,
48
+ rx: 0.26,
49
+ ry: 0.14,
50
+ speed: 0.00028,
51
+ phase: 4.2
52
+ }];
53
+ export const MEDIA_GENERATING_SIZES = {
54
+ "1024x1024": {
55
+ width: 1024,
56
+ height: 1024
57
+ },
58
+ "1024x1536": {
59
+ width: 1024,
60
+ height: 1536
61
+ },
62
+ "1536x1024": {
63
+ width: 1536,
64
+ height: 1024
65
+ }
66
+ };
67
+ const DEFAULT_LABELS = {
68
+ queued: "Queued",
69
+ generating: "Generating"
70
+ };
71
+ export function MediaGenerating({
72
+ variant = "blobs",
73
+ chrome = "header",
74
+ label,
75
+ status,
76
+ labels,
77
+ progress,
78
+ meta,
79
+ startedAt,
80
+ showTimer = true,
81
+ formatTimer = formatElapsed,
82
+ size = "1024x1024",
83
+ aspectRatio,
84
+ width = "100%",
85
+ maxHeight = 360,
86
+ radius = 16,
87
+ dotColor,
88
+ accentColor,
89
+ blobColors = DEFAULT_BLOBS,
90
+ grain = true,
91
+ sweep,
92
+ dots = 14,
93
+ scatter = false,
94
+ cover,
95
+ icon,
96
+ textStyle,
97
+ colors,
98
+ style
99
+ }) {
100
+ const palette = useMotionPalette(colors);
101
+ const reduceMotion = useReducedMotion();
102
+ const seconds = useElapsed(startedAt, true);
103
+ const copy = {
104
+ ...DEFAULT_LABELS,
105
+ ...labels
106
+ };
107
+ const title = status ? copy[status] : label ?? copy.generating;
108
+ const headline = chrome === "header" && label && status ? label : title;
109
+ const percent = progress === undefined ? undefined : Math.round(Math.min(1, Math.max(0, progress)) * 100);
110
+ const chip = withAlpha(palette.background, 0.72);
111
+ const showSweep = sweep ?? variant === "blobs";
112
+ const timer = showTimer && startedAt !== undefined ? formatTimer(seconds) : null;
113
+ const dimensions = MEDIA_GENERATING_SIZES[size] ?? MEDIA_GENERATING_SIZES["1024x1024"];
114
+ const ratio = aspectRatio ?? dimensions.width / dimensions.height;
115
+ const field = cover ?? (variant === "blobs" ? /*#__PURE__*/_jsx(BlobField, {
116
+ colors: blobColors,
117
+ grain: grain,
118
+ sweep: showSweep && !reduceMotion,
119
+ sweepColor: palette.text,
120
+ still: reduceMotion
121
+ }) : variant === "matrix" ? /*#__PURE__*/_jsx(MatrixOrb, {
122
+ cover: true,
123
+ dots: dots,
124
+ color: dotColor ?? palette.accent,
125
+ state: status === "queued" ? "idle" : "thinking"
126
+ }) : /*#__PURE__*/_jsx(DotOrb, {
127
+ variant: variant,
128
+ color: dotColor ?? palette.text,
129
+ accent: accentColor ?? palette.accent,
130
+ inset: 0.09,
131
+ scatter: scatter
132
+ }));
133
+ return /*#__PURE__*/_jsxs(View, {
134
+ accessible: true,
135
+ accessibilityRole: "progressbar",
136
+ accessibilityLabel: percent === undefined ? headline : `${headline} ${percent}%`,
137
+ accessibilityValue: percent === undefined ? undefined : {
138
+ min: 0,
139
+ max: 100,
140
+ now: percent
141
+ },
142
+ style: [{
143
+ width,
144
+ gap: 10
145
+ }, style],
146
+ children: [chrome === "header" ? /*#__PURE__*/_jsxs(View, {
147
+ style: {
148
+ flexDirection: "row",
149
+ alignItems: "center",
150
+ gap: 8
151
+ },
152
+ children: [icon, reduceMotion ? /*#__PURE__*/_jsx(Text, {
153
+ style: [HEADER_TEXT, textStyle, {
154
+ color: palette.textSecondary
155
+ }],
156
+ children: headline
157
+ }) : /*#__PURE__*/_jsx(ShimmerText, {
158
+ text: headline,
159
+ activeColor: palette.text,
160
+ mutedColor: palette.textTertiary,
161
+ textStyle: [HEADER_TEXT, textStyle]
162
+ }), timer ? /*#__PURE__*/_jsx(Text, {
163
+ style: [HEADER_TEXT, textStyle, {
164
+ color: palette.textTertiary,
165
+ fontVariant: ["tabular-nums"]
166
+ }],
167
+ children: timer
168
+ }) : null]
169
+ }) : null, /*#__PURE__*/_jsxs(View, {
170
+ style: {
171
+ width: "100%",
172
+ aspectRatio: ratio,
173
+ maxWidth: maxHeight * ratio,
174
+ maxHeight,
175
+ borderRadius: radius,
176
+ borderCurve: "continuous",
177
+ overflow: "hidden"
178
+ },
179
+ children: [/*#__PURE__*/_jsx(View, {
180
+ style: {
181
+ position: "absolute",
182
+ top: 0,
183
+ left: 0,
184
+ right: 0,
185
+ bottom: 0
186
+ },
187
+ children: field
188
+ }), chrome === "overlay" ? /*#__PURE__*/_jsxs(View, {
189
+ style: {
190
+ position: "absolute",
191
+ top: 12,
192
+ left: 12,
193
+ right: 12,
194
+ flexDirection: "row",
195
+ alignItems: "center",
196
+ gap: 8
197
+ },
198
+ children: [/*#__PURE__*/_jsxs(Animated.View, {
199
+ layout: reduceMotion ? undefined : LinearTransition.duration(260).easing(EASE_IN_OUT),
200
+ style: {
201
+ flexDirection: "row",
202
+ alignItems: "center",
203
+ gap: 6,
204
+ paddingHorizontal: 10,
205
+ height: 26,
206
+ borderRadius: 13,
207
+ backgroundColor: chip
208
+ },
209
+ children: [icon, /*#__PURE__*/_jsx(PulseLabel, {
210
+ text: title,
211
+ animate: !reduceMotion,
212
+ textStyle: [CHIP_TEXT, textStyle, {
213
+ color: palette.text
214
+ }]
215
+ }, title), timer ? /*#__PURE__*/_jsx(Text, {
216
+ style: [CHIP_TEXT, textStyle, {
217
+ color: palette.textSecondary,
218
+ fontVariant: ["tabular-nums"]
219
+ }],
220
+ children: timer
221
+ }) : null]
222
+ }), /*#__PURE__*/_jsx(View, {
223
+ style: {
224
+ flex: 1
225
+ }
226
+ }), percent !== undefined ? /*#__PURE__*/_jsx(Animated.View, {
227
+ entering: reduceMotion ? undefined : FadeIn.duration(260).easing(EASE_IN_OUT),
228
+ style: {
229
+ paddingHorizontal: 10,
230
+ height: 26,
231
+ borderRadius: 13,
232
+ justifyContent: "center",
233
+ backgroundColor: chip
234
+ },
235
+ children: /*#__PURE__*/_jsx(Text, {
236
+ style: [CHIP_TEXT, textStyle, {
237
+ color: palette.text,
238
+ fontVariant: ["tabular-nums"]
239
+ }],
240
+ children: `${percent}%`
241
+ })
242
+ }) : null]
243
+ }) : null, meta ? /*#__PURE__*/_jsx(View, {
244
+ style: {
245
+ position: "absolute",
246
+ left: 12,
247
+ bottom: 14,
248
+ paddingHorizontal: 10,
249
+ height: 24,
250
+ borderRadius: 12,
251
+ justifyContent: "center",
252
+ backgroundColor: chip
253
+ },
254
+ children: /*#__PURE__*/_jsx(Text, {
255
+ style: [CHIP_TEXT, textStyle, {
256
+ color: palette.textSecondary
257
+ }],
258
+ children: meta
259
+ })
260
+ }) : null, /*#__PURE__*/_jsx(ProgressTrack, {
261
+ progress: progress,
262
+ active: status === "generating" || chrome === "overlay" && status === undefined,
263
+ animate: !reduceMotion,
264
+ color: palette.accent,
265
+ track: withAlpha(palette.text, 0.12)
266
+ })]
267
+ })]
268
+ });
269
+ }
270
+ export function ImageGenerating({
271
+ header = true,
272
+ label = "Creating image",
273
+ width = "88%",
274
+ ...props
275
+ }) {
276
+ return /*#__PURE__*/_jsx(MediaGenerating, {
277
+ chrome: header ? "header" : "none",
278
+ label: label,
279
+ width: width,
280
+ ...props
281
+ });
282
+ }
283
+ export function VideoGenerating({
284
+ variant = "matrix",
285
+ chrome = "overlay",
286
+ size,
287
+ aspectRatio = size ? undefined : 16 / 9,
288
+ ...props
289
+ }) {
290
+ return /*#__PURE__*/_jsx(MediaGenerating, {
291
+ variant: variant,
292
+ chrome: chrome,
293
+ size: size,
294
+ aspectRatio: aspectRatio,
295
+ ...props
296
+ });
297
+ }
298
+ function BlobField({
299
+ colors,
300
+ grain,
301
+ sweep,
302
+ sweepColor,
303
+ still
304
+ }) {
305
+ const size = useSharedValue({
306
+ width: 0,
307
+ height: 0
308
+ });
309
+ const clock = useClock();
310
+ const time = useDerivedValue(() => still ? 0 : clock.value, [still]);
311
+ const canvasWidth = useDerivedValue(() => size.value.width);
312
+ const canvasHeight = useDerivedValue(() => size.value.height);
313
+ return /*#__PURE__*/_jsxs(Canvas, {
314
+ onSize: size,
315
+ style: {
316
+ flex: 1
317
+ },
318
+ children: [/*#__PURE__*/_jsx(Group, {
319
+ layer: /*#__PURE__*/_jsx(Paint, {
320
+ children: /*#__PURE__*/_jsx(Blur, {
321
+ blur: 36
322
+ })
323
+ }),
324
+ children: colors.slice(0, ORBITS.length).map((color, index) => /*#__PURE__*/_jsx(Blob, {
325
+ index: index,
326
+ color: withAlpha(color, 0.55),
327
+ size: size,
328
+ time: time
329
+ }, index))
330
+ }), grain ? /*#__PURE__*/_jsx(Rect, {
331
+ x: 0,
332
+ y: 0,
333
+ width: canvasWidth,
334
+ height: canvasHeight,
335
+ opacity: 0.07,
336
+ children: /*#__PURE__*/_jsx(FractalNoise, {
337
+ freqX: 0.9,
338
+ freqY: 0.9,
339
+ octaves: 3
340
+ })
341
+ }) : null, sweep ? /*#__PURE__*/_jsx(SweepBand, {
342
+ size: size,
343
+ time: time,
344
+ color: sweepColor
345
+ }) : null]
346
+ });
347
+ }
348
+ function Blob({
349
+ index,
350
+ color,
351
+ size,
352
+ time
353
+ }) {
354
+ const orbit = ORBITS[index];
355
+ const cx = useDerivedValue(() => size.value.width * (orbit.x + orbit.rx * Math.sin(time.value * orbit.speed + orbit.phase)));
356
+ const cy = useDerivedValue(() => size.value.height * (orbit.y + orbit.ry * Math.cos(time.value * orbit.speed * 1.3 + orbit.phase)));
357
+ const r = useDerivedValue(() => Math.min(size.value.width, size.value.height) * (0.34 + 0.04 * Math.sin(time.value * 0.0009 + orbit.phase)));
358
+ return /*#__PURE__*/_jsx(Circle, {
359
+ cx: cx,
360
+ cy: cy,
361
+ r: r,
362
+ color: color
363
+ });
364
+ }
365
+ function SweepBand({
366
+ size,
367
+ time,
368
+ color
369
+ }) {
370
+ const start = useDerivedValue(() => {
371
+ const progress = time.value % SWEEP_MS / SWEEP_MS;
372
+ const w = size.value.width;
373
+ return vec(-w * BAND + progress * w * (1 + BAND), 0);
374
+ });
375
+ const end = useDerivedValue(() => vec(start.value.x + size.value.width * BAND, 0));
376
+ const w = useDerivedValue(() => size.value.width);
377
+ const h = useDerivedValue(() => size.value.height);
378
+ return /*#__PURE__*/_jsx(Rect, {
379
+ x: 0,
380
+ y: 0,
381
+ width: w,
382
+ height: h,
383
+ children: /*#__PURE__*/_jsx(LinearGradient, {
384
+ start: start,
385
+ end: end,
386
+ colors: [withAlpha(color, 0), withAlpha(color, 0.1), withAlpha(color, 0)]
387
+ })
388
+ });
389
+ }
390
+ function PulseLabel({
391
+ text,
392
+ animate,
393
+ textStyle
394
+ }) {
395
+ const opacity = useSharedValue(1);
396
+ useEffect(() => {
397
+ if (!animate) return;
398
+ const curve = Easing.inOut(Easing.ease);
399
+ opacity.value = withRepeat(withSequence(withTiming(0.45, {
400
+ duration: 800,
401
+ easing: curve
402
+ }), withTiming(1, {
403
+ duration: 800,
404
+ easing: curve
405
+ })), -1, false);
406
+ return () => cancelAnimation(opacity);
407
+ }, [animate, opacity]);
408
+ const animatedStyle = useAnimatedStyle(() => ({
409
+ opacity: opacity.value
410
+ }));
411
+ return /*#__PURE__*/_jsx(Animated.View, {
412
+ entering: animate ? FadeIn.duration(260).easing(EASE_IN_OUT) : undefined,
413
+ children: /*#__PURE__*/_jsx(Animated.Text, {
414
+ style: [textStyle, animatedStyle],
415
+ children: text
416
+ })
417
+ });
418
+ }
419
+ function ProgressTrack({
420
+ progress,
421
+ active,
422
+ animate,
423
+ color,
424
+ track
425
+ }) {
426
+ const [trackWidth, setTrackWidth] = useState(0);
427
+ const fill = useSharedValue(progress ?? 0);
428
+ const sweep = useSharedValue(0);
429
+ const determinate = progress !== undefined;
430
+ useEffect(() => {
431
+ if (!determinate) return;
432
+ const target = Math.min(1, Math.max(0, progress ?? 0));
433
+ fill.value = animate ? withTiming(target, {
434
+ duration: 420,
435
+ easing: Easing.out(Easing.cubic)
436
+ }) : target;
437
+ }, [animate, determinate, fill, progress]);
438
+ useEffect(() => {
439
+ if (determinate || !active || !animate) {
440
+ cancelAnimation(sweep);
441
+ return;
442
+ }
443
+ sweep.value = 0;
444
+ sweep.value = withRepeat(withTiming(1, {
445
+ duration: 1600,
446
+ easing: Easing.inOut(Easing.cubic)
447
+ }), -1, false);
448
+ return () => cancelAnimation(sweep);
449
+ }, [active, animate, determinate, sweep]);
450
+ const fillStyle = useAnimatedStyle(() => {
451
+ if (determinate) return {
452
+ width: trackWidth * fill.value,
453
+ transform: [{
454
+ translateX: 0
455
+ }]
456
+ };
457
+ const segment = trackWidth * SEGMENT;
458
+ return {
459
+ width: segment,
460
+ transform: [{
461
+ translateX: -segment + sweep.value * (trackWidth + segment)
462
+ }]
463
+ };
464
+ });
465
+ const handleLayout = event => setTrackWidth(event.nativeEvent.layout.width);
466
+ if (!active && !determinate) return null;
467
+ return /*#__PURE__*/_jsx(Animated.View, {
468
+ entering: animate ? FadeIn.duration(260).easing(EASE_IN_OUT) : undefined,
469
+ onLayout: handleLayout,
470
+ style: {
471
+ position: "absolute",
472
+ left: 0,
473
+ right: 0,
474
+ bottom: 0,
475
+ height: TRACK,
476
+ backgroundColor: track,
477
+ overflow: "hidden"
478
+ },
479
+ children: /*#__PURE__*/_jsx(Animated.View, {
480
+ style: [{
481
+ height: TRACK,
482
+ backgroundColor: color,
483
+ borderRadius: TRACK / 2
484
+ }, fillStyle]
485
+ })
486
+ });
487
+ }
488
+ export function MediaGeneratingBlobs(props) {
489
+ return /*#__PURE__*/_jsx(MediaGenerating, {
490
+ ...props,
491
+ variant: "blobs"
492
+ });
493
+ }
494
+ export function MediaGeneratingMatrix(props) {
495
+ return /*#__PURE__*/_jsx(MediaGenerating, {
496
+ ...props,
497
+ variant: "matrix"
498
+ });
499
+ }
500
+ export function MediaGeneratingOrbit(props) {
501
+ return /*#__PURE__*/_jsx(MediaGenerating, {
502
+ ...props,
503
+ variant: "orbit"
504
+ });
505
+ }
506
+ export function MediaGeneratingScan(props) {
507
+ return /*#__PURE__*/_jsx(MediaGenerating, {
508
+ ...props,
509
+ variant: "scan"
510
+ });
511
+ }
512
+ export function MediaGeneratingConstellation(props) {
513
+ return /*#__PURE__*/_jsx(MediaGenerating, {
514
+ ...props,
515
+ variant: "constellation"
516
+ });
517
+ }
518
+ export function MediaGeneratingHelix(props) {
519
+ return /*#__PURE__*/_jsx(MediaGenerating, {
520
+ ...props,
521
+ variant: "helix"
522
+ });
523
+ }
524
+ //# sourceMappingURL=media-generating.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Blur","Canvas","Circle","FractalNoise","Group","LinearGradient","Paint","Rect","useClock","vec","useEffect","useState","Text","View","Animated","cancelAnimation","Easing","FadeIn","LinearTransition","useAnimatedStyle","useDerivedValue","useReducedMotion","useSharedValue","withRepeat","withSequence","withTiming","withAlpha","formatElapsed","useElapsed","ShimmerText","moodstoneSwatches","useMotionPalette","DotOrb","MatrixOrb","jsx","_jsx","jsxs","_jsxs","EASE_IN_OUT","inOut","quad","HEADER_TEXT","fontSize","lineHeight","fontWeight","CHIP_TEXT","DEFAULT_BLOBS","lilac","sky","blossom","SWEEP_MS","BAND","TRACK","SEGMENT","ORBITS","x","y","rx","ry","speed","phase","MEDIA_GENERATING_SIZES","width","height","DEFAULT_LABELS","queued","generating","MediaGenerating","variant","chrome","label","status","labels","progress","meta","startedAt","showTimer","formatTimer","size","aspectRatio","maxHeight","radius","dotColor","accentColor","blobColors","grain","sweep","dots","scatter","cover","icon","textStyle","colors","style","palette","reduceMotion","seconds","copy","title","headline","percent","undefined","Math","round","min","max","chip","background","showSweep","timer","dimensions","ratio","field","BlobField","sweepColor","text","still","color","accent","state","inset","accessible","accessibilityRole","accessibilityLabel","accessibilityValue","now","gap","children","flexDirection","alignItems","textSecondary","activeColor","mutedColor","textTertiary","fontVariant","maxWidth","borderRadius","borderCurve","overflow","position","top","left","right","bottom","layout","duration","easing","paddingHorizontal","backgroundColor","PulseLabel","animate","flex","entering","justifyContent","ProgressTrack","active","track","ImageGenerating","header","props","VideoGenerating","clock","time","value","canvasWidth","canvasHeight","onSize","layer","blur","slice","length","map","index","Blob","opacity","freqX","freqY","octaves","SweepBand","orbit","cx","sin","cy","cos","r","start","w","end","h","curve","ease","animatedStyle","trackWidth","setTrackWidth","fill","determinate","target","out","cubic","fillStyle","transform","translateX","segment","handleLayout","event","nativeEvent","onLayout","MediaGeneratingBlobs","MediaGeneratingMatrix","MediaGeneratingOrbit","MediaGeneratingScan","MediaGeneratingConstellation","MediaGeneratingHelix"],"sourceRoot":"../../../src","sources":["skia/media-generating.tsx"],"mappings":"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","ignoreList":[]}