react-native-ai-animations 0.9.0 → 0.9.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 (67) hide show
  1. package/README.md +2 -0
  2. package/lib/module/chat/effort-bar.js +38 -27
  3. package/lib/module/chat/effort-bar.js.map +1 -1
  4. package/lib/module/chat/question-card.js +1 -1
  5. package/lib/module/chat/question-card.js.map +1 -1
  6. package/lib/module/chat/status-row.js +6 -4
  7. package/lib/module/chat/status-row.js.map +1 -1
  8. package/lib/module/chat/thinking-block.js +3 -2
  9. package/lib/module/chat/thinking-block.js.map +1 -1
  10. package/lib/module/internal/color.js +24 -9
  11. package/lib/module/internal/color.js.map +1 -1
  12. package/lib/module/internal/graphemes.js +38 -0
  13. package/lib/module/internal/graphemes.js.map +1 -0
  14. package/lib/module/internal/use-elapsed.js +2 -1
  15. package/lib/module/internal/use-elapsed.js.map +1 -1
  16. package/lib/module/internal/use-motion-clock.js +11 -0
  17. package/lib/module/internal/use-motion-clock.js.map +1 -0
  18. package/lib/module/skia/dot-orb.js +5 -4
  19. package/lib/module/skia/dot-orb.js.map +1 -1
  20. package/lib/module/skia/matrix-orb.js +6 -3
  21. package/lib/module/skia/matrix-orb.js.map +1 -1
  22. package/lib/module/skia/media-generating.js +4 -3
  23. package/lib/module/skia/media-generating.js.map +1 -1
  24. package/lib/module/skia/voice-wave.js +8 -3
  25. package/lib/module/skia/voice-wave.js.map +1 -1
  26. package/lib/module/text/shimmer-text.js +22 -3
  27. package/lib/module/text/shimmer-text.js.map +1 -1
  28. package/lib/module/text/spoken-text.js +6 -1
  29. package/lib/module/text/spoken-text.js.map +1 -1
  30. package/lib/module/text/streaming-text.js +3 -3
  31. package/lib/module/text/streaming-text.js.map +1 -1
  32. package/lib/typescript/src/chat/effort-bar.d.ts.map +1 -1
  33. package/lib/typescript/src/chat/status-row.d.ts +2 -1
  34. package/lib/typescript/src/chat/status-row.d.ts.map +1 -1
  35. package/lib/typescript/src/chat/thinking-block.d.ts.map +1 -1
  36. package/lib/typescript/src/internal/color.d.ts +4 -0
  37. package/lib/typescript/src/internal/color.d.ts.map +1 -1
  38. package/lib/typescript/src/internal/graphemes.d.ts +4 -0
  39. package/lib/typescript/src/internal/graphemes.d.ts.map +1 -0
  40. package/lib/typescript/src/internal/use-elapsed.d.ts.map +1 -1
  41. package/lib/typescript/src/internal/use-motion-clock.d.ts +3 -0
  42. package/lib/typescript/src/internal/use-motion-clock.d.ts.map +1 -0
  43. package/lib/typescript/src/skia/dot-orb.d.ts.map +1 -1
  44. package/lib/typescript/src/skia/matrix-orb.d.ts +3 -1
  45. package/lib/typescript/src/skia/matrix-orb.d.ts.map +1 -1
  46. package/lib/typescript/src/skia/media-generating.d.ts.map +1 -1
  47. package/lib/typescript/src/skia/voice-wave.d.ts +2 -2
  48. package/lib/typescript/src/skia/voice-wave.d.ts.map +1 -1
  49. package/lib/typescript/src/text/shimmer-text.d.ts.map +1 -1
  50. package/lib/typescript/src/text/spoken-text.d.ts.map +1 -1
  51. package/lib/typescript/src/text/streaming-text.d.ts.map +1 -1
  52. package/package.json +1 -1
  53. package/src/chat/effort-bar.tsx +40 -27
  54. package/src/chat/question-card.tsx +1 -1
  55. package/src/chat/status-row.tsx +7 -4
  56. package/src/chat/thinking-block.tsx +3 -2
  57. package/src/internal/color.ts +30 -15
  58. package/src/internal/graphemes.ts +40 -0
  59. package/src/internal/use-elapsed.ts +2 -1
  60. package/src/internal/use-motion-clock.ts +9 -0
  61. package/src/skia/dot-orb.tsx +5 -4
  62. package/src/skia/matrix-orb.tsx +7 -2
  63. package/src/skia/media-generating.tsx +3 -3
  64. package/src/skia/voice-wave.tsx +9 -4
  65. package/src/text/shimmer-text.tsx +25 -3
  66. package/src/text/spoken-text.tsx +5 -1
  67. package/src/text/streaming-text.tsx +6 -6
@@ -3,6 +3,7 @@
3
3
  import { useEffect, useMemo } from "react";
4
4
  import { Text, View } from "react-native";
5
5
  import Animated, { Easing, Extrapolation, interpolate, interpolateColor, useAnimatedStyle, useReducedMotion, useSharedValue, withDelay, withRepeat, withSequence, withTiming } from "react-native-reanimated";
6
+ import { isCjk, needsShaping, splitGraphemes } from "../internal/graphemes.js";
6
7
  import { jsx as _jsx } from "react/jsx-runtime";
7
8
  const DEFAULT_DURATION = 1400;
8
9
  const DEFAULT_HIGHLIGHT_WIDTH = 0.22;
@@ -27,19 +28,25 @@ export function ShimmerText({
27
28
  }) {
28
29
  const reduceMotion = useReducedMotion();
29
30
  const progress = useSharedValue(0);
31
+ const shaped = useMemo(() => needsShaping(text), [text]);
30
32
  const {
31
33
  words,
32
34
  total
33
35
  } = useMemo(() => {
34
- const characters = Array.from(text);
36
+ const characters = shaped ? [] : splitGraphemes(text);
35
37
  const groups = [];
36
38
  let current = [];
37
39
  characters.forEach((char, index) => {
40
+ const breakAfter = char === " " || isCjk(char);
41
+ if (isCjk(char) && current.length) {
42
+ groups.push(current);
43
+ current = [];
44
+ }
38
45
  current.push({
39
46
  char,
40
47
  index
41
48
  });
42
- if (char === " ") {
49
+ if (breakAfter) {
43
50
  groups.push(current);
44
51
  current = [];
45
52
  }
@@ -49,7 +56,7 @@ export function ShimmerText({
49
56
  words: groups,
50
57
  total: characters.length
51
58
  };
52
- }, [text]);
59
+ }, [shaped, text]);
53
60
  useEffect(() => {
54
61
  if (reduceMotion) return;
55
62
  progress.value = 0;
@@ -69,6 +76,18 @@ export function ShimmerText({
69
76
  children: text
70
77
  });
71
78
  }
79
+ if (shaped) {
80
+ return /*#__PURE__*/_jsx(ShimmerChar, {
81
+ char: text,
82
+ index: 1,
83
+ total: 3,
84
+ progress: progress,
85
+ activeColor: activeColor,
86
+ mutedColor: mutedColor,
87
+ textStyle: textStyle,
88
+ highlightWidth: Math.max(highlightWidth, 0.5)
89
+ });
90
+ }
72
91
  return /*#__PURE__*/_jsx(View, {
73
92
  accessible: true,
74
93
  accessibilityRole: "text",
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useMemo","Text","View","Animated","Easing","Extrapolation","interpolate","interpolateColor","useAnimatedStyle","useReducedMotion","useSharedValue","withDelay","withRepeat","withSequence","withTiming","jsx","_jsx","DEFAULT_DURATION","DEFAULT_HIGHLIGHT_WIDTH","GLYPH_BLEED","paddingHorizontal","marginHorizontal","DEFAULT_TEXT_STYLE","fontSize","fontWeight","lineHeight","ShimmerText","text","activeColor","mutedColor","textStyle","duration","highlightWidth","pause","direction","reduceMotion","progress","words","total","characters","Array","from","groups","current","forEach","char","index","push","length","value","sweep","easing","linear","style","color","children","accessible","accessibilityRole","accessibilityLabel","flexDirection","flexWrap","map","word","wordIndex","glyph","ShimmerChar","phase","position","distance","Math","abs","CLAMP","t"],"sourceRoot":"../../../src","sources":["text/shimmer-text.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useMemo","Text","View","Animated","Easing","Extrapolation","interpolate","interpolateColor","useAnimatedStyle","useReducedMotion","useSharedValue","withDelay","withRepeat","withSequence","withTiming","isCjk","needsShaping","splitGraphemes","jsx","_jsx","DEFAULT_DURATION","DEFAULT_HIGHLIGHT_WIDTH","GLYPH_BLEED","paddingHorizontal","marginHorizontal","DEFAULT_TEXT_STYLE","fontSize","fontWeight","lineHeight","ShimmerText","text","activeColor","mutedColor","textStyle","duration","highlightWidth","pause","direction","reduceMotion","progress","shaped","words","total","characters","groups","current","forEach","char","index","breakAfter","length","push","value","sweep","easing","linear","style","color","children","ShimmerChar","Math","max","accessible","accessibilityRole","accessibilityLabel","flexDirection","flexWrap","map","word","wordIndex","glyph","phase","position","distance","abs","CLAMP","t"],"sourceRoot":"../../../src","sources":["text/shimmer-text.tsx"],"mappings":"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","ignoreList":[]}
@@ -35,7 +35,12 @@ export function SpokenText({
35
35
  color: active,
36
36
  textAlign: align
37
37
  }, style],
38
- children: text
38
+ children: words.map((word, index) => /*#__PURE__*/_jsx(Text, {
39
+ style: {
40
+ color: index < current ? done : index === current ? active : upcoming
41
+ },
42
+ children: word
43
+ }, index))
39
44
  });
40
45
  }
41
46
  return /*#__PURE__*/_jsx(View, {
@@ -1 +1 @@
1
- {"version":3,"names":["memo","useEffect","useMemo","Text","View","Animated","interpolateColor","useAnimatedStyle","useReducedMotion","useSharedValue","withTiming","useMotionPalette","jsx","_jsx","DEFAULT_TEXT_STYLE","fontSize","lineHeight","fontWeight","SpokenText","text","spoken","textStyle","activeColor","spokenColor","upcomingColor","align","colors","style","palette","reduceMotion","words","match","active","done","textSecondary","upcoming","textTertiary","current","Math","min","length","max","floor","accessibilityLabel","color","textAlign","children","accessible","accessibilityRole","flexDirection","flexWrap","justifyContent","map","word","index","SpokenWord","phase","value","duration","transform","translateY","abs"],"sourceRoot":"../../../src","sources":["text/spoken-text.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["memo","useEffect","useMemo","Text","View","Animated","interpolateColor","useAnimatedStyle","useReducedMotion","useSharedValue","withTiming","useMotionPalette","jsx","_jsx","DEFAULT_TEXT_STYLE","fontSize","lineHeight","fontWeight","SpokenText","text","spoken","textStyle","activeColor","spokenColor","upcomingColor","align","colors","style","palette","reduceMotion","words","match","active","done","textSecondary","upcoming","textTertiary","current","Math","min","length","max","floor","accessibilityLabel","color","textAlign","children","map","word","index","accessible","accessibilityRole","flexDirection","flexWrap","justifyContent","SpokenWord","phase","value","duration","transform","translateY","abs"],"sourceRoot":"../../../src","sources":["text/spoken-text.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,6 @@
3
3
  import { isValidElement, memo, useEffect, useMemo, useState } from "react";
4
4
  import { StyleSheet, Text, View } from "react-native";
5
5
  import Animated, { cancelAnimation, useAnimatedStyle, useReducedMotion, useSharedValue, withRepeat, withSequence, withTiming } from "react-native-reanimated";
6
- import { withAlpha } from "../internal/color.js";
7
6
  import { useMotionPalette } from "../theme/provider.js";
8
7
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
8
  const DEFAULT_TEXT_STYLE = {
@@ -108,7 +107,8 @@ export function StreamingText({
108
107
  const [reveal, setReveal] = useState(() => streaming && animate ? settledReveal("") : settledReveal(text));
109
108
  const [now, setNow] = useState(() => Date.now());
110
109
  const fading = reveal.chunks.length > 0;
111
- const color = palette.text;
110
+ const flatStyle = StyleSheet.flatten(textStyle);
111
+ const color = flatStyle?.color ?? palette.text;
112
112
  useEffect(() => {
113
113
  if (!streaming || !animate) {
114
114
  setReveal(previous => previous.text === text ? previous : settledReveal(text));
@@ -174,7 +174,7 @@ export function StreamingText({
174
174
  if (piece.alpha >= 1) return value;
175
175
  return /*#__PURE__*/_jsx(Text, {
176
176
  style: {
177
- color: withAlpha(color, piece.alpha)
177
+ opacity: piece.alpha
178
178
  },
179
179
  children: value
180
180
  }, piece.start);
@@ -1 +1 @@
1
- {"version":3,"names":["isValidElement","memo","useEffect","useMemo","useState","StyleSheet","Text","View","Animated","cancelAnimation","useAnimatedStyle","useReducedMotion","useSharedValue","withRepeat","withSequence","withTiming","withAlpha","useMotionPalette","jsx","_jsx","jsxs","_jsxs","DEFAULT_TEXT_STYLE","fontSize","lineHeight","DEFAULT_FADE","FRAME_MS","CARET_BLINK","easeOut","progress","clamped","Math","min","max","commonPrefix","a","b","limit","length","index","charCodeAt","paragraphRanges","text","ranges","breaks","start","match","exec","push","end","settledReveal","settled","chunks","nextReveal","previous","born","common","filter","chunk","map","revealPieces","reveal","now","fadeDuration","pieces","alpha","cursor","StreamingText","streaming","textStyle","paragraphGap","caret","selectable","colors","style","palette","reduceMotion","animate","setReveal","setNow","Date","fading","color","timer","setInterval","time","live","done","clearInterval","current","Number","POSITIVE_INFINITY","paragraphs","caretNode","Caret","blink","gap","children","range","last","inside","piece","plain","PlainParagraph","value","slice","opacity","flat","flatten","height","round","duration","animatedStyle","width","borderRadius","backgroundColor","marginLeft","marginBottom"],"sourceRoot":"../../../src","sources":["text/streaming-text.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["isValidElement","memo","useEffect","useMemo","useState","StyleSheet","Text","View","Animated","cancelAnimation","useAnimatedStyle","useReducedMotion","useSharedValue","withRepeat","withSequence","withTiming","useMotionPalette","jsx","_jsx","jsxs","_jsxs","DEFAULT_TEXT_STYLE","fontSize","lineHeight","DEFAULT_FADE","FRAME_MS","CARET_BLINK","easeOut","progress","clamped","Math","min","max","commonPrefix","a","b","limit","length","index","charCodeAt","paragraphRanges","text","ranges","breaks","start","match","exec","push","end","settledReveal","settled","chunks","nextReveal","previous","born","common","filter","chunk","map","revealPieces","reveal","now","fadeDuration","pieces","alpha","cursor","StreamingText","streaming","textStyle","paragraphGap","caret","selectable","colors","style","palette","reduceMotion","animate","setReveal","setNow","Date","fading","flatStyle","flatten","color","timer","setInterval","time","live","done","clearInterval","current","Number","POSITIVE_INFINITY","paragraphs","caretNode","Caret","blink","gap","children","range","last","inside","piece","plain","PlainParagraph","value","slice","opacity","flat","height","round","duration","animatedStyle","width","borderRadius","backgroundColor","marginLeft","marginBottom"],"sourceRoot":"../../../src","sources":["text/streaming-text.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"effort-bar.d.ts","sourceRoot":"","sources":["../../../../src/chat/effort-bar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC7E,OAAO,EAML,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAatB,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAkB,CAAC;AAgBtD,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,OAAO,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEzE,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1H,MAAM,MAAM,eAAe,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhG,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3D,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC;IACxD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAkCF,wBAAgB,SAAS,CAAC,EACxB,MAAM,EACN,KAAK,EACL,QAAQ,EACR,OAAgB,EAChB,IAAgB,EAChB,KAAK,EAAE,SAAS,EAChB,QAAQ,EACR,SAAS,EACT,QAAgB,EAChB,UAAU,EACV,SAAS,EACT,QAAQ,EACR,kBAAkB,EAClB,YAAoC,EACpC,MAAM,EACN,KAAK,GACN,EAAE,cAAc,+BA6KhB;AA6bD,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;AAE/D,wBAAgB,UAAU,CAAC,KAAK,EAAE,gBAAgB,+BAEjD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,+BAElD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,gBAAgB,+BAEtD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,gBAAgB,+BAEnD"}
1
+ {"version":3,"file":"effort-bar.d.ts","sourceRoot":"","sources":["../../../../src/chat/effort-bar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC7E,OAAO,EAML,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAatB,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAkB,CAAC;AAiBtD,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,OAAO,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEzE,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1H,MAAM,MAAM,eAAe,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhG,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3D,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC;IACxD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAwBF,wBAAgB,SAAS,CAAC,EACxB,MAAM,EACN,KAAK,EACL,QAAQ,EACR,OAAgB,EAChB,IAAgB,EAChB,KAAK,EAAE,SAAS,EAChB,QAAQ,EACR,SAAS,EACT,QAAgB,EAChB,UAAU,EACV,SAAS,EACT,QAAQ,EACR,kBAAkB,EAClB,YAAoC,EACpC,MAAM,EACN,KAAK,GACN,EAAE,cAAc,+BAmMhB;AA6bD,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;AAE/D,wBAAgB,UAAU,CAAC,KAAK,EAAE,gBAAgB,+BAEjD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,+BAElD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,gBAAgB,+BAEtD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,gBAAgB,+BAEnD"}
@@ -9,6 +9,7 @@ export type StatusRowProps = {
9
9
  iconSize?: number;
10
10
  active?: boolean;
11
11
  startedAt?: number;
12
+ seconds?: number;
12
13
  showTimer?: boolean;
13
14
  formatTimer?: (seconds: number) => string;
14
15
  textStyle?: StyleProp<TextStyle>;
@@ -16,5 +17,5 @@ export type StatusRowProps = {
16
17
  colors?: Partial<MotionPalette>;
17
18
  style?: StyleProp<ViewStyle>;
18
19
  };
19
- export declare function StatusRow({ label, icon, iconMotion, iconSize, active, startedAt, showTimer, formatTimer, textStyle, timerStyle, colors, style, }: StatusRowProps): import("react").JSX.Element;
20
+ export declare function StatusRow({ label, icon, iconMotion, iconSize, active, startedAt, seconds, showTimer, formatTimer, textStyle, timerStyle, colors, style, }: StatusRowProps): import("react").JSX.Element;
20
21
  //# sourceMappingURL=status-row.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"status-row.d.ts","sourceRoot":"","sources":["../../../../src/chat/status-row.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAe1F,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAkB,CAAC;AAKtD,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAE5D,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1C,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClC,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAEF,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,IAAI,EACJ,UAAoB,EACpB,QAAa,EACb,MAAa,EACb,SAAS,EACT,SAAgB,EAChB,WAA2B,EAC3B,SAA8B,EAC9B,UAAU,EACV,MAAM,EACN,KAAK,GACN,EAAE,cAAc,+BAyChB"}
1
+ {"version":3,"file":"status-row.d.ts","sourceRoot":"","sources":["../../../../src/chat/status-row.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAe1F,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAkB,CAAC;AAKtD,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAE5D,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1C,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClC,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAEF,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,IAAI,EACJ,UAAoB,EACpB,QAAa,EACb,MAAa,EACb,SAAS,EACT,OAAO,EACP,SAAgB,EAChB,WAA2B,EAC3B,SAA8B,EAC9B,UAAU,EACV,MAAM,EACN,KAAK,GACN,EAAE,cAAc,+BA0ChB"}
@@ -1 +1 @@
1
- {"version":3,"file":"thinking-block.d.ts","sourceRoot":"","sources":["../../../../src/chat/thinking-block.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAKL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAgBtB,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAkB,CAAC;AAQtD,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE/D,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,kBAAkB,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACtC,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC;IAC9D,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAOF,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,SAAS,EACT,OAAO,EACP,KAAK,EACL,MAAM,EACN,IAAI,EACJ,OAAO,EACP,KAAK,EACL,UAAU,EACV,QAAQ,EACR,IAAI,EAAE,cAAc,EACpB,WAAmB,EACnB,YAAY,EACZ,SAA8B,EAC9B,WAAkC,EAClC,MAAM,EACN,KAAK,GACN,EAAE,kBAAkB,+BAwGpB"}
1
+ {"version":3,"file":"thinking-block.d.ts","sourceRoot":"","sources":["../../../../src/chat/thinking-block.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAKL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAgBtB,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAkB,CAAC;AAQtD,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE/D,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,kBAAkB,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACtC,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC;IAC9D,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAOF,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,SAAS,EACT,OAAO,EACP,KAAK,EACL,MAAM,EACN,IAAI,EACJ,OAAO,EACP,KAAK,EACL,UAAU,EACV,QAAQ,EACR,IAAI,EAAE,cAAc,EACpB,WAAmB,EACnB,YAAY,EACZ,SAA8B,EAC9B,WAAkC,EAClC,MAAM,EACN,KAAK,GACN,EAAE,kBAAkB,+BAyGpB"}
@@ -1,2 +1,6 @@
1
+ type Rgba = [number, number, number, number];
2
+ export declare function parseColor(color: string): Rgba | null;
1
3
  export declare function withAlpha(color: string, alpha: number): string;
4
+ export declare function mixColors(from: string, to: string, t: number): string;
5
+ export {};
2
6
  //# sourceMappingURL=color.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../../src/internal/color.ts"],"names":[],"mappings":"AAAA,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAiB9D"}
1
+ {"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../../src/internal/color.ts"],"names":[],"mappings":"AAEA,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE7C,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAKrD;AAMD,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK9D;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAUrE"}
@@ -0,0 +1,4 @@
1
+ export declare function splitGraphemes(text: string): string[];
2
+ export declare function needsShaping(text: string): boolean;
3
+ export declare function isCjk(cluster: string): boolean;
4
+ //# sourceMappingURL=graphemes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphemes.d.ts","sourceRoot":"","sources":["../../../../src/internal/graphemes.ts"],"names":[],"mappings":"AAcA,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAiBrD;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,WAExC;AAED,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,WAEpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-elapsed.d.ts","sourceRoot":"","sources":["../../../../src/internal/use-elapsed.ts"],"names":[],"mappings":"AAEA,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,SAAO,UAY1F;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,UAI5C"}
1
+ {"version":3,"file":"use-elapsed.d.ts","sourceRoot":"","sources":["../../../../src/internal/use-elapsed.ts"],"names":[],"mappings":"AAEA,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,SAAO,UAa1F;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,UAI5C"}
@@ -0,0 +1,3 @@
1
+ import { type SharedValue } from "react-native-reanimated";
2
+ export declare function useMotionClock(running: boolean, initial?: number): SharedValue<number>;
3
+ //# sourceMappingURL=use-motion-clock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-motion-clock.d.ts","sourceRoot":"","sources":["../../../../src/internal/use-motion-clock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAoC,MAAM,yBAAyB,CAAC;AAE7F,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,SAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAMjF"}
@@ -1 +1 @@
1
- {"version":3,"file":"dot-orb.d.ts","sourceRoot":"","sources":["../../../../src/skia/dot-orb.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAI9D,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,eAAe,GAAG,OAAO,CAAC;AAEzE,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AA+DF,wBAAgB,MAAM,CAAC,EACrB,OAAiB,EACjB,IAAI,EACJ,KAAK,EACL,MAAM,EACN,KAAS,EACT,QAAY,EACZ,MAAc,EACd,KAAS,EACT,OAAe,EACf,KAAK,GACN,EAAE,WAAW,+BA0Jb"}
1
+ {"version":3,"file":"dot-orb.d.ts","sourceRoot":"","sources":["../../../../src/skia/dot-orb.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAK9D,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,eAAe,GAAG,OAAO,CAAC;AAEzE,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AA+DF,wBAAgB,MAAM,CAAC,EACrB,OAAiB,EACjB,IAAI,EACJ,KAAK,EACL,MAAM,EACN,KAAS,EACT,QAAY,EACZ,MAAc,EACd,KAAS,EACT,OAAe,EACf,KAAK,GACN,EAAE,WAAW,+BA0Jb"}
@@ -1,3 +1,4 @@
1
+ import { type MotionPalette } from "../theme/palette.js";
1
2
  export type MatrixOrbState = "idle" | "listening" | "thinking";
2
3
  export type MatrixOrbProps = {
3
4
  state?: MatrixOrbState;
@@ -7,6 +8,7 @@ export type MatrixOrbProps = {
7
8
  color?: string;
8
9
  stateColors?: Partial<Record<MatrixOrbState, string>>;
9
10
  dots?: number;
11
+ colors?: Partial<MotionPalette>;
10
12
  };
11
- export declare function MatrixOrb({ state, level, size, cover, color, stateColors, dots, }: MatrixOrbProps): import("react").JSX.Element | null;
13
+ export declare function MatrixOrb({ state, level, size, cover, color: colorProp, stateColors, dots, colors, }: MatrixOrbProps): import("react").JSX.Element | null;
12
14
  //# sourceMappingURL=matrix-orb.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"matrix-orb.d.ts","sourceRoot":"","sources":["../../../../src/skia/matrix-orb.tsx"],"names":[],"mappings":"AAUA,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,CAAC;AAmL/D,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,wBAAgB,SAAS,CAAC,EACxB,KAAc,EACd,KAAK,EACL,IAAmB,EACnB,KAAa,EACb,KAAqB,EACrB,WAAW,EACX,IAAmB,GACpB,EAAE,cAAc,sCA2HhB"}
1
+ {"version":3,"file":"matrix-orb.d.ts","sourceRoot":"","sources":["../../../../src/skia/matrix-orb.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAkB,CAAC;AAGtD,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,CAAC;AAkL/D,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;CACjC,CAAC;AAEF,wBAAgB,SAAS,CAAC,EACxB,KAAc,EACd,KAAK,EACL,IAAmB,EACnB,KAAa,EACb,KAAK,EAAE,SAAS,EAChB,WAAW,EACX,IAAmB,EACnB,MAAM,GACP,EAAE,cAAc,sCA6HhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"media-generating.d.ts","sourceRoot":"","sources":["../../../../src/skia/media-generating.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"media-generating.d.ts","sourceRoot":"","sources":["../../../../src/skia/media-generating.tsx"],"names":[],"mappings":"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"}
@@ -3,12 +3,12 @@ import { type SharedValue } from "react-native-reanimated";
3
3
  export type VoiceWaveVariant = "lines" | "bars" | "dots" | "pulse";
4
4
  export type VoiceWaveProps = {
5
5
  level: SharedValue<number>;
6
- colors: [string, string, string];
6
+ colors?: [string, string, string];
7
7
  variant?: VoiceWaveVariant;
8
8
  height?: number;
9
9
  style?: StyleProp<ViewStyle>;
10
10
  };
11
- export declare function VoiceWave({ level, colors, variant, height, style }: VoiceWaveProps): import("react").JSX.Element;
11
+ export declare function VoiceWave({ level, colors: colorsProp, variant, height, style }: VoiceWaveProps): import("react").JSX.Element;
12
12
  export type VoiceWaveStyleProps = Omit<VoiceWaveProps, "variant">;
13
13
  export declare function VoiceWaveLines(props: VoiceWaveStyleProps): import("react").JSX.Element;
14
14
  export declare function VoiceWaveBars(props: VoiceWaveStyleProps): import("react").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"voice-wave.d.ts","sourceRoot":"","sources":["../../../../src/skia/voice-wave.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAgC,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAC5F,OAAO,EAAE,KAAK,WAAW,EAAuE,MAAM,yBAAyB,CAAC;AAwBhI,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAEnE,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAuIF,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAiB,EAAE,MAAuB,EAAE,KAAK,EAAE,EAAE,cAAc,+BA0B7G;AAED,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;AAElE,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,+BAExD;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,mBAAmB,+BAEvD;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,mBAAmB,+BAEvD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,+BAExD"}
1
+ {"version":3,"file":"voice-wave.d.ts","sourceRoot":"","sources":["../../../../src/skia/voice-wave.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAgC,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAC5F,OAAO,EAAE,KAAK,WAAW,EAAuE,MAAM,yBAAyB,CAAC;AA2BhI,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAEnE,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAuIF,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,OAAiB,EAAE,MAAuB,EAAE,KAAK,EAAE,EAAE,cAAc,+BA4BzH;AAED,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;AAElE,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,+BAExD;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,mBAAmB,+BAEvD;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,mBAAmB,+BAEvD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,+BAExD"}
@@ -1 +1 @@
1
- {"version":3,"file":"shimmer-text.d.ts","sourceRoot":"","sources":["../../../../src/text/shimmer-text.tsx"],"names":[],"mappings":"AACA,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AA0B1E,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;CAC3B,CAAC;AAIF,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,WAAW,EACX,UAAU,EACV,SAA8B,EAC9B,QAA2B,EAC3B,cAAwC,EACxC,KAAS,EACT,SAAiB,GAClB,EAAE,gBAAgB,+BA2DlB"}
1
+ {"version":3,"file":"shimmer-text.d.ts","sourceRoot":"","sources":["../../../../src/text/shimmer-text.tsx"],"names":[],"mappings":"AACA,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AA2B1E,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;CAC3B,CAAC;AAIF,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,WAAW,EACX,UAAU,EACV,SAA8B,EAC9B,QAA2B,EAC3B,cAAwC,EACxC,KAAS,EACT,SAAiB,GAClB,EAAE,gBAAgB,+BAgFlB"}
@@ -1 +1 @@
1
- {"version":3,"file":"spoken-text.d.ts","sourceRoot":"","sources":["../../../../src/text/spoken-text.tsx"],"names":[],"mappings":"AACA,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAE1F,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAkB,CAAC;AAKtD,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAEF,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,MAAM,EACN,SAA8B,EAC9B,WAAW,EACX,WAAW,EACX,aAAa,EACb,KAAgB,EAChB,MAAM,EACN,KAAK,GACN,EAAE,eAAe,+BAqCjB"}
1
+ {"version":3,"file":"spoken-text.d.ts","sourceRoot":"","sources":["../../../../src/text/spoken-text.tsx"],"names":[],"mappings":"AACA,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAE1F,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAkB,CAAC;AAKtD,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAEF,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,MAAM,EACN,SAA8B,EAC9B,WAAW,EACX,WAAW,EACX,aAAa,EACb,KAAgB,EAChB,MAAM,EACN,KAAK,GACN,EAAE,eAAe,+BAyCjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"streaming-text.d.ts","sourceRoot":"","sources":["../../../../src/text/streaming-text.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAsD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3F,OAAO,EAA0B,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAWtG,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAkB,CAAC;AAQtD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AA+DF,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,SAAS,EACT,SAA8B,EAC9B,YAAiB,EACjB,YAA2B,EAC3B,KAAY,EACZ,UAAkB,EAClB,MAAM,EACN,KAAK,GACN,EAAE,kBAAkB,+BA0EpB"}
1
+ {"version":3,"file":"streaming-text.d.ts","sourceRoot":"","sources":["../../../../src/text/streaming-text.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAsD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3F,OAAO,EAA2C,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAUvH,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAkB,CAAC;AAQtD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AA+DF,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,SAAS,EACT,SAA8B,EAC9B,YAAiB,EACjB,YAA2B,EAC3B,KAAY,EACZ,UAAkB,EAClB,MAAM,EACN,KAAK,GACN,EAAE,kBAAkB,+BA2EpB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-ai-animations",
3
- "version": "0.9.0",
3
+ "version": "0.9.1",
4
4
  "description": "Animated React Native and Expo components for AI chat apps: streaming text, shimmer loading text, thinking and status indicators, voice orbs and waveforms, image and video generation loaders, question cards and reasoning effort bars. Built on Reanimated and Skia.",
5
5
  "license": "MIT",
6
6
  "author": "Ahmet Kar",
@@ -20,7 +20,7 @@ import Animated, {
20
20
  useSharedValue,
21
21
  withSpring,
22
22
  } from "react-native-reanimated";
23
- import { withAlpha } from "../internal/color";
23
+ import { mixColors, withAlpha } from "../internal/color";
24
24
  import { type MotionPalette } from "../theme/palette";
25
25
  import { useMotionPalette } from "../theme/provider";
26
26
 
@@ -36,6 +36,7 @@ const SLIDER_TAB = 28;
36
36
  const SLIDER_TAB_RADIUS = 10;
37
37
  const SLIDER_SHOULDER = 8;
38
38
  const COMPACT_SLIDER_KNOB = 10;
39
+ const DRAG_SLOP = 4;
39
40
 
40
41
  export type EffortBarVariant = "bars" | "track" | "segmented" | "slider";
41
42
 
@@ -66,16 +67,6 @@ function normalize(level: EffortLevel): { key?: string; label: string; descripti
66
67
  return typeof level === "string" ? { label: level } : level;
67
68
  }
68
69
 
69
- function mix(a: string, b: string, t: number) {
70
- const parse = (hex: string) => {
71
- const clean = hex.replace("#", "");
72
- return [0, 2, 4].map((offset) => parseInt(clean.slice(offset, offset + 2), 16));
73
- };
74
- const from = parse(a);
75
- const to = parse(b);
76
- const channel = (index: number) => Math.round(from[index] + (to[index] - from[index]) * t).toString(16).padStart(2, "0");
77
- return `#${channel(0)}${channel(1)}${channel(2)}`;
78
- }
79
70
 
80
71
  function spread(stops: string[], count: number) {
81
72
  if (count <= 1) return [stops[stops.length - 1]];
@@ -86,7 +77,7 @@ function spread(stops: string[], count: number) {
86
77
  const high = Math.min(stops.length - 1, low + 1);
87
78
  const a = stops[low];
88
79
  const b = stops[high];
89
- return a.startsWith("#") && b.startsWith("#") ? mix(a, b, position - low) : position - low < 0.5 ? a : b;
80
+ return mixColors(a, b, position - low);
90
81
  });
91
82
  }
92
83
 
@@ -116,7 +107,7 @@ export function EffortBar({
116
107
  const reduceMotion = useReducedMotion();
117
108
  const items = useMemo(() => levels.map(normalize), [levels]);
118
109
  const count = Math.max(1, items.length);
119
- const index = Math.min(count - 1, Math.max(0, value));
110
+ const index = Math.min(count - 1, Math.max(0, Number.isFinite(value) ? Math.round(value) : 0));
120
111
  const current = items[index];
121
112
  const compact = size === "compact";
122
113
  const stops = fillColors && fillColors.length > 0 ? fillColors : undefined;
@@ -132,6 +123,8 @@ export function EffortBar({
132
123
  const lastIndex = useRef(index);
133
124
  const indexRef = useRef(index);
134
125
  const dragging = useRef(false);
126
+ const moved = useRef(false);
127
+ const startX = useRef(0);
135
128
  const interactive = !!onChange && !disabled;
136
129
  indexRef.current = index;
137
130
 
@@ -160,14 +153,15 @@ export function EffortBar({
160
153
  onChange?.(next, { index: next, label: item.label, value: item.value, budget: item.budget });
161
154
  };
162
155
 
163
- const pick = (x: number, grant: boolean) => {
156
+ const pick = (x: number, mode: "start" | "move" | "tap") => {
164
157
  if (!interactive || width === 0) return;
165
158
  let next: number;
166
159
  if (variant === "slider") {
167
160
  const position = Math.min(1, Math.max(0, (x - knobInset - knobSize / 2) / Math.max(1, width - knobInset * 2 - knobSize)));
168
- dragging.current = true;
169
- knob.value = reduceMotion || !grant ? position : withSpring(position, GRAB_SPRING);
170
- if (grant && !reduceMotion) pressed.value = withSpring(1, GRAB_SPRING);
161
+ if (mode !== "tap") {
162
+ dragging.current = true;
163
+ knob.value = reduceMotion || mode === "move" ? position : withSpring(position, GRAB_SPRING);
164
+ }
171
165
  next = Math.round(position * (count - 1));
172
166
  } else {
173
167
  next = Math.min(count - 1, Math.max(0, Math.floor((x / width) * count)));
@@ -176,15 +170,34 @@ export function EffortBar({
176
170
  lastIndex.current = next;
177
171
  select(next);
178
172
  };
179
- const pickRef = useRef(pick);
180
- pickRef.current = pick;
181
173
 
182
- const release = () => {
174
+ const grant = (x: number) => {
175
+ startX.current = x;
176
+ moved.current = false;
177
+ lastIndex.current = indexRef.current;
178
+ if (variant === "slider" && !reduceMotion) pressed.value = withSpring(1, GRAB_SPRING);
179
+ };
180
+ const grantRef = useRef(grant);
181
+ grantRef.current = grant;
182
+
183
+ const move = (x: number, dx: number) => {
184
+ if (!moved.current && Math.abs(dx) < DRAG_SLOP) return;
185
+ const first = !moved.current;
186
+ moved.current = true;
187
+ pick(x, first ? "start" : "move");
188
+ };
189
+ const moveRef = useRef(move);
190
+ moveRef.current = move;
191
+
192
+ const release = (commit: boolean) => {
193
+ const tap = commit && !moved.current;
194
+ moved.current = false;
195
+ if (tap) pick(startX.current, "tap");
196
+ if (variant === "slider") pressed.value = reduceMotion ? 0 : withSpring(0, LEVEL_SPRING);
183
197
  if (!dragging.current) return;
184
198
  dragging.current = false;
185
199
  const target = count > 1 ? indexRef.current / (count - 1) : 0;
186
200
  knob.value = reduceMotion ? target : withSpring(target, LEVEL_SPRING);
187
- pressed.value = reduceMotion ? 0 : withSpring(0, LEVEL_SPRING);
188
201
  };
189
202
  const releaseRef = useRef(release);
190
203
  releaseRef.current = release;
@@ -197,12 +210,12 @@ export function EffortBar({
197
210
  () =>
198
211
  PanResponder.create({
199
212
  onStartShouldSetPanResponder: () => true,
200
- onMoveShouldSetPanResponder: (_, gesture) => Math.abs(gesture.dx) > 4,
201
- onPanResponderTerminationRequest: () => false,
202
- onPanResponderGrant: (event) => pickRef.current(event.nativeEvent.locationX, true),
203
- onPanResponderMove: (event) => pickRef.current(event.nativeEvent.locationX, false),
204
- onPanResponderRelease: () => releaseRef.current(),
205
- onPanResponderTerminate: () => releaseRef.current(),
213
+ onMoveShouldSetPanResponder: (_, gesture) => Math.abs(gesture.dx) > DRAG_SLOP,
214
+ onPanResponderTerminationRequest: () => !moved.current,
215
+ onPanResponderGrant: (event) => grantRef.current(event.nativeEvent.locationX),
216
+ onPanResponderMove: (event, gesture) => moveRef.current(event.nativeEvent.locationX, gesture.dx),
217
+ onPanResponderRelease: () => releaseRef.current(true),
218
+ onPanResponderTerminate: () => releaseRef.current(false),
206
219
  }),
207
220
  [],
208
221
  );
@@ -333,7 +333,7 @@ export const QuestionCard = forwardRef<QuestionCardHandle, QuestionCardProps>(fu
333
333
  const padding: ViewStyle = sheet
334
334
  ? { paddingHorizontal: 20, paddingTop: 12, paddingBottom: 16 }
335
335
  : { paddingHorizontal: 16, paddingTop: 12, paddingBottom: 12 };
336
- const showFooter = kind === "multiple" && draft.selected.length > 0;
336
+ const showFooter = draft.selected.length > 0 && (kind === "multiple" || (last ? !autoSubmit : !autoAdvance));
337
337
 
338
338
  return (
339
339
  <Animated.View style={[container, shellStyle, style]}>
@@ -28,6 +28,7 @@ export type StatusRowProps = {
28
28
  iconSize?: number;
29
29
  active?: boolean;
30
30
  startedAt?: number;
31
+ seconds?: number;
31
32
  showTimer?: boolean;
32
33
  formatTimer?: (seconds: number) => string;
33
34
  textStyle?: StyleProp<TextStyle>;
@@ -43,6 +44,7 @@ export function StatusRow({
43
44
  iconSize = 18,
44
45
  active = true,
45
46
  startedAt,
47
+ seconds,
46
48
  showTimer = true,
47
49
  formatTimer = formatElapsed,
48
50
  textStyle = DEFAULT_TEXT_STYLE,
@@ -52,12 +54,13 @@ export function StatusRow({
52
54
  }: StatusRowProps) {
53
55
  const palette = useMotionPalette(colors);
54
56
  const reduceMotion = useReducedMotion();
55
- const seconds = useElapsed(startedAt, active);
57
+ const elapsed = useElapsed(startedAt, active);
58
+ const shownSeconds = seconds ?? elapsed;
56
59
 
57
60
  return (
58
61
  <View
59
62
  accessible
60
- accessibilityRole="progressbar"
63
+ accessibilityRole={active ? "progressbar" : "text"}
61
64
  accessibilityLabel={label}
62
65
  accessibilityState={{ busy: active }}
63
66
  style={[{ flexDirection: "row", alignItems: "center", gap: 8 }, style]}
@@ -83,9 +86,9 @@ export function StatusRow({
83
86
  )}
84
87
  </Animated.View>
85
88
  </View>
86
- {showTimer && startedAt !== undefined && (
89
+ {showTimer && (startedAt !== undefined || seconds !== undefined) && (
87
90
  <Text style={[textStyle, { color: palette.textTertiary, fontVariant: ["tabular-nums"] }, timerStyle]}>
88
- {formatTimer(seconds)}
91
+ {formatTimer(shownSeconds)}
89
92
  </Text>
90
93
  )}
91
94
  </View>