panelui-native 0.28.1 → 0.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/README.md +22 -3
  2. package/lib/module/components/calendar/index.js +450 -132
  3. package/lib/module/components/calendar/index.js.map +1 -1
  4. package/lib/module/components/code-block/highlight.js +363 -0
  5. package/lib/module/components/code-block/highlight.js.map +1 -0
  6. package/lib/module/components/code-block/index.js +313 -0
  7. package/lib/module/components/code-block/index.js.map +1 -0
  8. package/lib/module/components/date-picker/index.js +8 -1
  9. package/lib/module/components/date-picker/index.js.map +1 -1
  10. package/lib/module/components/heatmap-chart/index.js +9 -8
  11. package/lib/module/components/heatmap-chart/index.js.map +1 -1
  12. package/lib/module/components/map/index.js +50 -4
  13. package/lib/module/components/map/index.js.map +1 -1
  14. package/lib/module/components/menu/index.js +714 -0
  15. package/lib/module/components/menu/index.js.map +1 -0
  16. package/lib/module/components/plan/index.js +582 -0
  17. package/lib/module/components/plan/index.js.map +1 -0
  18. package/lib/module/components/popover/index.js +35 -4
  19. package/lib/module/components/popover/index.js.map +1 -1
  20. package/lib/module/components/post/index.js +992 -0
  21. package/lib/module/components/post/index.js.map +1 -0
  22. package/lib/module/components/radio-group/index.js +13 -8
  23. package/lib/module/components/radio-group/index.js.map +1 -1
  24. package/lib/module/components/reasoning/index.js +244 -0
  25. package/lib/module/components/reasoning/index.js.map +1 -0
  26. package/lib/module/components/response/index.js +296 -0
  27. package/lib/module/components/response/index.js.map +1 -0
  28. package/lib/module/components/response/markdown.js +463 -0
  29. package/lib/module/components/response/markdown.js.map +1 -0
  30. package/lib/module/components/select/index.js +97 -15
  31. package/lib/module/components/select/index.js.map +1 -1
  32. package/lib/module/components/sources/index.js +221 -0
  33. package/lib/module/components/sources/index.js.map +1 -0
  34. package/lib/module/components/table/index.js +632 -0
  35. package/lib/module/components/table/index.js.map +1 -0
  36. package/lib/module/components/task/index.js +300 -0
  37. package/lib/module/components/task/index.js.map +1 -0
  38. package/lib/module/components/textarea/index.js +295 -0
  39. package/lib/module/components/textarea/index.js.map +1 -0
  40. package/lib/module/components/tooltip/index.js +179 -23
  41. package/lib/module/components/tooltip/index.js.map +1 -1
  42. package/lib/module/icons/index.js +339 -0
  43. package/lib/module/icons/index.js.map +1 -1
  44. package/lib/module/index.js +12 -1
  45. package/lib/module/index.js.map +1 -1
  46. package/lib/module/primitives/collapse.js +112 -0
  47. package/lib/module/primitives/collapse.js.map +1 -0
  48. package/lib/module/utils/date.js +129 -22
  49. package/lib/module/utils/date.js.map +1 -1
  50. package/lib/typescript/src/components/calendar/index.d.ts +79 -5
  51. package/lib/typescript/src/components/calendar/index.d.ts.map +1 -1
  52. package/lib/typescript/src/components/code-block/highlight.d.ts +39 -0
  53. package/lib/typescript/src/components/code-block/highlight.d.ts.map +1 -0
  54. package/lib/typescript/src/components/code-block/index.d.ts +113 -0
  55. package/lib/typescript/src/components/code-block/index.d.ts.map +1 -0
  56. package/lib/typescript/src/components/date-picker/index.d.ts +7 -1
  57. package/lib/typescript/src/components/date-picker/index.d.ts.map +1 -1
  58. package/lib/typescript/src/components/heatmap-chart/index.d.ts.map +1 -1
  59. package/lib/typescript/src/components/map/index.d.ts +8 -1
  60. package/lib/typescript/src/components/map/index.d.ts.map +1 -1
  61. package/lib/typescript/src/components/menu/index.d.ts +261 -0
  62. package/lib/typescript/src/components/menu/index.d.ts.map +1 -0
  63. package/lib/typescript/src/components/plan/index.d.ts +238 -0
  64. package/lib/typescript/src/components/plan/index.d.ts.map +1 -0
  65. package/lib/typescript/src/components/popover/index.d.ts +35 -1
  66. package/lib/typescript/src/components/popover/index.d.ts.map +1 -1
  67. package/lib/typescript/src/components/post/index.d.ts +358 -0
  68. package/lib/typescript/src/components/post/index.d.ts.map +1 -0
  69. package/lib/typescript/src/components/radio-group/index.d.ts.map +1 -1
  70. package/lib/typescript/src/components/reasoning/index.d.ts +97 -0
  71. package/lib/typescript/src/components/reasoning/index.d.ts.map +1 -0
  72. package/lib/typescript/src/components/response/index.d.ts +91 -0
  73. package/lib/typescript/src/components/response/index.d.ts.map +1 -0
  74. package/lib/typescript/src/components/response/markdown.d.ts +88 -0
  75. package/lib/typescript/src/components/response/markdown.d.ts.map +1 -0
  76. package/lib/typescript/src/components/select/index.d.ts +27 -2
  77. package/lib/typescript/src/components/select/index.d.ts.map +1 -1
  78. package/lib/typescript/src/components/sources/index.d.ts +85 -0
  79. package/lib/typescript/src/components/sources/index.d.ts.map +1 -0
  80. package/lib/typescript/src/components/table/index.d.ts +274 -0
  81. package/lib/typescript/src/components/table/index.d.ts.map +1 -0
  82. package/lib/typescript/src/components/task/index.d.ts +103 -0
  83. package/lib/typescript/src/components/task/index.d.ts.map +1 -0
  84. package/lib/typescript/src/components/textarea/index.d.ts +175 -0
  85. package/lib/typescript/src/components/textarea/index.d.ts.map +1 -0
  86. package/lib/typescript/src/components/tooltip/index.d.ts +63 -8
  87. package/lib/typescript/src/components/tooltip/index.d.ts.map +1 -1
  88. package/lib/typescript/src/icons/index.d.ts +54 -1
  89. package/lib/typescript/src/icons/index.d.ts.map +1 -1
  90. package/lib/typescript/src/index.d.ts +14 -3
  91. package/lib/typescript/src/index.d.ts.map +1 -1
  92. package/lib/typescript/src/primitives/collapse.d.ts +42 -0
  93. package/lib/typescript/src/primitives/collapse.d.ts.map +1 -0
  94. package/lib/typescript/src/utils/date.d.ts +49 -5
  95. package/lib/typescript/src/utils/date.d.ts.map +1 -1
  96. package/package.json +1 -1
  97. package/src/components/calendar/index.tsx +519 -139
  98. package/src/components/code-block/highlight.ts +278 -0
  99. package/src/components/code-block/index.tsx +341 -0
  100. package/src/components/date-picker/index.tsx +19 -1
  101. package/src/components/heatmap-chart/index.tsx +9 -9
  102. package/src/components/map/index.tsx +53 -4
  103. package/src/components/menu/index.tsx +812 -0
  104. package/src/components/plan/index.tsx +648 -0
  105. package/src/components/popover/index.tsx +69 -2
  106. package/src/components/post/index.tsx +1116 -0
  107. package/src/components/radio-group/index.tsx +11 -2
  108. package/src/components/reasoning/index.tsx +297 -0
  109. package/src/components/response/index.tsx +390 -0
  110. package/src/components/response/markdown.ts +489 -0
  111. package/src/components/select/index.tsx +132 -12
  112. package/src/components/sources/index.tsx +278 -0
  113. package/src/components/table/index.tsx +747 -0
  114. package/src/components/task/index.tsx +329 -0
  115. package/src/components/textarea/index.tsx +381 -0
  116. package/src/components/tooltip/index.tsx +203 -20
  117. package/src/icons/index.tsx +264 -1
  118. package/src/index.ts +131 -0
  119. package/src/primitives/collapse.tsx +128 -0
  120. package/src/utils/date.ts +146 -22
  121. package/theme.css +112 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Children","createContext","isValidElement","useCallback","useContext","useEffect","useMemo","useState","Pressable","View","Animated","useAnimatedStyle","useReducedMotion","useSharedValue","withTiming","tv","useCSSVariable","CheckIcon","ChevronRightIcon","Text","textChildren","useDirectionSign","selectionTick","cn","Popover","jsx","_jsx","jsxs","_jsxs","INDICATOR_SIZE","useTint","variable","raw","undefined","PRESS_IN_DURATION","PRESS_OUT_DURATION","PRESS_SCALE","menuVariants","slots","content","background","label","item","itemLabel","itemDescription","shortcut","separator","indicator","variants","variant","default","destructive","disabled","true","inset","defaultVariants","AnimatedPressable","createAnimatedComponent","useMenuPress","reduced","pressed","accent","fill","fillStyle","opacity","value","rowStyle","transform","scale","onPressIn","duration","onPressOut","MenuContext","useMenu","component","context","Error","MenuRoot","children","open","onOpenChange","defaultOpen","haptics","props","internalOpen","setInternalOpen","isControlled","setOpen","next","close","Provider","MenuTrigger","Trigger","MenuContent","className","scrollable","items","child","toArray","type","MenuBackground","push","Content","accessibilityRole","unstyled","accessibilityElementsHidden","importantForAccessibility","pointerEvents","MenuLabel","text","size","weight","muted","MenuSeparator","MenuItem","icon","description","trailing","closeOnSelect","onSelect","onPress","press","handlePress","args","accessibilityState","style","backgroundColor","MenuIndicatorSlot","width","height","MenuIndicatorSpacer","MenuCheckboxItem","checked","onCheckedChange","tint","color","MenuRadioContext","MenuRadioGroup","onValueChange","select","MenuRadioItem","group","selected","MenuSubContext","useMenuSub","MenuSub","resolved","toggle","MenuSubTrigger","sign","reducedMotion","chevronTint","progress","chevronStyle","rotate","expanded","MenuSubContent","setHeight","onLayout","event","nativeEvent","layout","position","left","right","top","displayName","Menu","Object","assign","Background","Label","Item","CheckboxItem","RadioGroup","RadioItem","Separator","Sub","SubTrigger","SubContent"],"sourceRoot":"../../../../src","sources":["components/menu/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,582 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Plan — what an agent intends to do, before it does it.
5
+ *
6
+ * A card rather than a run of rows, because a plan is a thing the reader is
7
+ * being asked to approve: it needs an edge around it so that where it starts
8
+ * and stops is not a matter of interpretation, and a footer that can hold the
9
+ * button that approves it.
10
+ *
11
+ * The body is a rail of steps rather than prose, because a plan is an ordered
12
+ * list of things that will happen and the reader's question is always *which
13
+ * one is running*. A paragraph describing the same four steps cannot be glanced
14
+ * at to answer that; a column of markers can. The rail fills behind the steps
15
+ * that are done, so progress is legible from its left edge alone, and
16
+ * `Plan.Steps` counts itself so `Plan.Progress` can say `2 of 4` up in the
17
+ * header without the total being stated twice.
18
+ *
19
+ * It streams. `isStreaming` puts a shimmer on the title, the description and
20
+ * the one step that is running, which is the honest way to render text that is
21
+ * still arriving — the alternative is a title that grows a word at a time and
22
+ * reads as finished at every intermediate length.
23
+ *
24
+ * ```tsx
25
+ * <Plan isStreaming={streaming}>
26
+ * <Plan.Header>
27
+ * <Plan.Icon><FileIcon size={16} /></Plan.Icon>
28
+ * <Plan.Title>Migrate the calendar</Plan.Title>
29
+ * <Plan.Description>Four files, no API change.</Plan.Description>
30
+ * <Plan.Action>
31
+ * <Plan.Progress />
32
+ * <Plan.Trigger />
33
+ * </Plan.Action>
34
+ * </Plan.Header>
35
+ * <Plan.Content>
36
+ * <Plan.Steps>
37
+ * <Plan.Step status="done" meta="utils/date.ts">Read the date utils</Plan.Step>
38
+ * <Plan.Step status="active">Replace the month grid</Plan.Step>
39
+ * <Plan.Step>Update the docs page</Plan.Step>
40
+ * </Plan.Steps>
41
+ * </Plan.Content>
42
+ * <Plan.Footer>
43
+ * <Button variant="outline">Revise</Button>
44
+ * <Button>Approve</Button>
45
+ * </Plan.Footer>
46
+ * </Plan>
47
+ * ```
48
+ *
49
+ * ## Where the props come from
50
+ *
51
+ * With the AI SDK a plan is usually an `experimental_useObject` stream, where
52
+ * `isStreaming` is the hook's `isLoading` and the fields arrive one at a time —
53
+ * which is exactly the case the shimmer exists for, since a partial object has
54
+ * a title before it has anything else.
55
+ */
56
+ import { Children, createContext, isValidElement, useCallback, useContext, useEffect, useMemo, useState } from 'react';
57
+ import { Pressable, View } from 'react-native';
58
+ import Animated, { useAnimatedStyle, useReducedMotion, useSharedValue, withTiming } from 'react-native-reanimated';
59
+ import { tv } from 'tailwind-variants';
60
+ import { useCSSVariable } from 'uniwind';
61
+ import { CheckIcon, ChevronDownIcon } from "../../icons/index.js";
62
+ import { Collapse } from "../../primitives/collapse.js";
63
+ import { Text, textChildren } from "../../primitives/text.js";
64
+ import { cn } from "../../utils/cn.js";
65
+ import { Shimmer } from "../shimmer/index.js";
66
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
67
+ const planVariants = tv({
68
+ slots: {
69
+ root: 'w-full overflow-hidden rounded-2xl border border-border bg-card shadow-sm',
70
+ header: 'flex-row items-start gap-3 p-4',
71
+ icon: 'h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-muted',
72
+ heading: 'min-w-0 flex-1 gap-1',
73
+ title: 'text-base font-semibold text-card-foreground',
74
+ description: 'text-sm text-muted-foreground',
75
+ action: 'shrink-0 flex-row items-center gap-1',
76
+ progress: 'text-xs font-medium text-muted-foreground',
77
+ trigger: 'h-8 w-8 items-center justify-center rounded-full active:bg-accent',
78
+ content: 'gap-2 px-4 pb-4',
79
+ steps: 'w-full',
80
+ step: 'w-full flex-row gap-3',
81
+ stepRail: 'w-4 items-center pt-px',
82
+ stepMarker: 'h-4 w-4 items-center justify-center rounded-full',
83
+ stepConnector: 'w-px flex-1 rounded-full',
84
+ stepBody: 'min-w-0 flex-1 gap-0.5 pb-3',
85
+ stepTitle: 'text-sm',
86
+ stepDescription: 'text-xs text-muted-foreground',
87
+ stepMeta: 'self-start rounded-md bg-muted px-1.5 py-0.5 font-mono text-[11px] text-muted-foreground',
88
+ footer: 'flex-row items-center gap-2 border-t border-border p-4'
89
+ }
90
+ });
91
+ /**
92
+ * What each state does to a step's marker, its title and the rail below it.
93
+ *
94
+ * A lookup rather than a `tv()` variant because it belongs to `Plan.Step`, not
95
+ * to `Plan` — a variant here would be read off the root and documented as
96
+ * something you could pass to the card.
97
+ *
98
+ * The connector is filled behind a step that is finished, which is what turns
99
+ * the left-hand column into a progress bar stood on its end: how far the plan
100
+ * has got is readable from the rail alone, without counting markers.
101
+ */
102
+ const stepStatus = {
103
+ pending: {
104
+ marker: 'border border-border',
105
+ title: 'text-muted-foreground',
106
+ connector: 'bg-border'
107
+ },
108
+ active: {
109
+ marker: 'border-2 border-primary',
110
+ title: 'font-medium text-foreground',
111
+ connector: 'bg-border'
112
+ },
113
+ done: {
114
+ marker: 'bg-primary',
115
+ title: 'text-foreground',
116
+ connector: 'bg-primary'
117
+ },
118
+ skipped: {
119
+ marker: 'border border-dashed border-border',
120
+ title: 'text-muted-foreground line-through',
121
+ connector: 'bg-border'
122
+ }
123
+ };
124
+
125
+ /** How far down the rail the plan has got. Reported by `Plan.Steps`. */
126
+
127
+ const PlanContext = /*#__PURE__*/createContext(null);
128
+ function usePlan(component) {
129
+ const context = useContext(PlanContext);
130
+ if (!context) {
131
+ throw new Error(`${component} must be used within a <Plan>`);
132
+ }
133
+ return context;
134
+ }
135
+ function PlanRoot({
136
+ className,
137
+ isStreaming = false,
138
+ open: openProp,
139
+ defaultOpen = true,
140
+ onOpenChange,
141
+ children,
142
+ ...props
143
+ }) {
144
+ const {
145
+ root
146
+ } = planVariants();
147
+ const [internalOpen, setInternalOpen] = useState(defaultOpen);
148
+ const isControlled = openProp !== undefined;
149
+ const open = isControlled ? openProp : internalOpen;
150
+ const setOpen = useCallback(next => {
151
+ if (!isControlled) setInternalOpen(next);
152
+ onOpenChange?.(next);
153
+ }, [isControlled, onOpenChange]);
154
+
155
+ // `Plan.Steps` counts its own children and reports up, so `Plan.Progress` can
156
+ // sit in the header — above the rail, and with no way to reach it — without
157
+ // the caller having to say how many steps there are twice.
158
+ const [counts, setCounts] = useState(null);
159
+ const reportCounts = useCallback(next => {
160
+ setCounts(current => current && current.done === next.done && current.total === next.total ? current : next);
161
+ }, []);
162
+ const context = useMemo(() => ({
163
+ isStreaming,
164
+ open,
165
+ setOpen,
166
+ counts,
167
+ reportCounts
168
+ }), [isStreaming, open, setOpen, counts, reportCounts]);
169
+ return /*#__PURE__*/_jsx(PlanContext.Provider, {
170
+ value: context,
171
+ children: /*#__PURE__*/_jsx(View, {
172
+ ...props,
173
+ className: cn(root(), className),
174
+ children: children
175
+ })
176
+ });
177
+ }
178
+ PlanRoot.displayName = 'Plan';
179
+ /**
180
+ * The title, the description and whatever acts on them.
181
+ *
182
+ * The heading is wrapped in a column of its own so the action stays pinned to
183
+ * the trailing edge as the title wraps, rather than riding down with it. An
184
+ * icon is pulled out to the leading edge for the same reason, in the other
185
+ * direction — a badge that rode down with a wrapping title would stop reading
186
+ * as a badge for the plan.
187
+ */
188
+ function PlanHeader({
189
+ className,
190
+ children,
191
+ ...props
192
+ }) {
193
+ const {
194
+ header,
195
+ heading
196
+ } = planVariants();
197
+ const icons = [];
198
+ const headings = [];
199
+ const actions = [];
200
+ for (const child of Array.isArray(children) ? children : [children]) {
201
+ if (isType(child, PlanAction)) actions.push(child);else if (isType(child, PlanIcon)) icons.push(child);else headings.push(child);
202
+ }
203
+ return /*#__PURE__*/_jsxs(View, {
204
+ ...props,
205
+ className: cn(header(), className),
206
+ children: [icons, /*#__PURE__*/_jsx(View, {
207
+ className: heading(),
208
+ children: headings
209
+ }), actions]
210
+ });
211
+ }
212
+ function isType(child, type) {
213
+ return typeof child === 'object' && child !== null && 'type' in child && child.type === type;
214
+ }
215
+ /** A badge on the header's leading edge — what kind of plan this is. */
216
+ function PlanIcon({
217
+ className,
218
+ children,
219
+ ...props
220
+ }) {
221
+ const {
222
+ icon
223
+ } = planVariants();
224
+ return /*#__PURE__*/_jsx(View, {
225
+ ...props,
226
+ className: cn(icon(), className),
227
+ children: children
228
+ });
229
+ }
230
+ /** The plan's name. Shimmers while it is still being written. */
231
+ function PlanTitle({
232
+ className,
233
+ children,
234
+ ...props
235
+ }) {
236
+ const {
237
+ isStreaming
238
+ } = usePlan('Plan.Title');
239
+ const {
240
+ title
241
+ } = planVariants();
242
+ if (isStreaming && typeof children === 'string') {
243
+ return /*#__PURE__*/_jsx(Shimmer, {
244
+ textClassName: cn(title(), className),
245
+ children: children
246
+ });
247
+ }
248
+ return /*#__PURE__*/_jsx(Text, {
249
+ accessibilityRole: "header",
250
+ className: cn(title(), className),
251
+ ...props,
252
+ children: children
253
+ });
254
+ }
255
+ function PlanDescription({
256
+ className,
257
+ children,
258
+ ...props
259
+ }) {
260
+ const {
261
+ isStreaming
262
+ } = usePlan('Plan.Description');
263
+ const {
264
+ description
265
+ } = planVariants();
266
+ if (isStreaming && typeof children === 'string') {
267
+ return /*#__PURE__*/_jsx(Shimmer, {
268
+ textClassName: cn(description(), className),
269
+ children: children
270
+ });
271
+ }
272
+ return /*#__PURE__*/_jsx(Text, {
273
+ className: cn(description(), className),
274
+ ...props,
275
+ children: children
276
+ });
277
+ }
278
+ /** Pinned to the header's trailing edge — the toggle, a badge, a menu. */
279
+ function PlanAction({
280
+ className,
281
+ children,
282
+ ...props
283
+ }) {
284
+ const {
285
+ action
286
+ } = planVariants();
287
+ return /*#__PURE__*/_jsx(View, {
288
+ ...props,
289
+ className: cn(action(), className),
290
+ children: children
291
+ });
292
+ }
293
+ /** Folds the body away. Its chevron turns to point at the state it will reach. */
294
+ function PlanTrigger({
295
+ className,
296
+ children,
297
+ onPress,
298
+ ...props
299
+ }) {
300
+ const {
301
+ open,
302
+ setOpen
303
+ } = usePlan('Plan.Trigger');
304
+ const {
305
+ trigger
306
+ } = planVariants();
307
+ const reducedMotion = useReducedMotion();
308
+ const progress = useSharedValue(open ? 1 : 0);
309
+ useEffect(() => {
310
+ progress.value = reducedMotion ? open ? 1 : 0 : withTiming(open ? 1 : 0, {
311
+ duration: 180
312
+ });
313
+ }, [open, reducedMotion, progress]);
314
+ const chevronStyle = useAnimatedStyle(() => ({
315
+ transform: [{
316
+ rotate: `${progress.value * 180}deg`
317
+ }]
318
+ }));
319
+ return /*#__PURE__*/_jsx(Pressable, {
320
+ accessibilityRole: "button",
321
+ accessibilityLabel: open ? 'Collapse plan' : 'Expand plan',
322
+ accessibilityState: {
323
+ expanded: open
324
+ },
325
+ hitSlop: 6,
326
+ onPress: event => {
327
+ onPress?.(event);
328
+ setOpen(!open);
329
+ },
330
+ className: cn(trigger(), className),
331
+ ...props,
332
+ children: children ?? /*#__PURE__*/_jsx(Animated.View, {
333
+ style: chevronStyle,
334
+ children: /*#__PURE__*/_jsx(ChevronDownIcon, {
335
+ size: 16
336
+ })
337
+ })
338
+ });
339
+ }
340
+ /** The steps. Collapses rather than unmounting, so it can still be growing. */
341
+ function PlanContent({
342
+ className,
343
+ children,
344
+ ...props
345
+ }) {
346
+ const {
347
+ open
348
+ } = usePlan('Plan.Content');
349
+ const {
350
+ content,
351
+ description
352
+ } = planVariants();
353
+ return /*#__PURE__*/_jsx(Collapse, {
354
+ open: open,
355
+ className: cn(content(), className),
356
+ ...props,
357
+ children: textChildren(children, text => /*#__PURE__*/_jsx(Text, {
358
+ className: description(),
359
+ children: text
360
+ }))
361
+ });
362
+ }
363
+
364
+ /**
365
+ * Where a step sits in the rail. Provided by `Plan.Steps` rather than passed
366
+ * down, so steps produced by a `.map()` through a component of your own still
367
+ * know they are last — a prop set on that wrapper would never reach the step.
368
+ */
369
+ const PlanStepContext = /*#__PURE__*/createContext({
370
+ last: false
371
+ });
372
+ /**
373
+ * The rail. A plan is an ordered list of things that will happen, and this is
374
+ * the list — a paragraph describing the same four steps cannot be glanced at to
375
+ * see which one is running.
376
+ *
377
+ * It counts its own steps and reports the count up, which is what lets
378
+ * `Plan.Progress` sit in the header without the caller stating the total twice.
379
+ */
380
+ function PlanSteps({
381
+ className,
382
+ children,
383
+ ...props
384
+ }) {
385
+ const {
386
+ reportCounts
387
+ } = usePlan('Plan.Steps');
388
+ const {
389
+ steps
390
+ } = planVariants();
391
+ const items = useMemo(() => Children.toArray(children).filter(child => /*#__PURE__*/isValidElement(child)), [children]);
392
+ const counts = useMemo(() => {
393
+ let done = 0;
394
+ let total = 0;
395
+ for (const item of items) {
396
+ if (!isType(item, PlanStep)) continue;
397
+ total += 1;
398
+ // A skipped step is settled too — a plan that reports 2 of 4 while two
399
+ // more were deliberately passed over is reporting the wrong thing.
400
+ const status = item.props.status;
401
+ if (status === 'done' || status === 'skipped') done += 1;
402
+ }
403
+ return {
404
+ done,
405
+ total
406
+ };
407
+ }, [items]);
408
+ useEffect(() => {
409
+ reportCounts(counts);
410
+ }, [counts, reportCounts]);
411
+ return /*#__PURE__*/_jsx(View, {
412
+ ...props,
413
+ role: "list",
414
+ className: cn(steps(), className),
415
+ children: items.map((item, index) => /*#__PURE__*/_jsx(PlanStepContext.Provider, {
416
+ value: {
417
+ last: index === items.length - 1
418
+ },
419
+ children: item
420
+ }, index))
421
+ });
422
+ }
423
+ /**
424
+ * One step. The marker says which of the four states it is in and the rail
425
+ * below it is filled once it is done, so the plan's progress is legible from
426
+ * the shape of the left-hand column alone.
427
+ */
428
+ function PlanStep({
429
+ className,
430
+ status = 'pending',
431
+ description,
432
+ meta,
433
+ last,
434
+ children,
435
+ ...props
436
+ }) {
437
+ const {
438
+ isStreaming
439
+ } = usePlan('Plan.Step');
440
+ const position = useContext(PlanStepContext);
441
+ const isLast = last ?? position.last;
442
+ const {
443
+ step,
444
+ stepRail,
445
+ stepMarker,
446
+ stepConnector,
447
+ stepBody,
448
+ stepTitle,
449
+ stepDescription,
450
+ stepMeta
451
+ } = planVariants();
452
+ const tone = stepStatus[status];
453
+ const onPrimary = useCSSVariable('--color-primary-foreground');
454
+ const title = stepTitle({
455
+ className: tone.title
456
+ });
457
+ // Only the step that is running is still arriving. Shimmering a finished one
458
+ // would say it is still being written, and shimmering the whole rail would
459
+ // say nothing at all.
460
+ const streamingTitle = isStreaming && status === 'active' && typeof children === 'string';
461
+ return /*#__PURE__*/_jsxs(View, {
462
+ ...props,
463
+ role: "listitem",
464
+ className: cn(step(), className),
465
+ children: [/*#__PURE__*/_jsxs(View, {
466
+ className: stepRail(),
467
+ children: [/*#__PURE__*/_jsx(View, {
468
+ className: stepMarker({
469
+ className: tone.marker
470
+ }),
471
+ children: status === 'done' ? /*#__PURE__*/_jsx(CheckIcon, {
472
+ size: 10,
473
+ color: typeof onPrimary === 'string' ? onPrimary : '#ffffff'
474
+ }) : status === 'active' ? /*#__PURE__*/_jsx(View, {
475
+ className: "h-1.5 w-1.5 rounded-full bg-primary"
476
+ }) : null
477
+ }), isLast ? null : /*#__PURE__*/_jsx(View, {
478
+ className: stepConnector({
479
+ className: tone.connector
480
+ })
481
+ })]
482
+ }), /*#__PURE__*/_jsxs(View, {
483
+ className: cn(stepBody(), isLast && 'pb-0'),
484
+ children: [streamingTitle ? /*#__PURE__*/_jsx(Shimmer, {
485
+ textClassName: title,
486
+ children: children
487
+ }) : textChildren(children, text => /*#__PURE__*/_jsx(Text, {
488
+ className: title,
489
+ children: text
490
+ })), textChildren(description, text => /*#__PURE__*/_jsx(Text, {
491
+ className: stepDescription(),
492
+ children: text
493
+ })), meta === undefined ? null : /*#__PURE__*/_jsx(View, {
494
+ className: stepMeta(),
495
+ children: textChildren(meta, text => /*#__PURE__*/_jsx(Text, {
496
+ className: "font-mono text-[11px] text-muted-foreground",
497
+ children: text
498
+ }))
499
+ })]
500
+ })]
501
+ });
502
+ }
503
+ /**
504
+ * How far down the rail the plan has got, as `2 of 4`. Renders nothing until
505
+ * there is a rail to count — a plan with no steps has no progress to report,
506
+ * and `0 of 0` is worse than silence.
507
+ */
508
+ function PlanProgress({
509
+ className,
510
+ value,
511
+ total,
512
+ ...props
513
+ }) {
514
+ const {
515
+ counts
516
+ } = usePlan('Plan.Progress');
517
+ const {
518
+ progress
519
+ } = planVariants();
520
+ const done = value ?? counts?.done;
521
+ const all = total ?? counts?.total;
522
+ if (done === undefined || !all) return null;
523
+ return /*#__PURE__*/_jsxs(Text, {
524
+ className: cn(progress(), className),
525
+ ...props,
526
+ children: [done, " of ", all]
527
+ });
528
+ }
529
+ /**
530
+ * Where the buttons that answer the plan go.
531
+ *
532
+ * Each action takes an equal share of the row by default. A pair of small
533
+ * buttons hugging the trailing corner is a pointer-and-cursor shape; on a phone
534
+ * the answer to "shall I do this" is the most important control on the screen
535
+ * and wants to be hit without aiming.
536
+ */
537
+ function PlanFooter({
538
+ className,
539
+ layout = 'stretch',
540
+ children,
541
+ ...props
542
+ }) {
543
+ const {
544
+ footer
545
+ } = planVariants();
546
+ return /*#__PURE__*/_jsx(View, {
547
+ ...props,
548
+ className: cn(footer(), layout === 'end' && 'justify-end', className),
549
+ children: layout === 'stretch' ?
550
+ // A view stretches its children across the cross axis by default, so
551
+ // a button inside one of these fills it without being told to.
552
+ Children.map(children, child => /*#__PURE__*/isValidElement(child) ? /*#__PURE__*/_jsx(View, {
553
+ className: "flex-1",
554
+ children: child
555
+ }) : child) : children
556
+ });
557
+ }
558
+ PlanHeader.displayName = 'Plan.Header';
559
+ PlanIcon.displayName = 'Plan.Icon';
560
+ PlanTitle.displayName = 'Plan.Title';
561
+ PlanDescription.displayName = 'Plan.Description';
562
+ PlanAction.displayName = 'Plan.Action';
563
+ PlanProgress.displayName = 'Plan.Progress';
564
+ PlanTrigger.displayName = 'Plan.Trigger';
565
+ PlanContent.displayName = 'Plan.Content';
566
+ PlanSteps.displayName = 'Plan.Steps';
567
+ PlanStep.displayName = 'Plan.Step';
568
+ PlanFooter.displayName = 'Plan.Footer';
569
+ export const Plan = Object.assign(PlanRoot, {
570
+ Header: PlanHeader,
571
+ Icon: PlanIcon,
572
+ Title: PlanTitle,
573
+ Description: PlanDescription,
574
+ Action: PlanAction,
575
+ Progress: PlanProgress,
576
+ Trigger: PlanTrigger,
577
+ Content: PlanContent,
578
+ Steps: PlanSteps,
579
+ Step: PlanStep,
580
+ Footer: PlanFooter
581
+ });
582
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Children","createContext","isValidElement","useCallback","useContext","useEffect","useMemo","useState","Pressable","View","Animated","useAnimatedStyle","useReducedMotion","useSharedValue","withTiming","tv","useCSSVariable","CheckIcon","ChevronDownIcon","Collapse","Text","textChildren","cn","Shimmer","jsx","_jsx","jsxs","_jsxs","planVariants","slots","root","header","icon","heading","title","description","action","progress","trigger","content","steps","step","stepRail","stepMarker","stepConnector","stepBody","stepTitle","stepDescription","stepMeta","footer","stepStatus","pending","marker","connector","active","done","skipped","PlanContext","usePlan","component","context","Error","PlanRoot","className","isStreaming","open","openProp","defaultOpen","onOpenChange","children","props","internalOpen","setInternalOpen","isControlled","undefined","setOpen","next","counts","setCounts","reportCounts","current","total","Provider","value","displayName","PlanHeader","icons","headings","actions","child","Array","isArray","isType","PlanAction","push","PlanIcon","type","PlanTitle","textClassName","accessibilityRole","PlanDescription","PlanTrigger","onPress","reducedMotion","duration","chevronStyle","transform","rotate","accessibilityLabel","accessibilityState","expanded","hitSlop","event","style","size","PlanContent","text","PlanStepContext","last","PlanSteps","items","toArray","filter","item","PlanStep","status","role","map","index","length","meta","position","isLast","tone","onPrimary","streamingTitle","color","PlanProgress","all","PlanFooter","layout","Plan","Object","assign","Header","Icon","Title","Description","Action","Progress","Trigger","Content","Steps","Step","Footer"],"sourceRoot":"../../../../src","sources":["components/plan/index.tsx"],"mappings":"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","ignoreList":[]}