paseo-plugin-chat-view 0.0.0-stage → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/LICENSE.compact-agent-activity +21 -0
- package/LICENSE.mermaid +21 -0
- package/README.md +428 -2
- package/README_zh.md +429 -0
- package/client/activity/Activity.test.ts +220 -0
- package/client/activity/Activity.tsx +784 -0
- package/client/activity/detail/detail.test.ts +102 -0
- package/client/activity/detail/dispatch.tsx +94 -0
- package/client/activity/detail/file.tsx +93 -0
- package/client/activity/detail/index.tsx +39 -0
- package/client/activity/detail/parts.tsx +221 -0
- package/client/activity/detail/search.tsx +59 -0
- package/client/activity/detail/terminal.tsx +53 -0
- package/client/activity/detail/texts.tsx +42 -0
- package/client/activity/disclosure.ts +49 -0
- package/client/activity/dom.test.ts +52 -0
- package/client/activity/dom.ts +138 -0
- package/client/activity/group-store.test.ts +126 -0
- package/client/activity/group-store.ts +265 -0
- package/client/activity/highlight.test.ts +116 -0
- package/client/activity/highlight.ts +418 -0
- package/client/activity/history.test.ts +602 -0
- package/client/activity/history.ts +239 -0
- package/client/activity/index.ts +74 -0
- package/client/activity/latest-marker.test.ts +41 -0
- package/client/activity/latest-marker.ts +70 -0
- package/client/activity/styles.ts +535 -0
- package/client/activity/tools/child-agent.tsx +308 -0
- package/client/activity/tools/exa.tsx +99 -0
- package/client/activity/tools/github.tsx +501 -0
- package/client/activity/tools/list.tsx +102 -0
- package/client/activity/tools/lists.test.ts +193 -0
- package/client/activity/tools/paseo/agent.tsx +384 -0
- package/client/activity/tools/paseo/browser.tsx +322 -0
- package/client/activity/tools/paseo/index.tsx +79 -0
- package/client/activity/tools/paseo/parts.tsx +133 -0
- package/client/activity/tools/paseo/provider.tsx +220 -0
- package/client/activity/tools/paseo/schedule.tsx +246 -0
- package/client/activity/tools/paseo/speak.tsx +20 -0
- package/client/activity/tools/paseo/terminal.tsx +214 -0
- package/client/activity/tools/paseo/workspace.tsx +162 -0
- package/client/activity/tools/shared.tsx +431 -0
- package/client/activity/transform.test.ts +28 -0
- package/client/activity/transform.ts +43 -0
- package/client/agent-pills.ts +56 -0
- package/client/dom.ts +75 -0
- package/client/enhance/controller.ts +111 -0
- package/client/enhance/dom.test.ts +28 -0
- package/client/enhance/dom.ts +101 -0
- package/client/enhance/index.ts +95 -0
- package/client/enhance/pill.tsx +19 -0
- package/client/enhance/state.ts +58 -0
- package/client/feature.ts +22 -0
- package/client/features.test.ts +149 -0
- package/client/features.ts +83 -0
- package/client/locale.ts +45 -0
- package/client/mermaid/diagram.tsx +438 -0
- package/client/mermaid/index.ts +27 -0
- package/client/mermaid/item.tsx +28 -0
- package/client/mermaid/markdown.tsx +217 -0
- package/client/mermaid/registration.ts +32 -0
- package/client/mermaid/toolbar.tsx +175 -0
- package/client/mermaid/viewer.tsx +314 -0
- package/client/readonly/dom.test.ts +66 -0
- package/client/readonly/dom.ts +32 -0
- package/client/readonly/index.ts +27 -0
- package/client/registration.test.ts +243 -0
- package/client/settings.tsx +438 -0
- package/client/sticky/StickyBar.tsx +144 -0
- package/client/sticky/dom.test.ts +230 -0
- package/client/sticky/dom.ts +517 -0
- package/client/sticky/index.ts +38 -0
- package/client/sticky/pill.tsx +70 -0
- package/client/timeline-pager.test.ts +121 -0
- package/client/timeline-pager.ts +123 -0
- package/index.client.tsx +44 -0
- package/index.server.ts +12 -0
- package/package.json +42 -4
- package/paseo-plugin.json +6 -0
- package/server/enhance/index.ts +63 -0
- package/server/enhance/manifest.ts +176 -0
- package/server/enhance/probe.test.ts +215 -0
- package/server/enhance/probe.ts +118 -0
- package/server/enhance/provider.ts +149 -0
- package/shared/activity/child-agent.test.ts +27 -0
- package/shared/activity/child-agent.ts +26 -0
- package/shared/activity/diff.test.ts +74 -0
- package/shared/activity/diff.ts +207 -0
- package/shared/activity/exa.test.ts +66 -0
- package/shared/activity/exa.ts +183 -0
- package/shared/activity/file-kind.test.ts +13 -0
- package/shared/activity/file-kind.ts +112 -0
- package/shared/activity/github.test.ts +56 -0
- package/shared/activity/github.ts +174 -0
- package/shared/activity/palette.test.ts +26 -0
- package/shared/activity/palette.ts +106 -0
- package/shared/activity/parse.test.ts +39 -0
- package/shared/activity/parse.ts +115 -0
- package/shared/activity/paseo-tools.test.ts +163 -0
- package/shared/activity/paseo-tools.ts +497 -0
- package/shared/activity/text.test.ts +85 -0
- package/shared/activity/text.ts +202 -0
- package/shared/activity/timeline.test.ts +26 -0
- package/shared/activity/timeline.ts +108 -0
- package/shared/activity/tool-presentation.test.ts +154 -0
- package/shared/activity/tool-presentation.ts +352 -0
- package/shared/enhance/contract.ts +105 -0
- package/shared/enhance/decide.ts +97 -0
- package/shared/enhance/enhance.test.ts +188 -0
- package/shared/enhance/failure.ts +40 -0
- package/shared/enhance/index.ts +8 -0
- package/shared/enhance/normalize.ts +16 -0
- package/shared/enhance/parse.ts +79 -0
- package/shared/enhance/policy.ts +48 -0
- package/shared/enhance/prompt.ts +134 -0
- package/shared/enhance/run.ts +84 -0
- package/shared/i18n.test.ts +81 -0
- package/shared/i18n.ts +300 -0
- package/shared/mermaid/flowchart.test.ts +169 -0
- package/shared/mermaid/flowchart.ts +271 -0
- package/shared/mermaid/layout.test.ts +305 -0
- package/shared/mermaid/layout.ts +496 -0
- package/shared/mermaid/parse.test.ts +110 -0
- package/shared/mermaid/parse.ts +193 -0
- package/shared/mermaid/segment.test.ts +55 -0
- package/shared/mermaid/segment.ts +95 -0
- package/shared/mermaid/sequence.test.ts +68 -0
- package/shared/mermaid/sequence.ts +130 -0
- package/shared/mermaid/transform.test.ts +52 -0
- package/shared/mermaid/transform.ts +45 -0
- package/shared/mermaid/zoom.test.ts +134 -0
- package/shared/mermaid/zoom.ts +114 -0
- package/shared/settings.ts +41 -0
- package/shared/sticky/history.test.ts +91 -0
- package/shared/sticky/history.ts +86 -0
|
@@ -0,0 +1,535 @@
|
|
|
1
|
+
import type { PluginTimelineItemProps } from "@getpaseo/plugin/client";
|
|
2
|
+
import { useSettings } from "@getpaseo/plugin/client";
|
|
3
|
+
import { useMemo } from "react";
|
|
4
|
+
import type { TextStyle, ViewStyle } from "react-native";
|
|
5
|
+
import { resolveActivityPalette } from "../../shared/activity/palette";
|
|
6
|
+
import type { ActivityPalette, ActivityThemeColors } from "../../shared/activity/palette";
|
|
7
|
+
import { activitySettings, DEFAULT_PALETTE_MODE } from "../../shared/settings";
|
|
8
|
+
|
|
9
|
+
/** Palette and style derivation shared by the compact-activity rows and the tool detail panels. */
|
|
10
|
+
export type Theme = PluginTimelineItemProps["theme"];
|
|
11
|
+
|
|
12
|
+
const MAX_DETAIL_HEIGHT = 420;
|
|
13
|
+
/**
|
|
14
|
+
* Theme objects are rebuilt on the host's schedule, so depending on the object identity
|
|
15
|
+
* invalidated every memo below. Depend on the color content instead.
|
|
16
|
+
*/
|
|
17
|
+
function useThemeColorsKey(theme: Theme): string {
|
|
18
|
+
const colors = theme.colors as unknown as Record<string, unknown>;
|
|
19
|
+
return useMemo(
|
|
20
|
+
() =>
|
|
21
|
+
Object.keys(colors)
|
|
22
|
+
.sort()
|
|
23
|
+
.map((name) => `${name}:${String(colors[name])}`)
|
|
24
|
+
.join("|"),
|
|
25
|
+
[colors],
|
|
26
|
+
);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export function usePalette(theme: Theme): ActivityPalette {
|
|
30
|
+
const settings = useSettings(activitySettings);
|
|
31
|
+
const mode = settings.status === "ready" ? settings.values.palette : DEFAULT_PALETTE_MODE;
|
|
32
|
+
const colorsKey = useThemeColorsKey(theme);
|
|
33
|
+
const colors = theme.colors as ActivityThemeColors;
|
|
34
|
+
return useMemo(() => resolveActivityPalette(mode, colors), [mode, colorsKey]); // eslint-disable-line react-hooks/exhaustive-deps
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export function useActivityStyles(theme: Theme, palette: ActivityPalette) {
|
|
38
|
+
const themeColorsKey = useThemeColorsKey(theme);
|
|
39
|
+
return useMemo(
|
|
40
|
+
() => ({
|
|
41
|
+
card: {
|
|
42
|
+
marginHorizontal: 0,
|
|
43
|
+
marginVertical: -3,
|
|
44
|
+
} satisfies ViewStyle,
|
|
45
|
+
headerButton: {
|
|
46
|
+
alignItems: "center",
|
|
47
|
+
borderRadius: 2,
|
|
48
|
+
flexDirection: "row",
|
|
49
|
+
gap: 5,
|
|
50
|
+
minWidth: 0,
|
|
51
|
+
outlineColor: "transparent",
|
|
52
|
+
outlineStyle: "none" as unknown as ViewStyle["outlineStyle"],
|
|
53
|
+
outlineWidth: 0,
|
|
54
|
+
overflow: "hidden",
|
|
55
|
+
paddingHorizontal: 5,
|
|
56
|
+
paddingVertical: 2,
|
|
57
|
+
} satisfies ViewStyle,
|
|
58
|
+
iconBadge: {
|
|
59
|
+
alignItems: "center",
|
|
60
|
+
height: 16,
|
|
61
|
+
justifyContent: "center",
|
|
62
|
+
width: 16,
|
|
63
|
+
} satisfies ViewStyle,
|
|
64
|
+
title: {
|
|
65
|
+
color: theme.colors.foreground,
|
|
66
|
+
flexShrink: 0,
|
|
67
|
+
fontFamily: "monospace",
|
|
68
|
+
fontSize: 12,
|
|
69
|
+
fontWeight: "600",
|
|
70
|
+
lineHeight: 17,
|
|
71
|
+
} satisfies TextStyle,
|
|
72
|
+
summary: {
|
|
73
|
+
color: theme.colors.foregroundMuted,
|
|
74
|
+
flex: 1,
|
|
75
|
+
flexShrink: 1,
|
|
76
|
+
fontFamily: "monospace",
|
|
77
|
+
fontSize: 12,
|
|
78
|
+
lineHeight: 17,
|
|
79
|
+
minWidth: 0,
|
|
80
|
+
} satisfies TextStyle,
|
|
81
|
+
status: {
|
|
82
|
+
alignItems: "center",
|
|
83
|
+
flexDirection: "row",
|
|
84
|
+
marginLeft: 2,
|
|
85
|
+
} satisfies ViewStyle,
|
|
86
|
+
stats: {
|
|
87
|
+
alignItems: "center",
|
|
88
|
+
flexDirection: "row",
|
|
89
|
+
gap: 3,
|
|
90
|
+
marginLeft: 2,
|
|
91
|
+
} satisfies ViewStyle,
|
|
92
|
+
additions: {
|
|
93
|
+
color: theme.colors.statusSuccess,
|
|
94
|
+
fontFamily: "monospace",
|
|
95
|
+
fontSize: 10,
|
|
96
|
+
lineHeight: 15,
|
|
97
|
+
} satisfies TextStyle,
|
|
98
|
+
deletions: {
|
|
99
|
+
color: theme.colors.statusDanger,
|
|
100
|
+
fontFamily: "monospace",
|
|
101
|
+
fontSize: 10,
|
|
102
|
+
lineHeight: 15,
|
|
103
|
+
} satisfies TextStyle,
|
|
104
|
+
details: {
|
|
105
|
+
borderLeftColor: theme.colors.border,
|
|
106
|
+
borderLeftWidth: 1,
|
|
107
|
+
flexShrink: 1,
|
|
108
|
+
marginLeft: 12,
|
|
109
|
+
minWidth: 0,
|
|
110
|
+
overflow: "hidden",
|
|
111
|
+
} satisfies ViewStyle,
|
|
112
|
+
detailsScroll: {
|
|
113
|
+
maxHeight: MAX_DETAIL_HEIGHT,
|
|
114
|
+
} satisfies ViewStyle,
|
|
115
|
+
detailsContent: {
|
|
116
|
+
gap: 6,
|
|
117
|
+
paddingHorizontal: 7,
|
|
118
|
+
paddingVertical: 5,
|
|
119
|
+
} satisfies ViewStyle,
|
|
120
|
+
detailLabel: {
|
|
121
|
+
color: theme.colors.foregroundMuted,
|
|
122
|
+
fontFamily: "monospace",
|
|
123
|
+
fontSize: 10,
|
|
124
|
+
fontWeight: "500",
|
|
125
|
+
letterSpacing: 0.35,
|
|
126
|
+
lineHeight: 14,
|
|
127
|
+
textTransform: "uppercase",
|
|
128
|
+
} satisfies TextStyle,
|
|
129
|
+
detailText: {
|
|
130
|
+
color: theme.colors.foreground,
|
|
131
|
+
fontFamily: "monospace",
|
|
132
|
+
fontSize: 11,
|
|
133
|
+
lineHeight: 16,
|
|
134
|
+
} satisfies TextStyle,
|
|
135
|
+
mutedText: {
|
|
136
|
+
color: theme.colors.foregroundMuted,
|
|
137
|
+
fontFamily: "monospace",
|
|
138
|
+
fontSize: 11,
|
|
139
|
+
lineHeight: 16,
|
|
140
|
+
} satisfies TextStyle,
|
|
141
|
+
pathRow: {
|
|
142
|
+
alignItems: "center",
|
|
143
|
+
flexDirection: "row",
|
|
144
|
+
gap: 5,
|
|
145
|
+
minWidth: 0,
|
|
146
|
+
} satisfies ViewStyle,
|
|
147
|
+
pathText: {
|
|
148
|
+
color: theme.colors.foreground,
|
|
149
|
+
flex: 1,
|
|
150
|
+
fontFamily: "monospace",
|
|
151
|
+
fontSize: 11,
|
|
152
|
+
lineHeight: 16,
|
|
153
|
+
} satisfies TextStyle,
|
|
154
|
+
section: {
|
|
155
|
+
gap: 3,
|
|
156
|
+
} satisfies ViewStyle,
|
|
157
|
+
showMoreButton: {
|
|
158
|
+
alignSelf: "flex-start",
|
|
159
|
+
paddingHorizontal: 6,
|
|
160
|
+
paddingVertical: 3,
|
|
161
|
+
borderRadius: 2,
|
|
162
|
+
marginTop: 3,
|
|
163
|
+
} satisfies ViewStyle,
|
|
164
|
+
showMoreText: {
|
|
165
|
+
color: palette.categoryColors.agent,
|
|
166
|
+
fontFamily: "monospace",
|
|
167
|
+
fontSize: 10,
|
|
168
|
+
fontWeight: "600",
|
|
169
|
+
lineHeight: 14,
|
|
170
|
+
} satisfies TextStyle,
|
|
171
|
+
codeSurface: {
|
|
172
|
+
backgroundColor: theme.colors.surface0,
|
|
173
|
+
borderColor: theme.colors.border,
|
|
174
|
+
borderRadius: 2,
|
|
175
|
+
borderWidth: 1,
|
|
176
|
+
minWidth: "100%",
|
|
177
|
+
paddingHorizontal: 6,
|
|
178
|
+
paddingVertical: 4,
|
|
179
|
+
} satisfies ViewStyle,
|
|
180
|
+
codeScroll: {
|
|
181
|
+
maxWidth: "100%",
|
|
182
|
+
} satisfies ViewStyle,
|
|
183
|
+
codeLine: {
|
|
184
|
+
color: theme.colors.foreground,
|
|
185
|
+
fontFamily: "monospace",
|
|
186
|
+
fontSize: 11,
|
|
187
|
+
lineHeight: 16,
|
|
188
|
+
minHeight: 16,
|
|
189
|
+
} satisfies TextStyle,
|
|
190
|
+
diffSurface: {
|
|
191
|
+
backgroundColor: theme.colors.surface0,
|
|
192
|
+
borderColor: theme.colors.border,
|
|
193
|
+
borderRadius: 2,
|
|
194
|
+
borderWidth: 1,
|
|
195
|
+
minWidth: "100%",
|
|
196
|
+
overflow: "hidden",
|
|
197
|
+
paddingVertical: 2,
|
|
198
|
+
} satisfies ViewStyle,
|
|
199
|
+
diffLine: {
|
|
200
|
+
flexDirection: "row",
|
|
201
|
+
minHeight: 16,
|
|
202
|
+
paddingHorizontal: 5,
|
|
203
|
+
} satisfies ViewStyle,
|
|
204
|
+
diffMarker: {
|
|
205
|
+
fontFamily: "monospace",
|
|
206
|
+
fontSize: 11,
|
|
207
|
+
lineHeight: 16,
|
|
208
|
+
width: 12,
|
|
209
|
+
} satisfies TextStyle,
|
|
210
|
+
diffText: {
|
|
211
|
+
flexShrink: 0,
|
|
212
|
+
fontFamily: "monospace",
|
|
213
|
+
fontSize: 11,
|
|
214
|
+
lineHeight: 16,
|
|
215
|
+
} satisfies TextStyle,
|
|
216
|
+
diffAdded: {
|
|
217
|
+
backgroundColor: palette.categoryBackgrounds.agent,
|
|
218
|
+
} satisfies ViewStyle,
|
|
219
|
+
diffRemoved: {
|
|
220
|
+
backgroundColor: palette.statusBackgrounds.failed,
|
|
221
|
+
} satisfies ViewStyle,
|
|
222
|
+
diffMeta: {
|
|
223
|
+
backgroundColor: palette.categoryBackgrounds.search,
|
|
224
|
+
} satisfies ViewStyle,
|
|
225
|
+
reasoningBody: {
|
|
226
|
+
gap: 3,
|
|
227
|
+
paddingHorizontal: 7,
|
|
228
|
+
paddingVertical: 5,
|
|
229
|
+
} satisfies ViewStyle,
|
|
230
|
+
reasoningLine: {
|
|
231
|
+
color: theme.colors.foreground,
|
|
232
|
+
fontFamily: "monospace",
|
|
233
|
+
fontSize: 12,
|
|
234
|
+
lineHeight: 17,
|
|
235
|
+
} satisfies TextStyle,
|
|
236
|
+
reasoningHeading: {
|
|
237
|
+
color: theme.colors.foreground,
|
|
238
|
+
fontFamily: "monospace",
|
|
239
|
+
fontSize: 12,
|
|
240
|
+
fontWeight: "600",
|
|
241
|
+
lineHeight: 17,
|
|
242
|
+
} satisfies TextStyle,
|
|
243
|
+
reasoningBullet: {
|
|
244
|
+
color: theme.colors.foregroundMuted,
|
|
245
|
+
fontFamily: "monospace",
|
|
246
|
+
fontSize: 12,
|
|
247
|
+
lineHeight: 17,
|
|
248
|
+
width: 14,
|
|
249
|
+
} satisfies TextStyle,
|
|
250
|
+
reasoningBulletRow: {
|
|
251
|
+
alignItems: "flex-start",
|
|
252
|
+
flexDirection: "row",
|
|
253
|
+
gap: 4,
|
|
254
|
+
} satisfies ViewStyle,
|
|
255
|
+
reasoningQuote: {
|
|
256
|
+
borderLeftColor: theme.colors.border,
|
|
257
|
+
borderLeftWidth: 1,
|
|
258
|
+
color: theme.colors.foregroundMuted,
|
|
259
|
+
fontFamily: "monospace",
|
|
260
|
+
fontSize: 12,
|
|
261
|
+
lineHeight: 17,
|
|
262
|
+
paddingLeft: 6,
|
|
263
|
+
} satisfies TextStyle,
|
|
264
|
+
reasoningInlineCode: {
|
|
265
|
+
backgroundColor: theme.colors.surface2,
|
|
266
|
+
color: theme.colors.foreground,
|
|
267
|
+
fontFamily: "monospace",
|
|
268
|
+
fontSize: 11,
|
|
269
|
+
paddingHorizontal: 2,
|
|
270
|
+
} satisfies TextStyle,
|
|
271
|
+
reasoningSpacer: {
|
|
272
|
+
height: 2,
|
|
273
|
+
} satisfies ViewStyle,
|
|
274
|
+
subAgentProgress: {
|
|
275
|
+
borderLeftColor: theme.colors.border,
|
|
276
|
+
borderLeftWidth: 1,
|
|
277
|
+
gap: 1,
|
|
278
|
+
marginLeft: 12,
|
|
279
|
+
paddingBottom: 2,
|
|
280
|
+
paddingLeft: 7,
|
|
281
|
+
paddingTop: 1,
|
|
282
|
+
} satisfies ViewStyle,
|
|
283
|
+
subAgentLine: {
|
|
284
|
+
alignItems: "center",
|
|
285
|
+
flexDirection: "row",
|
|
286
|
+
gap: 5,
|
|
287
|
+
minWidth: 0,
|
|
288
|
+
} satisfies ViewStyle,
|
|
289
|
+
subAgentLineIcon: {
|
|
290
|
+
alignItems: "center",
|
|
291
|
+
justifyContent: "center",
|
|
292
|
+
width: 14,
|
|
293
|
+
} satisfies ViewStyle,
|
|
294
|
+
subAgentLineLabel: {
|
|
295
|
+
color: theme.colors.foreground,
|
|
296
|
+
flexShrink: 0,
|
|
297
|
+
fontFamily: "monospace",
|
|
298
|
+
fontSize: 11,
|
|
299
|
+
fontWeight: "600",
|
|
300
|
+
lineHeight: 16,
|
|
301
|
+
} satisfies TextStyle,
|
|
302
|
+
subAgentLineSummary: {
|
|
303
|
+
color: theme.colors.foregroundMuted,
|
|
304
|
+
flex: 1,
|
|
305
|
+
flexShrink: 1,
|
|
306
|
+
fontFamily: "monospace",
|
|
307
|
+
fontSize: 11,
|
|
308
|
+
lineHeight: 16,
|
|
309
|
+
minWidth: 0,
|
|
310
|
+
} satisfies TextStyle,
|
|
311
|
+
subAgentMore: {
|
|
312
|
+
color: theme.colors.foregroundMuted,
|
|
313
|
+
fontFamily: "monospace",
|
|
314
|
+
fontSize: 11,
|
|
315
|
+
lineHeight: 16,
|
|
316
|
+
paddingLeft: 19,
|
|
317
|
+
} satisfies TextStyle,
|
|
318
|
+
subAgentAction: {
|
|
319
|
+
alignItems: "center",
|
|
320
|
+
flexDirection: "row",
|
|
321
|
+
gap: 5,
|
|
322
|
+
minWidth: 0,
|
|
323
|
+
paddingLeft: 19,
|
|
324
|
+
} satisfies ViewStyle,
|
|
325
|
+
subAgentActionIcon: {
|
|
326
|
+
alignItems: "center",
|
|
327
|
+
justifyContent: "center",
|
|
328
|
+
width: 14,
|
|
329
|
+
} satisfies ViewStyle,
|
|
330
|
+
subAgentActionLabel: {
|
|
331
|
+
color: theme.colors.foreground,
|
|
332
|
+
flexShrink: 0,
|
|
333
|
+
fontFamily: "monospace",
|
|
334
|
+
fontSize: 11,
|
|
335
|
+
lineHeight: 16,
|
|
336
|
+
} satisfies TextStyle,
|
|
337
|
+
subAgentActionSummary: {
|
|
338
|
+
color: theme.colors.foregroundMuted,
|
|
339
|
+
flex: 1,
|
|
340
|
+
flexShrink: 1,
|
|
341
|
+
fontFamily: "monospace",
|
|
342
|
+
fontSize: 11,
|
|
343
|
+
lineHeight: 16,
|
|
344
|
+
minWidth: 0,
|
|
345
|
+
} satisfies TextStyle,
|
|
346
|
+
childTimelineSection: {
|
|
347
|
+
gap: 2,
|
|
348
|
+
} satisfies ViewStyle,
|
|
349
|
+
childTimelineHeader: {
|
|
350
|
+
alignItems: "center",
|
|
351
|
+
flexDirection: "row",
|
|
352
|
+
gap: 5,
|
|
353
|
+
} satisfies ViewStyle,
|
|
354
|
+
childTimelineList: {
|
|
355
|
+
borderLeftColor: theme.colors.border,
|
|
356
|
+
borderLeftWidth: 1,
|
|
357
|
+
gap: 1,
|
|
358
|
+
marginLeft: 7,
|
|
359
|
+
paddingLeft: 7,
|
|
360
|
+
} satisfies ViewStyle,
|
|
361
|
+
childTimelineItem: {
|
|
362
|
+
alignItems: "center",
|
|
363
|
+
flexDirection: "row",
|
|
364
|
+
gap: 5,
|
|
365
|
+
minWidth: 0,
|
|
366
|
+
paddingVertical: 1,
|
|
367
|
+
} satisfies ViewStyle,
|
|
368
|
+
childTimelineItemTitle: {
|
|
369
|
+
color: theme.colors.foreground,
|
|
370
|
+
flexShrink: 0,
|
|
371
|
+
fontFamily: "monospace",
|
|
372
|
+
fontSize: 11,
|
|
373
|
+
fontWeight: "500",
|
|
374
|
+
lineHeight: 15,
|
|
375
|
+
} satisfies TextStyle,
|
|
376
|
+
childTimelineItemSummary: {
|
|
377
|
+
color: theme.colors.foregroundMuted,
|
|
378
|
+
flex: 1,
|
|
379
|
+
flexShrink: 1,
|
|
380
|
+
fontFamily: "monospace",
|
|
381
|
+
fontSize: 10,
|
|
382
|
+
lineHeight: 14,
|
|
383
|
+
minWidth: 0,
|
|
384
|
+
} satisfies TextStyle,
|
|
385
|
+
childTimelineItemMeta: {
|
|
386
|
+
color: theme.colors.foregroundMuted,
|
|
387
|
+
flexShrink: 0,
|
|
388
|
+
fontFamily: "monospace",
|
|
389
|
+
fontSize: 10,
|
|
390
|
+
lineHeight: 14,
|
|
391
|
+
} satisfies TextStyle,
|
|
392
|
+
empty: {
|
|
393
|
+
color: theme.colors.foregroundMuted,
|
|
394
|
+
fontFamily: "monospace",
|
|
395
|
+
fontSize: 11,
|
|
396
|
+
lineHeight: 16,
|
|
397
|
+
} satisfies TextStyle,
|
|
398
|
+
paseoStack: {
|
|
399
|
+
gap: 6,
|
|
400
|
+
} satisfies ViewStyle,
|
|
401
|
+
paseoHero: {
|
|
402
|
+
borderLeftColor: theme.colors.border,
|
|
403
|
+
borderLeftWidth: 2,
|
|
404
|
+
paddingHorizontal: 6,
|
|
405
|
+
paddingVertical: 2,
|
|
406
|
+
} satisfies ViewStyle,
|
|
407
|
+
paseoHeroRow: {
|
|
408
|
+
alignItems: "center",
|
|
409
|
+
flexDirection: "row",
|
|
410
|
+
gap: 6,
|
|
411
|
+
} satisfies ViewStyle,
|
|
412
|
+
paseoHeroIcon: {
|
|
413
|
+
alignItems: "center",
|
|
414
|
+
height: 16,
|
|
415
|
+
justifyContent: "center",
|
|
416
|
+
width: 16,
|
|
417
|
+
} satisfies ViewStyle,
|
|
418
|
+
paseoHeroTitle: {
|
|
419
|
+
color: theme.colors.foreground,
|
|
420
|
+
flexShrink: 1,
|
|
421
|
+
fontFamily: "monospace",
|
|
422
|
+
fontSize: 11,
|
|
423
|
+
fontWeight: "600",
|
|
424
|
+
lineHeight: 16,
|
|
425
|
+
} satisfies TextStyle,
|
|
426
|
+
paseoHeroSubtitle: {
|
|
427
|
+
color: theme.colors.foregroundMuted,
|
|
428
|
+
flexShrink: 1,
|
|
429
|
+
fontFamily: "monospace",
|
|
430
|
+
fontSize: 10,
|
|
431
|
+
lineHeight: 14,
|
|
432
|
+
} satisfies TextStyle,
|
|
433
|
+
paseoRows: {
|
|
434
|
+
gap: 2,
|
|
435
|
+
} satisfies ViewStyle,
|
|
436
|
+
paseoRow: {
|
|
437
|
+
alignItems: "flex-start",
|
|
438
|
+
flexDirection: "row",
|
|
439
|
+
gap: 8,
|
|
440
|
+
minWidth: 0,
|
|
441
|
+
} satisfies ViewStyle,
|
|
442
|
+
paseoKey: {
|
|
443
|
+
color: theme.colors.foregroundMuted,
|
|
444
|
+
flexShrink: 0,
|
|
445
|
+
fontFamily: "monospace",
|
|
446
|
+
fontSize: 10,
|
|
447
|
+
lineHeight: 15,
|
|
448
|
+
minWidth: 90,
|
|
449
|
+
} satisfies TextStyle,
|
|
450
|
+
paseoValue: {
|
|
451
|
+
color: theme.colors.foreground,
|
|
452
|
+
flex: 1,
|
|
453
|
+
flexShrink: 1,
|
|
454
|
+
fontFamily: "monospace",
|
|
455
|
+
fontSize: 11,
|
|
456
|
+
lineHeight: 15,
|
|
457
|
+
minWidth: 0,
|
|
458
|
+
} satisfies TextStyle,
|
|
459
|
+
paseoPrompt: {
|
|
460
|
+
backgroundColor: theme.colors.surface0,
|
|
461
|
+
borderLeftColor: theme.colors.border,
|
|
462
|
+
borderLeftWidth: 1,
|
|
463
|
+
color: theme.colors.foreground,
|
|
464
|
+
fontFamily: "monospace",
|
|
465
|
+
fontSize: 11,
|
|
466
|
+
lineHeight: 16,
|
|
467
|
+
paddingHorizontal: 6,
|
|
468
|
+
paddingVertical: 4,
|
|
469
|
+
} satisfies TextStyle,
|
|
470
|
+
paseoList: {
|
|
471
|
+
gap: 0,
|
|
472
|
+
} satisfies ViewStyle,
|
|
473
|
+
paseoListItem: {
|
|
474
|
+
borderTopColor: theme.colors.border,
|
|
475
|
+
borderTopWidth: 1,
|
|
476
|
+
gap: 1,
|
|
477
|
+
paddingHorizontal: 5,
|
|
478
|
+
paddingVertical: 3,
|
|
479
|
+
} satisfies ViewStyle,
|
|
480
|
+
paseoListItemHeader: {
|
|
481
|
+
alignItems: "center",
|
|
482
|
+
flexDirection: "row",
|
|
483
|
+
gap: 7,
|
|
484
|
+
minWidth: 0,
|
|
485
|
+
} satisfies ViewStyle,
|
|
486
|
+
paseoListItemTitle: {
|
|
487
|
+
color: theme.colors.foreground,
|
|
488
|
+
flex: 1,
|
|
489
|
+
flexShrink: 1,
|
|
490
|
+
fontFamily: "monospace",
|
|
491
|
+
fontSize: 11,
|
|
492
|
+
fontWeight: "500",
|
|
493
|
+
lineHeight: 15,
|
|
494
|
+
minWidth: 0,
|
|
495
|
+
} satisfies TextStyle,
|
|
496
|
+
paseoListItemMeta: {
|
|
497
|
+
color: theme.colors.foregroundMuted,
|
|
498
|
+
fontFamily: "monospace",
|
|
499
|
+
fontSize: 10,
|
|
500
|
+
lineHeight: 14,
|
|
501
|
+
} satisfies TextStyle,
|
|
502
|
+
paseoChips: {
|
|
503
|
+
flexDirection: "row",
|
|
504
|
+
flexWrap: "wrap",
|
|
505
|
+
gap: 5,
|
|
506
|
+
} satisfies ViewStyle,
|
|
507
|
+
paseoChip: {
|
|
508
|
+
borderColor: theme.colors.border,
|
|
509
|
+
borderRadius: 2,
|
|
510
|
+
borderWidth: 1,
|
|
511
|
+
paddingHorizontal: 4,
|
|
512
|
+
paddingVertical: 1,
|
|
513
|
+
} satisfies ViewStyle,
|
|
514
|
+
paseoChipText: {
|
|
515
|
+
color: theme.colors.foregroundMuted,
|
|
516
|
+
fontFamily: "monospace",
|
|
517
|
+
fontSize: 10,
|
|
518
|
+
lineHeight: 14,
|
|
519
|
+
} satisfies TextStyle,
|
|
520
|
+
paseoStatus: {
|
|
521
|
+
alignSelf: "flex-start",
|
|
522
|
+
} satisfies ViewStyle,
|
|
523
|
+
paseoStatusText: {
|
|
524
|
+
color: theme.colors.foreground,
|
|
525
|
+
fontFamily: "monospace",
|
|
526
|
+
fontSize: 10,
|
|
527
|
+
fontWeight: "500",
|
|
528
|
+
lineHeight: 14,
|
|
529
|
+
} satisfies TextStyle,
|
|
530
|
+
}),
|
|
531
|
+
[palette, themeColorsKey],
|
|
532
|
+
);
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
export type ActivityStyles = ReturnType<typeof useActivityStyles>;
|