@buoy-gg/ask-buoy 7.0.34 → 7.0.35
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/README.md +1 -1
- package/lib/commonjs/blocks/AskBlocks.js +338 -1
- package/lib/commonjs/blocks/AskBlocks.js.map +1 -0
- package/lib/commonjs/blocks/BlockRenderer.js +250 -1
- package/lib/commonjs/blocks/BlockRenderer.js.map +1 -0
- package/lib/commonjs/blocks/ChromePrototypes.js +514 -1
- package/lib/commonjs/blocks/ChromePrototypes.js.map +1 -0
- package/lib/commonjs/blocks/DataBlocks.js +688 -1
- package/lib/commonjs/blocks/DataBlocks.js.map +1 -0
- package/lib/commonjs/blocks/ExtraBlocks.js +1854 -1
- package/lib/commonjs/blocks/ExtraBlocks.js.map +1 -0
- package/lib/commonjs/blocks/MediaBlocks.js +140 -1
- package/lib/commonjs/blocks/MediaBlocks.js.map +1 -0
- package/lib/commonjs/blocks/ReceiptBlocks.js +586 -1
- package/lib/commonjs/blocks/ReceiptBlocks.js.map +1 -0
- package/lib/commonjs/blocks/context.js +42 -1
- package/lib/commonjs/blocks/context.js.map +1 -0
- package/lib/commonjs/blocks/icons.js +96 -1
- package/lib/commonjs/blocks/icons.js.map +1 -0
- package/lib/commonjs/blocks/index.js +95 -1
- package/lib/commonjs/blocks/index.js.map +1 -0
- package/lib/commonjs/blocks/listRow.test.js +55 -0
- package/lib/commonjs/blocks/listRow.test.js.map +1 -0
- package/lib/commonjs/blocks/pageState.js +34 -0
- package/lib/commonjs/blocks/pageState.js.map +1 -0
- package/lib/commonjs/blocks/pageState.test.js +57 -0
- package/lib/commonjs/blocks/pageState.test.js.map +1 -0
- package/lib/commonjs/blocks/primitives.js +401 -1
- package/lib/commonjs/blocks/primitives.js.map +1 -0
- package/lib/commonjs/blocks/primitivesIndex.js +62 -1
- package/lib/commonjs/blocks/primitivesIndex.js.map +1 -0
- package/lib/commonjs/components/ApprovalCard.js +140 -1
- package/lib/commonjs/components/ApprovalCard.js.map +1 -0
- package/lib/commonjs/components/AskBuoyHeader.js +164 -1
- package/lib/commonjs/components/AskBuoyHeader.js.map +1 -0
- package/lib/commonjs/components/AskBuoyIcon.js +19 -1
- package/lib/commonjs/components/AskBuoyIcon.js.map +1 -0
- package/lib/commonjs/components/AskBuoyModal.js +353 -1
- package/lib/commonjs/components/AskBuoyModal.js.map +1 -0
- package/lib/commonjs/components/AskBuoySettings.js +69 -0
- package/lib/commonjs/components/AskBuoySettings.js.map +1 -0
- package/lib/commonjs/components/ChangesBar.js +211 -1
- package/lib/commonjs/components/ChangesBar.js.map +1 -0
- package/lib/commonjs/components/Composer.js +175 -1
- package/lib/commonjs/components/Composer.js.map +1 -0
- package/lib/commonjs/components/EmptyState.js +154 -1
- package/lib/commonjs/components/EmptyState.js.map +1 -0
- package/lib/commonjs/components/Markdown.js +252 -1
- package/lib/commonjs/components/Markdown.js.map +1 -0
- package/lib/commonjs/components/MessageList.js +683 -1
- package/lib/commonjs/components/MessageList.js.map +1 -0
- package/lib/commonjs/components/ThinkingStrip.js +223 -0
- package/lib/commonjs/components/ThinkingStrip.js.map +1 -0
- package/lib/commonjs/components/TypingDots.js +63 -1
- package/lib/commonjs/components/TypingDots.js.map +1 -0
- package/lib/commonjs/components/useCopyAction.js +50 -0
- package/lib/commonjs/components/useCopyAction.js.map +1 -0
- package/lib/commonjs/index.js +252 -1
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/preset.js +90 -1
- package/lib/commonjs/preset.js.map +1 -0
- package/lib/commonjs/store/askBuoySettings.js +67 -0
- package/lib/commonjs/store/askBuoySettings.js.map +1 -0
- package/lib/commonjs/store/askBuoyStore.js +365 -1
- package/lib/commonjs/store/askBuoyStore.js.map +1 -0
- package/lib/commonjs/store/restoredIds.test.js +47 -0
- package/lib/commonjs/store/restoredIds.test.js.map +1 -0
- package/lib/commonjs/store/traceText.js +81 -0
- package/lib/commonjs/store/traceText.js.map +1 -0
- package/lib/commonjs/store/traceText.test.js +112 -0
- package/lib/commonjs/store/traceText.test.js.map +1 -0
- package/lib/commonjs/store/transcriptPersistence.js +208 -0
- package/lib/commonjs/store/transcriptPersistence.js.map +1 -0
- package/lib/commonjs/store/transcriptPersistence.test.js +185 -0
- package/lib/commonjs/store/transcriptPersistence.test.js.map +1 -0
- package/lib/commonjs/store/useAskBuoy.js +400 -1
- package/lib/commonjs/store/useAskBuoy.js.map +1 -0
- package/lib/commonjs/store/useAskBuoySettings.js +14 -0
- package/lib/commonjs/store/useAskBuoySettings.js.map +1 -0
- package/lib/commonjs/sync/askBuoySyncAdapter.js +119 -1
- package/lib/commonjs/sync/askBuoySyncAdapter.js.map +1 -0
- package/lib/commonjs/sync/askBuoySyncAdapter.test.js +141 -1
- package/lib/commonjs/sync/askBuoySyncAdapter.test.js.map +1 -0
- package/lib/commonjs/sync/wire.js +58 -1
- package/lib/commonjs/sync/wire.js.map +1 -0
- package/lib/commonjs/types.js +6 -1
- package/lib/commonjs/types.js.map +1 -0
- package/lib/module/blocks/AskBlocks.js +331 -1
- package/lib/module/blocks/AskBlocks.js.map +1 -0
- package/lib/module/blocks/BlockRenderer.js +245 -1
- package/lib/module/blocks/BlockRenderer.js.map +1 -0
- package/lib/module/blocks/ChromePrototypes.js +503 -1
- package/lib/module/blocks/ChromePrototypes.js.map +1 -0
- package/lib/module/blocks/DataBlocks.js +674 -1
- package/lib/module/blocks/DataBlocks.js.map +1 -0
- package/lib/module/blocks/ExtraBlocks.js +1827 -1
- package/lib/module/blocks/ExtraBlocks.js.map +1 -0
- package/lib/module/blocks/MediaBlocks.js +135 -1
- package/lib/module/blocks/MediaBlocks.js.map +1 -0
- package/lib/module/blocks/ReceiptBlocks.js +574 -1
- package/lib/module/blocks/ReceiptBlocks.js.map +1 -0
- package/lib/module/blocks/context.js +35 -1
- package/lib/module/blocks/context.js.map +1 -0
- package/lib/module/blocks/icons.js +91 -1
- package/lib/module/blocks/icons.js.map +1 -0
- package/lib/module/blocks/index.js +8 -1
- package/lib/module/blocks/index.js.map +1 -0
- package/lib/module/blocks/listRow.test.js +56 -0
- package/lib/module/blocks/listRow.test.js.map +1 -0
- package/lib/module/blocks/pageState.js +30 -0
- package/lib/module/blocks/pageState.js.map +1 -0
- package/lib/module/blocks/pageState.test.js +56 -0
- package/lib/module/blocks/pageState.test.js.map +1 -0
- package/lib/module/blocks/primitives.js +389 -1
- package/lib/module/blocks/primitives.js.map +1 -0
- package/lib/module/blocks/primitivesIndex.js +5 -1
- package/lib/module/blocks/primitivesIndex.js.map +1 -0
- package/lib/module/components/ApprovalCard.js +135 -1
- package/lib/module/components/ApprovalCard.js.map +1 -0
- package/lib/module/components/AskBuoyHeader.js +161 -1
- package/lib/module/components/AskBuoyHeader.js.map +1 -0
- package/lib/module/components/AskBuoyIcon.js +8 -1
- package/lib/module/components/AskBuoyIcon.js.map +1 -0
- package/lib/module/components/AskBuoyModal.js +348 -1
- package/lib/module/components/AskBuoyModal.js.map +1 -0
- package/lib/module/components/AskBuoySettings.js +64 -0
- package/lib/module/components/AskBuoySettings.js.map +1 -0
- package/lib/module/components/ChangesBar.js +206 -1
- package/lib/module/components/ChangesBar.js.map +1 -0
- package/lib/module/components/Composer.js +170 -1
- package/lib/module/components/Composer.js.map +1 -0
- package/lib/module/components/EmptyState.js +149 -1
- package/lib/module/components/EmptyState.js.map +1 -0
- package/lib/module/components/Markdown.js +246 -1
- package/lib/module/components/Markdown.js.map +1 -0
- package/lib/module/components/MessageList.js +677 -1
- package/lib/module/components/MessageList.js.map +1 -0
- package/lib/module/components/ThinkingStrip.js +218 -0
- package/lib/module/components/ThinkingStrip.js.map +1 -0
- package/lib/module/components/TypingDots.js +58 -1
- package/lib/module/components/TypingDots.js.map +1 -0
- package/lib/module/components/useCopyAction.js +46 -0
- package/lib/module/components/useCopyAction.js.map +1 -0
- package/lib/module/index.js +34 -1
- package/lib/module/index.js.map +1 -0
- package/lib/module/preset.js +73 -1
- package/lib/module/preset.js.map +1 -0
- package/lib/module/store/askBuoySettings.js +62 -0
- package/lib/module/store/askBuoySettings.js.map +1 -0
- package/lib/module/store/askBuoyStore.js +361 -1
- package/lib/module/store/askBuoyStore.js.map +1 -0
- package/lib/module/store/restoredIds.test.js +46 -0
- package/lib/module/store/restoredIds.test.js.map +1 -0
- package/lib/module/store/traceText.js +75 -0
- package/lib/module/store/traceText.js.map +1 -0
- package/lib/module/store/traceText.test.js +111 -0
- package/lib/module/store/traceText.test.js.map +1 -0
- package/lib/module/store/transcriptPersistence.js +198 -0
- package/lib/module/store/transcriptPersistence.js.map +1 -0
- package/lib/module/store/transcriptPersistence.test.js +184 -0
- package/lib/module/store/transcriptPersistence.test.js.map +1 -0
- package/lib/module/store/useAskBuoy.js +394 -1
- package/lib/module/store/useAskBuoy.js.map +1 -0
- package/lib/module/store/useAskBuoySettings.js +9 -0
- package/lib/module/store/useAskBuoySettings.js.map +1 -0
- package/lib/module/sync/askBuoySyncAdapter.js +114 -1
- package/lib/module/sync/askBuoySyncAdapter.js.map +1 -0
- package/lib/module/sync/askBuoySyncAdapter.test.js +140 -1
- package/lib/module/sync/askBuoySyncAdapter.test.js.map +1 -0
- package/lib/module/sync/wire.js +47 -1
- package/lib/module/sync/wire.js.map +1 -0
- package/lib/module/types.js +4 -1
- package/lib/module/types.js.map +1 -0
- package/lib/typescript/blocks/AskBlocks.d.ts.map +1 -0
- package/lib/typescript/blocks/BlockRenderer.d.ts.map +1 -0
- package/lib/typescript/blocks/ChromePrototypes.d.ts.map +1 -0
- package/lib/typescript/blocks/DataBlocks.d.ts +31 -0
- package/lib/typescript/blocks/DataBlocks.d.ts.map +1 -0
- package/lib/typescript/blocks/ExtraBlocks.d.ts +11 -0
- package/lib/typescript/blocks/ExtraBlocks.d.ts.map +1 -0
- package/lib/typescript/blocks/MediaBlocks.d.ts.map +1 -0
- package/lib/typescript/blocks/ReceiptBlocks.d.ts.map +1 -0
- package/lib/typescript/blocks/context.d.ts.map +1 -0
- package/lib/typescript/blocks/icons.d.ts.map +1 -0
- package/lib/typescript/blocks/index.d.ts.map +1 -0
- package/lib/typescript/blocks/listRow.test.d.ts +2 -0
- package/lib/typescript/blocks/listRow.test.d.ts.map +1 -0
- package/lib/typescript/blocks/pageState.d.ts +23 -0
- package/lib/typescript/blocks/pageState.d.ts.map +1 -0
- package/lib/typescript/blocks/pageState.test.d.ts +2 -0
- package/lib/typescript/blocks/pageState.test.d.ts.map +1 -0
- package/lib/typescript/blocks/primitives.d.ts +39 -9
- package/lib/typescript/blocks/primitives.d.ts.map +1 -0
- package/lib/typescript/blocks/primitivesIndex.d.ts +2 -1
- package/lib/typescript/blocks/primitivesIndex.d.ts.map +1 -0
- package/lib/typescript/components/ApprovalCard.d.ts.map +1 -0
- package/lib/typescript/components/AskBuoyHeader.d.ts +11 -1
- package/lib/typescript/components/AskBuoyHeader.d.ts.map +1 -0
- package/lib/typescript/components/AskBuoyIcon.d.ts.map +1 -0
- package/lib/typescript/components/AskBuoyModal.d.ts.map +1 -0
- package/lib/typescript/components/AskBuoySettings.d.ts +2 -0
- package/lib/typescript/components/AskBuoySettings.d.ts.map +1 -0
- package/lib/typescript/components/ChangesBar.d.ts.map +1 -0
- package/lib/typescript/components/Composer.d.ts.map +1 -0
- package/lib/typescript/components/EmptyState.d.ts.map +1 -0
- package/lib/typescript/components/Markdown.d.ts.map +1 -0
- package/lib/typescript/components/MessageList.d.ts +12 -5
- package/lib/typescript/components/MessageList.d.ts.map +1 -0
- package/lib/typescript/components/ThinkingStrip.d.ts +5 -0
- package/lib/typescript/components/ThinkingStrip.d.ts.map +1 -0
- package/lib/typescript/components/TypingDots.d.ts.map +1 -0
- package/lib/typescript/components/useCopyAction.d.ts +5 -0
- package/lib/typescript/components/useCopyAction.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +5 -0
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/preset.d.ts.map +1 -0
- package/lib/typescript/store/askBuoySettings.d.ts +22 -0
- package/lib/typescript/store/askBuoySettings.d.ts.map +1 -0
- package/lib/typescript/store/askBuoyStore.d.ts +74 -13
- package/lib/typescript/store/askBuoyStore.d.ts.map +1 -0
- package/lib/typescript/store/restoredIds.test.d.ts +2 -0
- package/lib/typescript/store/restoredIds.test.d.ts.map +1 -0
- package/lib/typescript/store/traceText.d.ts +33 -0
- package/lib/typescript/store/traceText.d.ts.map +1 -0
- package/lib/typescript/store/traceText.test.d.ts +2 -0
- package/lib/typescript/store/traceText.test.d.ts.map +1 -0
- package/lib/typescript/store/transcriptPersistence.d.ts +40 -0
- package/lib/typescript/store/transcriptPersistence.d.ts.map +1 -0
- package/lib/typescript/store/transcriptPersistence.test.d.ts +2 -0
- package/lib/typescript/store/transcriptPersistence.test.d.ts.map +1 -0
- package/lib/typescript/store/useAskBuoy.d.ts.map +1 -0
- package/lib/typescript/store/useAskBuoySettings.d.ts +3 -0
- package/lib/typescript/store/useAskBuoySettings.d.ts.map +1 -0
- package/lib/typescript/sync/askBuoySyncAdapter.d.ts.map +1 -0
- package/lib/typescript/sync/askBuoySyncAdapter.test.d.ts.map +1 -0
- package/lib/typescript/sync/wire.d.ts.map +1 -0
- package/lib/typescript/types.d.ts +24 -1
- package/lib/typescript/types.d.ts.map +1 -0
- package/package.json +8 -8
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useCallback","useEffect","useRef","useState","ActivityIndicator","FlatList","Pressable","StyleSheet","Text","View","AlertTriangle","Check","ChevronDown","ChevronRight","Copy","night","X","isAskBlock","toolTitle","BlockRenderer","Markdown","ThinkingStrip","TypingDots","useCopyAction","traceToText","useAskBuoySettings","jsx","_jsx","jsxs","_jsxs","StatusMark","status","size","color","textSecondary","style","styles","mark","markOk","children","onAccent","markFailed","text","markRefused","statusText","call","tone","summary","ActivityRow","last","open","setOpen","Chevron","failureDetail","testID","toolId","accessibilityRole","accessibilityLabel","label","accessibilityState","expanded","onPress","v","row","rowDivider","rowLine","markSlot","rowTitle","rowStatus","rowStatusDanger","rowStatusWarning","numberOfLines","textTertiary","rowDetail","rowTool","toUpperCase","description","rowDescription","rowFailure","COLLAPSE_AFTER","ActivityCard","calls","setExpanded","running","some","c","collapse","length","failed","filter","refused","shown","card","map","i","id","Blocks","blocks","block","UserMessage","message","userWrap","userBubble","userText","selectable","AssistantMessage","onRetry","showThinking","toolCalls","waiting","streaming","askBlocks","b","showBlocks","assistantWrap","assistantText","error","ErrorNote","network","test","headline","errorBox","danger","errorBody","errorText","errorDetail","pressed","retry","retryPressed","retryText","transcriptToText","messages","withTrace","lines","m","role","push","join","CopyPill","getText","copied","copy","copyBtn","iconBtn","copyPressed","accent","copyText","copiedText","TranscriptActions","transcriptActions","Row","finished","MessageList","ListHeaderComponent","ListEmptyComponent","ListFooterComponent","ref","pinned","dragging","measure","e","contentOffset","contentSize","layoutMeasurement","nativeEvent","distance","height","y","current","onScrollBeginDrag","onScroll","onScrollEndDrag","scrollToEnd","animated","requestAnimationFrame","tail","list","contentContainerStyle","listContent","data","keyExtractor","renderItem","item","undefined","onMomentumScrollEnd","scrollEventThrottle","onContentSizeChange","keyboardShouldPersistTaps","keyboardDismissMode","create","flex","backgroundColor","paddingHorizontal","gutter","paddingTop","paddingBottom","gap","flexGrow","alignItems","maxWidth","paddingVertical","borderRadius","borderBottomRightRadius","accentFill","borderWidth","hairlineWidth","borderColor","accentBorder","fontSize","font","lineHeight","radius","border","surface","overflow","borderBottomWidth","borderBottomColor","separator","flexDirection","width","justifyContent","warning","body","caption","paddingLeft","micro","fontWeight","letterSpacing","dangerSoft","alignSelf","marginTop","button","opacity","badge","fill"],"sourceRoot":"../../../src","sources":["components/MessageList.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* The agent's own working, under an answer, collapsed by default.
|
|
5
|
+
*
|
|
6
|
+
* Collapsed is the whole design constraint. A multi-step turn's reasoning is
|
|
7
|
+
* longer than the answer it produced, and rendered open it pushes the answer —
|
|
8
|
+
* the thing the user came for — off the screen. So the strip is one line until
|
|
9
|
+
* someone wants it, and the summary on that line ("3 steps · 2 thoughts") is
|
|
10
|
+
* enough to tell whether opening it is worth it.
|
|
11
|
+
*
|
|
12
|
+
* Every step is expandable on its own too, because the parameters are the
|
|
13
|
+
* useful part when hunting a bug and the tool name alone is not.
|
|
14
|
+
*/
|
|
15
|
+
import { useState } from "react";
|
|
16
|
+
import { Pressable, StyleSheet, Text, View } from "react-native";
|
|
17
|
+
import { Activity, ChevronDown, ChevronRight, night } from "@buoy-gg/shared-ui";
|
|
18
|
+
import { hasTrace, traceEntries } from "../store/traceText";
|
|
19
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
20
|
+
function StepRow({
|
|
21
|
+
n,
|
|
22
|
+
call
|
|
23
|
+
}) {
|
|
24
|
+
const [open, setOpen] = useState(false);
|
|
25
|
+
const failed = call.status === "failed" || call.status === "refused";
|
|
26
|
+
return /*#__PURE__*/_jsxs(Pressable, {
|
|
27
|
+
onPress: () => setOpen(v => !v),
|
|
28
|
+
accessibilityRole: "button",
|
|
29
|
+
accessibilityState: {
|
|
30
|
+
expanded: open
|
|
31
|
+
},
|
|
32
|
+
style: styles.step,
|
|
33
|
+
children: [/*#__PURE__*/_jsxs(View, {
|
|
34
|
+
style: styles.stepLine,
|
|
35
|
+
children: [/*#__PURE__*/_jsx(Text, {
|
|
36
|
+
style: styles.stepN,
|
|
37
|
+
children: n
|
|
38
|
+
}), /*#__PURE__*/_jsxs(Text, {
|
|
39
|
+
style: [styles.stepName, failed && styles.stepFailed],
|
|
40
|
+
numberOfLines: 1,
|
|
41
|
+
children: [call.toolId, ".", call.action]
|
|
42
|
+
}), call.durationMs !== undefined ? /*#__PURE__*/_jsxs(Text, {
|
|
43
|
+
style: styles.stepMs,
|
|
44
|
+
children: [call.durationMs, "ms"]
|
|
45
|
+
}) : null, /*#__PURE__*/_jsx(Text, {
|
|
46
|
+
style: [styles.stepStatus, failed && styles.stepFailed],
|
|
47
|
+
numberOfLines: 1,
|
|
48
|
+
children: call.status === "ok" ? call.summary || "done" : call.status
|
|
49
|
+
})]
|
|
50
|
+
}), open ? /*#__PURE__*/_jsxs(View, {
|
|
51
|
+
style: styles.detail,
|
|
52
|
+
children: [/*#__PURE__*/_jsx(Text, {
|
|
53
|
+
style: styles.detailLabel,
|
|
54
|
+
children: "SENT"
|
|
55
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
56
|
+
style: styles.code,
|
|
57
|
+
selectable: true,
|
|
58
|
+
children: call.params ?? "no parameters"
|
|
59
|
+
}), call.result ? /*#__PURE__*/_jsxs(_Fragment, {
|
|
60
|
+
children: [/*#__PURE__*/_jsx(Text, {
|
|
61
|
+
style: styles.detailLabel,
|
|
62
|
+
children: "RETURNED"
|
|
63
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
64
|
+
style: styles.code,
|
|
65
|
+
selectable: true,
|
|
66
|
+
children: call.result
|
|
67
|
+
})]
|
|
68
|
+
}) : null]
|
|
69
|
+
}) : null]
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
export function ThinkingStrip({
|
|
73
|
+
message
|
|
74
|
+
}) {
|
|
75
|
+
const [open, setOpen] = useState(false);
|
|
76
|
+
if (!hasTrace(message)) return null;
|
|
77
|
+
const entries = traceEntries(message);
|
|
78
|
+
const steps = entries.filter(e => e.kind === "step").length;
|
|
79
|
+
const thoughts = entries.length - steps;
|
|
80
|
+
const wall = message.startedAt !== undefined && message.endedAt !== undefined ? `${((message.endedAt - message.startedAt) / 1000).toFixed(1)}s` : null;
|
|
81
|
+
const summary = [steps ? `${steps} step${steps === 1 ? "" : "s"}` : null, thoughts ? `${thoughts} thought${thoughts === 1 ? "" : "s"}` : null, wall, message.usage ? `${message.usage.input + message.usage.output} tokens` : null].filter(Boolean).join(" · ");
|
|
82
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
83
|
+
style: styles.wrap,
|
|
84
|
+
testID: "buoy-ask-buoy-thinking",
|
|
85
|
+
children: [/*#__PURE__*/_jsxs(Pressable, {
|
|
86
|
+
testID: "buoy-ask-buoy-thinking-toggle",
|
|
87
|
+
onPress: () => setOpen(v => !v),
|
|
88
|
+
accessibilityRole: "button",
|
|
89
|
+
accessibilityLabel: open ? "Hide agent thinking" : "Show agent thinking",
|
|
90
|
+
accessibilityState: {
|
|
91
|
+
expanded: open
|
|
92
|
+
},
|
|
93
|
+
style: styles.head,
|
|
94
|
+
children: [/*#__PURE__*/_jsx(Activity, {
|
|
95
|
+
size: 12,
|
|
96
|
+
color: night.color.textTertiary
|
|
97
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
98
|
+
style: styles.headText,
|
|
99
|
+
children: summary
|
|
100
|
+
}), open ? /*#__PURE__*/_jsx(ChevronDown, {
|
|
101
|
+
size: 12,
|
|
102
|
+
color: night.color.textTertiary
|
|
103
|
+
}) : /*#__PURE__*/_jsx(ChevronRight, {
|
|
104
|
+
size: 12,
|
|
105
|
+
color: night.color.textTertiary
|
|
106
|
+
})]
|
|
107
|
+
}), open ? /*#__PURE__*/_jsxs(View, {
|
|
108
|
+
style: styles.body,
|
|
109
|
+
children: [entries.map((entry, i) => entry.kind === "thought" ? /*#__PURE__*/_jsx(Text, {
|
|
110
|
+
style: styles.thought,
|
|
111
|
+
selectable: true,
|
|
112
|
+
children: entry.text.trim()
|
|
113
|
+
}, `t${i}`) : /*#__PURE__*/_jsx(StepRow, {
|
|
114
|
+
n: entry.n,
|
|
115
|
+
call: entry.call
|
|
116
|
+
}, entry.call.id)), thoughts === 0 ?
|
|
117
|
+
/*#__PURE__*/
|
|
118
|
+
// Said plainly, because an empty reasoning section reads as broken.
|
|
119
|
+
// Most models report none: Claude thinks by default, gpt-4.1 never.
|
|
120
|
+
_jsx(Text, {
|
|
121
|
+
style: styles.none,
|
|
122
|
+
children: "This model reports no reasoning \u2014 the steps above are the whole trace."
|
|
123
|
+
}) : null]
|
|
124
|
+
}) : null]
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
const styles = StyleSheet.create({
|
|
128
|
+
wrap: {
|
|
129
|
+
marginTop: 8,
|
|
130
|
+
borderRadius: night.radius.badge,
|
|
131
|
+
borderWidth: StyleSheet.hairlineWidth,
|
|
132
|
+
borderColor: night.color.separator,
|
|
133
|
+
backgroundColor: night.color.fill,
|
|
134
|
+
overflow: "hidden"
|
|
135
|
+
},
|
|
136
|
+
head: {
|
|
137
|
+
flexDirection: "row",
|
|
138
|
+
alignItems: "center",
|
|
139
|
+
gap: 6,
|
|
140
|
+
paddingHorizontal: 10,
|
|
141
|
+
paddingVertical: 7
|
|
142
|
+
},
|
|
143
|
+
headText: {
|
|
144
|
+
flex: 1,
|
|
145
|
+
color: night.color.textTertiary,
|
|
146
|
+
fontSize: night.font.micro,
|
|
147
|
+
fontWeight: "600"
|
|
148
|
+
},
|
|
149
|
+
body: {
|
|
150
|
+
borderTopWidth: StyleSheet.hairlineWidth,
|
|
151
|
+
borderTopColor: night.color.separator
|
|
152
|
+
},
|
|
153
|
+
thought: {
|
|
154
|
+
color: night.color.textSecondary,
|
|
155
|
+
fontSize: night.font.micro,
|
|
156
|
+
lineHeight: 17,
|
|
157
|
+
fontStyle: "italic",
|
|
158
|
+
paddingHorizontal: 10,
|
|
159
|
+
paddingVertical: 8
|
|
160
|
+
},
|
|
161
|
+
step: {
|
|
162
|
+
paddingHorizontal: 10,
|
|
163
|
+
paddingVertical: 7
|
|
164
|
+
},
|
|
165
|
+
stepLine: {
|
|
166
|
+
flexDirection: "row",
|
|
167
|
+
alignItems: "center",
|
|
168
|
+
gap: 8
|
|
169
|
+
},
|
|
170
|
+
stepN: {
|
|
171
|
+
color: night.color.textTertiary,
|
|
172
|
+
fontSize: night.font.micro,
|
|
173
|
+
width: 14
|
|
174
|
+
},
|
|
175
|
+
stepName: {
|
|
176
|
+
flex: 1,
|
|
177
|
+
color: night.color.textSecondary,
|
|
178
|
+
fontSize: night.font.micro,
|
|
179
|
+
fontWeight: "600"
|
|
180
|
+
},
|
|
181
|
+
stepMs: {
|
|
182
|
+
color: night.color.textTertiary,
|
|
183
|
+
fontSize: night.font.micro
|
|
184
|
+
},
|
|
185
|
+
stepStatus: {
|
|
186
|
+
color: night.color.textTertiary,
|
|
187
|
+
fontSize: night.font.micro,
|
|
188
|
+
maxWidth: 110
|
|
189
|
+
},
|
|
190
|
+
stepFailed: {
|
|
191
|
+
color: night.color.danger
|
|
192
|
+
},
|
|
193
|
+
detail: {
|
|
194
|
+
marginTop: 6,
|
|
195
|
+
marginLeft: 22,
|
|
196
|
+
gap: 3
|
|
197
|
+
},
|
|
198
|
+
detailLabel: {
|
|
199
|
+
color: night.color.textTertiary,
|
|
200
|
+
fontSize: 9,
|
|
201
|
+
fontWeight: "700",
|
|
202
|
+
letterSpacing: 0.5
|
|
203
|
+
},
|
|
204
|
+
code: {
|
|
205
|
+
color: night.color.textSecondary,
|
|
206
|
+
fontSize: night.font.micro,
|
|
207
|
+
lineHeight: 16,
|
|
208
|
+
marginBottom: 3
|
|
209
|
+
},
|
|
210
|
+
none: {
|
|
211
|
+
color: night.color.textTertiary,
|
|
212
|
+
fontSize: night.font.micro,
|
|
213
|
+
fontStyle: "italic",
|
|
214
|
+
paddingHorizontal: 10,
|
|
215
|
+
paddingVertical: 8
|
|
216
|
+
}
|
|
217
|
+
});
|
|
218
|
+
//# sourceMappingURL=ThinkingStrip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useState","Pressable","StyleSheet","Text","View","Activity","ChevronDown","ChevronRight","night","hasTrace","traceEntries","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","StepRow","n","call","open","setOpen","failed","status","onPress","v","accessibilityRole","accessibilityState","expanded","style","styles","step","children","stepLine","stepN","stepName","stepFailed","numberOfLines","toolId","action","durationMs","undefined","stepMs","stepStatus","summary","detail","detailLabel","code","selectable","params","result","ThinkingStrip","message","entries","steps","filter","e","kind","length","thoughts","wall","startedAt","endedAt","toFixed","usage","input","output","Boolean","join","wrap","testID","accessibilityLabel","head","size","color","textTertiary","headText","body","map","entry","i","thought","text","trim","id","none","create","marginTop","borderRadius","radius","badge","borderWidth","hairlineWidth","borderColor","separator","backgroundColor","fill","overflow","flexDirection","alignItems","gap","paddingHorizontal","paddingVertical","flex","fontSize","font","micro","fontWeight","borderTopWidth","borderTopColor","textSecondary","lineHeight","fontStyle","width","maxWidth","danger","marginLeft","letterSpacing","marginBottom"],"sourceRoot":"../../../src","sources":["components/ThinkingStrip.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1,58 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Three pulsing dots — the "it heard you" signal between sending a message
|
|
5
|
+
* and the first streamed token. A static "…" glyph read as a finished (and
|
|
6
|
+
* confusing) answer.
|
|
7
|
+
*
|
|
8
|
+
* Native-driver opacity only, so it costs the JS thread nothing while the
|
|
9
|
+
* stream that replaces it is being parsed.
|
|
10
|
+
*/
|
|
11
|
+
import { useEffect, useRef } from "react";
|
|
12
|
+
import { Animated, Easing, StyleSheet, View } from "react-native";
|
|
13
|
+
import { night } from "@buoy-gg/shared-ui";
|
|
14
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
15
|
+
export function TypingDots() {
|
|
16
|
+
const dots = useRef([0, 1, 2].map(() => new Animated.Value(0.25))).current;
|
|
17
|
+
useEffect(() => {
|
|
18
|
+
const loops = dots.map((v, i) => Animated.loop(Animated.sequence([Animated.delay(i * 140), Animated.timing(v, {
|
|
19
|
+
toValue: 1,
|
|
20
|
+
duration: 320,
|
|
21
|
+
easing: Easing.inOut(Easing.ease),
|
|
22
|
+
useNativeDriver: true
|
|
23
|
+
}), Animated.timing(v, {
|
|
24
|
+
toValue: 0.25,
|
|
25
|
+
duration: 320,
|
|
26
|
+
easing: Easing.inOut(Easing.ease),
|
|
27
|
+
useNativeDriver: true
|
|
28
|
+
}), Animated.delay((2 - i) * 140)])));
|
|
29
|
+
loops.forEach(l => l.start());
|
|
30
|
+
return () => loops.forEach(l => l.stop());
|
|
31
|
+
}, [dots]);
|
|
32
|
+
return /*#__PURE__*/_jsx(View, {
|
|
33
|
+
style: styles.wrap,
|
|
34
|
+
testID: "buoy-ask-buoy-typing",
|
|
35
|
+
accessibilityLabel: "Thinking",
|
|
36
|
+
children: dots.map((v, i) => /*#__PURE__*/_jsx(Animated.View, {
|
|
37
|
+
style: [styles.dot, {
|
|
38
|
+
opacity: v
|
|
39
|
+
}]
|
|
40
|
+
}, i))
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
const styles = StyleSheet.create({
|
|
44
|
+
wrap: {
|
|
45
|
+
flexDirection: "row",
|
|
46
|
+
alignItems: "center",
|
|
47
|
+
gap: 5,
|
|
48
|
+
paddingVertical: 8,
|
|
49
|
+
paddingHorizontal: 2
|
|
50
|
+
},
|
|
51
|
+
dot: {
|
|
52
|
+
width: 7,
|
|
53
|
+
height: 7,
|
|
54
|
+
borderRadius: 4,
|
|
55
|
+
backgroundColor: night.color.textSecondary
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
//# sourceMappingURL=TypingDots.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","Animated","Easing","StyleSheet","View","night","jsx","_jsx","TypingDots","dots","map","Value","current","loops","v","i","loop","sequence","delay","timing","toValue","duration","easing","inOut","ease","useNativeDriver","forEach","l","start","stop","style","styles","wrap","testID","accessibilityLabel","children","dot","opacity","create","flexDirection","alignItems","gap","paddingVertical","paddingHorizontal","width","height","borderRadius","backgroundColor","color","textSecondary"],"sourceRoot":"../../../src","sources":["components/TypingDots.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,MAAM,QAAQ,OAAO;AACzC,SAASC,QAAQ,EAAEC,MAAM,EAAEC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AACjE,SAASC,KAAK,QAAQ,oBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE3C,OAAO,SAASC,UAAUA,CAAA,EAAG;EAC3B,MAAMC,IAAI,GAAGT,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAACU,GAAG,CAAC,MAAM,IAAIT,QAAQ,CAACU,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAACC,OAAO;EAE1Eb,SAAS,CAAC,MAAM;IACd,MAAMc,KAAK,GAAGJ,IAAI,CAACC,GAAG,CAAC,CAACI,CAAC,EAAEC,CAAC,KAC1Bd,QAAQ,CAACe,IAAI,CACXf,QAAQ,CAACgB,QAAQ,CAAC,CAChBhB,QAAQ,CAACiB,KAAK,CAACH,CAAC,GAAG,GAAG,CAAC,EACvBd,QAAQ,CAACkB,MAAM,CAACL,CAAC,EAAE;MACjBM,OAAO,EAAE,CAAC;MACVC,QAAQ,EAAE,GAAG;MACbC,MAAM,EAAEpB,MAAM,CAACqB,KAAK,CAACrB,MAAM,CAACsB,IAAI,CAAC;MACjCC,eAAe,EAAE;IACnB,CAAC,CAAC,EACFxB,QAAQ,CAACkB,MAAM,CAACL,CAAC,EAAE;MACjBM,OAAO,EAAE,IAAI;MACbC,QAAQ,EAAE,GAAG;MACbC,MAAM,EAAEpB,MAAM,CAACqB,KAAK,CAACrB,MAAM,CAACsB,IAAI,CAAC;MACjCC,eAAe,EAAE;IACnB,CAAC,CAAC,EACFxB,QAAQ,CAACiB,KAAK,CAAC,CAAC,CAAC,GAAGH,CAAC,IAAI,GAAG,CAAC,CAC9B,CACH,CACF,CAAC;IACDF,KAAK,CAACa,OAAO,CAAEC,CAAC,IAAKA,CAAC,CAACC,KAAK,CAAC,CAAC,CAAC;IAC/B,OAAO,MAAMf,KAAK,CAACa,OAAO,CAAEC,CAAC,IAAKA,CAAC,CAACE,IAAI,CAAC,CAAC,CAAC;EAC7C,CAAC,EAAE,CAACpB,IAAI,CAAC,CAAC;EAEV,oBACEF,IAAA,CAACH,IAAI;IAAC0B,KAAK,EAAEC,MAAM,CAACC,IAAK;IAACC,MAAM,EAAC,sBAAsB;IAACC,kBAAkB,EAAC,UAAU;IAAAC,QAAA,EAClF1B,IAAI,CAACC,GAAG,CAAC,CAACI,CAAC,EAAEC,CAAC,kBACbR,IAAA,CAACN,QAAQ,CAACG,IAAI;MAAS0B,KAAK,EAAE,CAACC,MAAM,CAACK,GAAG,EAAE;QAAEC,OAAO,EAAEvB;MAAE,CAAC;IAAE,GAAvCC,CAAyC,CAC9D;EAAC,CACE,CAAC;AAEX;AAEA,MAAMgB,MAAM,GAAG5B,UAAU,CAACmC,MAAM,CAAC;EAC/BN,IAAI,EAAE;IACJO,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE,CAAC;IACNC,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE;EACrB,CAAC;EACDP,GAAG,EAAE;IACHQ,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTC,YAAY,EAAE,CAAC;IACfC,eAAe,EAAE1C,KAAK,CAAC2C,KAAK,CAACC;EAC/B;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Copy that reports what happened.
|
|
5
|
+
*
|
|
6
|
+
* Both clipboard libraries are OPTIONAL peers, so `copyToClipboard` resolves
|
|
7
|
+
* false in an app that installed neither — a copy button that silently does
|
|
8
|
+
* nothing is worse than no copy button, so that case falls through to the OS
|
|
9
|
+
* share sheet (which also offers Copy) instead of failing quietly.
|
|
10
|
+
*
|
|
11
|
+
* `getText` is read on PRESS, not on render: the whole-transcript callers
|
|
12
|
+
* would otherwise rebuild the transcript on every frame of a streaming answer
|
|
13
|
+
* just to have a string ready for a button nobody tapped.
|
|
14
|
+
*/
|
|
15
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
16
|
+
import { Share } from "react-native";
|
|
17
|
+
import { copyToClipboard } from "@buoy-gg/shared-ui";
|
|
18
|
+
|
|
19
|
+
/** Long enough to notice out of the corner of an eye, short enough not to linger. */
|
|
20
|
+
const COPIED_MS = 1500;
|
|
21
|
+
export function useCopyAction(getText) {
|
|
22
|
+
const [copied, setCopied] = useState(false);
|
|
23
|
+
const timer = useRef(null);
|
|
24
|
+
useEffect(() => () => {
|
|
25
|
+
if (timer.current) clearTimeout(timer.current);
|
|
26
|
+
}, []);
|
|
27
|
+
const copy = useCallback(() => {
|
|
28
|
+
const text = getText();
|
|
29
|
+
void copyToClipboard(text).then(ok => {
|
|
30
|
+
if (!ok) {
|
|
31
|
+
void Share.share({
|
|
32
|
+
message: text
|
|
33
|
+
}).catch(() => {});
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
setCopied(true);
|
|
37
|
+
if (timer.current) clearTimeout(timer.current);
|
|
38
|
+
timer.current = setTimeout(() => setCopied(false), COPIED_MS);
|
|
39
|
+
}).catch(() => {});
|
|
40
|
+
}, [getText]);
|
|
41
|
+
return {
|
|
42
|
+
copied,
|
|
43
|
+
copy
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=useCopyAction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useCallback","useEffect","useRef","useState","Share","copyToClipboard","COPIED_MS","useCopyAction","getText","copied","setCopied","timer","current","clearTimeout","copy","text","then","ok","share","message","catch","setTimeout"],"sourceRoot":"../../../src","sources":["components/useCopyAction.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAChE,SAASC,KAAK,QAAQ,cAAc;AACpC,SAASC,eAAe,QAAQ,oBAAoB;;AAEpD;AACA,MAAMC,SAAS,GAAG,IAAI;AAEtB,OAAO,SAASC,aAAaA,CAACC,OAAqB,EAAyC;EAC1F,MAAM,CAACC,MAAM,EAAEC,SAAS,CAAC,GAAGP,QAAQ,CAAC,KAAK,CAAC;EAC3C,MAAMQ,KAAK,GAAGT,MAAM,CAAuC,IAAI,CAAC;EAChED,SAAS,CACP,MAAM,MAAM;IACV,IAAIU,KAAK,CAACC,OAAO,EAAEC,YAAY,CAACF,KAAK,CAACC,OAAO,CAAC;EAChD,CAAC,EACD,EACF,CAAC;EAED,MAAME,IAAI,GAAGd,WAAW,CAAC,MAAM;IAC7B,MAAMe,IAAI,GAAGP,OAAO,CAAC,CAAC;IACtB,KAAKH,eAAe,CAACU,IAAI,CAAC,CACvBC,IAAI,CAAEC,EAAE,IAAK;MACZ,IAAI,CAACA,EAAE,EAAE;QACP,KAAKb,KAAK,CAACc,KAAK,CAAC;UAAEC,OAAO,EAAEJ;QAAK,CAAC,CAAC,CAACK,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACnD;MACF;MACAV,SAAS,CAAC,IAAI,CAAC;MACf,IAAIC,KAAK,CAACC,OAAO,EAAEC,YAAY,CAACF,KAAK,CAACC,OAAO,CAAC;MAC9CD,KAAK,CAACC,OAAO,GAAGS,UAAU,CAAC,MAAMX,SAAS,CAAC,KAAK,CAAC,EAAEJ,SAAS,CAAC;IAC/D,CAAC,CAAC,CACDc,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;EACpB,CAAC,EAAE,CAACZ,OAAO,CAAC,CAAC;EAEb,OAAO;IAAEC,MAAM;IAAEK;EAAK,CAAC;AACzB","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -1 +1,34 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @buoy-gg/ask-buoy — "Ask Buoy".
|
|
5
|
+
*
|
|
6
|
+
* A chat sheet that drives every other Buoy tool on behalf of someone who does
|
|
7
|
+
* not read code. The model runs on the company's own endpoint (see
|
|
8
|
+
* `AskBuoyConfig`), the tool calls go through the same `dispatchToolAction`
|
|
9
|
+
* seam a Scenario step uses, and anything it changes is listed in a bar with an
|
|
10
|
+
* Undo.
|
|
11
|
+
*/
|
|
12
|
+
export { AskBuoyModal } from "./components/AskBuoyModal";
|
|
13
|
+
export { askBuoyToolPreset, createAskBuoyTool, AskBuoyIcon, ASK_BUOY_ICON_COLOR } from "./preset";
|
|
14
|
+
export { askBuoySyncAdapter, ASK_BUOY_ADAPTER_VERSION } from "./sync/askBuoySyncAdapter";
|
|
15
|
+
export { askBuoyStore } from "./store/askBuoyStore";
|
|
16
|
+
export { useAskBuoy, useAskBuoyState } from "./store/useAskBuoy";
|
|
17
|
+
export { redactForWire } from "./sync/wire";
|
|
18
|
+
export { BlockRenderer, BlockHandlersProvider, useBlockHandlers } from "./blocks";
|
|
19
|
+
export { Card as BlockCard, ActionRow as BlockActionRow, ProvenanceBadge } from "./blocks";
|
|
20
|
+
export { MessageActions, ReasoningStrip, ElapsedRow, QueuedComposer, ReloadDivider, Timestamp, EditableUserBubble, LivePill } from "./blocks";
|
|
21
|
+
export { Markdown } from "./components/Markdown";
|
|
22
|
+
// The real transcript pieces, exported so the example app's "chat scenes" page
|
|
23
|
+
// can stage conversations in the actual sheet chrome.
|
|
24
|
+
export { MessageList } from "./components/MessageList";
|
|
25
|
+
export { AskBuoyHeader } from "./components/AskBuoyHeader";
|
|
26
|
+
export { AskBuoySettings } from "./components/AskBuoySettings";
|
|
27
|
+
export { ThinkingStrip } from "./components/ThinkingStrip";
|
|
28
|
+
export { askBuoySettings } from "./store/askBuoySettings";
|
|
29
|
+
export { useAskBuoySettings } from "./store/useAskBuoySettings";
|
|
30
|
+
export { traceEntries, traceToText, hasTrace } from "./store/traceText";
|
|
31
|
+
export { Composer } from "./components/Composer";
|
|
32
|
+
export { ChangesBar } from "./components/ChangesBar";
|
|
33
|
+
export { ApprovalCard } from "./components/ApprovalCard";
|
|
34
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AskBuoyModal","askBuoyToolPreset","createAskBuoyTool","AskBuoyIcon","ASK_BUOY_ICON_COLOR","askBuoySyncAdapter","ASK_BUOY_ADAPTER_VERSION","askBuoyStore","useAskBuoy","useAskBuoyState","redactForWire","BlockRenderer","BlockHandlersProvider","useBlockHandlers","Card","BlockCard","ActionRow","BlockActionRow","ProvenanceBadge","MessageActions","ReasoningStrip","ElapsedRow","QueuedComposer","ReloadDivider","Timestamp","EditableUserBubble","LivePill","Markdown","MessageList","AskBuoyHeader","AskBuoySettings","ThinkingStrip","askBuoySettings","useAskBuoySettings","traceEntries","traceToText","hasTrace","Composer","ChangesBar","ApprovalCard"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,YAAY,QAAgC,2BAA2B;AAChF,SACEC,iBAAiB,EACjBC,iBAAiB,EACjBC,WAAW,EACXC,mBAAmB,QAEd,UAAU;AACjB,SAASC,kBAAkB,EAAEC,wBAAwB,QAAQ,2BAA2B;AACxF,SAASC,YAAY,QAAQ,sBAAsB;AACnD,SAASC,UAAU,EAAEC,eAAe,QAAgC,oBAAoB;AAGxF,SAASC,aAAa,QAAQ,aAAa;AAE3C,SAASC,aAAa,EAAEC,qBAAqB,EAAEC,gBAAgB,QAA4B,UAAU;AACrG,SAASC,IAAI,IAAIC,SAAS,EAAEC,SAAS,IAAIC,cAAc,EAAEC,eAAe,QAAQ,UAAU;AAC1F,SACEC,cAAc,EAAEC,cAAc,EAAEC,UAAU,EAAEC,cAAc,EAAEC,aAAa,EAAEC,SAAS,EAAEC,kBAAkB,EAAEC,QAAQ,QAC7G,UAAU;AACjB,SAASC,QAAQ,QAAQ,uBAAuB;AAChD;AACA;AACA,SAASC,WAAW,QAAQ,0BAA0B;AACtD,SAASC,aAAa,QAAQ,4BAA4B;AAC1D,SAASC,eAAe,QAAQ,8BAA8B;AAC9D,SAASC,aAAa,QAAQ,4BAA4B;AAC1D,SAASC,eAAe,QAAsD,yBAAyB;AACvG,SAASC,kBAAkB,QAAQ,4BAA4B;AAC/D,SAASC,YAAY,EAAEC,WAAW,EAAEC,QAAQ,QAAyB,mBAAmB;AACxF,SAASC,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,UAAU,QAAQ,yBAAyB;AACpD,SAASC,YAAY,QAAQ,2BAA2B","ignoreList":[]}
|
package/lib/module/preset.js
CHANGED
|
@@ -1 +1,73 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* The Ask Buoy tool preset.
|
|
5
|
+
*
|
|
6
|
+
* Manual chrome (`component` renders its own JsModal) rather than the
|
|
7
|
+
* declarative `modal` config, because ToolModalShell forwards neither a footer
|
|
8
|
+
* slot nor `initialHeight` — and a chat needs a sticky composer and more than
|
|
9
|
+
* the default 400pt of sheet.
|
|
10
|
+
*
|
|
11
|
+
* The config is closed over at creation time rather than read from a store, so
|
|
12
|
+
* the endpoint and headers come from the app's own code on every render and
|
|
13
|
+
* there is never a copy of them sitting anywhere Buoy persists.
|
|
14
|
+
*/
|
|
15
|
+
import { AskBuoyIcon, ASK_BUOY_ICON_COLOR } from "./components/AskBuoyIcon";
|
|
16
|
+
import { AskBuoyModal } from "./components/AskBuoyModal";
|
|
17
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
18
|
+
export { AskBuoyIcon, ASK_BUOY_ICON_COLOR };
|
|
19
|
+
export const askBuoyToolPreset = {
|
|
20
|
+
id: "ask-buoy",
|
|
21
|
+
name: "ASK BUOY",
|
|
22
|
+
description: "Ask about this app in plain English",
|
|
23
|
+
slot: "both",
|
|
24
|
+
// Set here rather than in floating-tools-core's `toolColors` map: that map
|
|
25
|
+
// is already missing half the shipped tools, so the web twin falls back to a
|
|
26
|
+
// generic accent for them. A color on the preset is the one place both
|
|
27
|
+
// native and web read.
|
|
28
|
+
color: ASK_BUOY_ICON_COLOR,
|
|
29
|
+
icon: ({
|
|
30
|
+
size,
|
|
31
|
+
color
|
|
32
|
+
}) => /*#__PURE__*/_jsx(AskBuoyIcon, {
|
|
33
|
+
size: size,
|
|
34
|
+
color: color || ASK_BUOY_ICON_COLOR
|
|
35
|
+
}),
|
|
36
|
+
component: AskBuoyModal
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* `endpoint` and `model` are REQUIRED at the type level. This used to extend
|
|
41
|
+
* Partial<AskBuoyConfig> with a cast, so a missing endpoint type-checked and
|
|
42
|
+
* only surfaced as a runtime "not set up yet" — the wrong moment to learn it.
|
|
43
|
+
*/
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Wire Ask Buoy to your team's AI endpoint.
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* createAskBuoyTool({
|
|
50
|
+
* endpoint: "https://ai.acme.com/v1/messages",
|
|
51
|
+
* model: "claude-opus-5",
|
|
52
|
+
* headers: async () => ({ Authorization: `Bearer ${await auth.getToken()}` }),
|
|
53
|
+
* context: { notes: ["user.rewards.points = loyalty points"] },
|
|
54
|
+
* })
|
|
55
|
+
*/
|
|
56
|
+
export function createAskBuoyTool(config) {
|
|
57
|
+
const {
|
|
58
|
+
name,
|
|
59
|
+
description,
|
|
60
|
+
...rest
|
|
61
|
+
} = config;
|
|
62
|
+
const resolved = rest;
|
|
63
|
+
return {
|
|
64
|
+
...askBuoyToolPreset,
|
|
65
|
+
name: name ?? askBuoyToolPreset.name,
|
|
66
|
+
description: description ?? askBuoyToolPreset.description,
|
|
67
|
+
component: props => /*#__PURE__*/_jsx(AskBuoyModal, {
|
|
68
|
+
...props,
|
|
69
|
+
config: resolved
|
|
70
|
+
})
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=preset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AskBuoyIcon","ASK_BUOY_ICON_COLOR","AskBuoyModal","jsx","_jsx","askBuoyToolPreset","id","name","description","slot","color","icon","size","component","createAskBuoyTool","config","rest","resolved","props"],"sourceRoot":"../../src","sources":["preset.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,mBAAmB,QAAQ,0BAA0B;AAC3E,SAASC,YAAY,QAAgC,2BAA2B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGjF,SAASJ,WAAW,EAAEC,mBAAmB;AAEzC,OAAO,MAAMI,iBAAiB,GAAG;EAC/BC,EAAE,EAAE,UAAU;EACdC,IAAI,EAAE,UAAU;EAChBC,WAAW,EAAE,qCAAqC;EAClDC,IAAI,EAAE,MAAe;EACrB;EACA;EACA;EACA;EACAC,KAAK,EAAET,mBAAmB;EAC1BU,IAAI,EAAEA,CAAC;IAAEC,IAAI;IAAEF;EAAwC,CAAC,kBACtDN,IAAA,CAACJ,WAAW;IAACY,IAAI,EAAEA,IAAK;IAACF,KAAK,EAAEA,KAAK,IAAIT;EAAoB,CAAE,CAChE;EACDY,SAAS,EAAEX;AACb,CAAC;;AAED;AACA;AACA;AACA;AACA;;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASY,iBAAiBA,CAACC,MAAyB,EAAE;EAC3D,MAAM;IAAER,IAAI;IAAEC,WAAW;IAAE,GAAGQ;EAAK,CAAC,GAAGD,MAAM;EAC7C,MAAME,QAAuB,GAAGD,IAAI;EACpC,OAAO;IACL,GAAGX,iBAAiB;IACpBE,IAAI,EAAEA,IAAI,IAAIF,iBAAiB,CAACE,IAAI;IACpCC,WAAW,EAAEA,WAAW,IAAIH,iBAAiB,CAACG,WAAW;IACzDK,SAAS,EAAGK,KAAwB,iBAClCd,IAAA,CAACF,YAAY;MAAA,GAAKgB,KAAK;MAAEH,MAAM,EAAEE;IAAS,CAAE;EAEhD,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Ask Buoy's own preferences — the things a tester sets on the sheet, not the
|
|
5
|
+
* things a developer sets in `askBuoy={{ … }}`.
|
|
6
|
+
*
|
|
7
|
+
* Module-level and subscribable for the same reason the transcript is: the
|
|
8
|
+
* sheet unmounts whenever the tool is closed or minimised, and a preference
|
|
9
|
+
* that reset on every close would not be a preference.
|
|
10
|
+
*/
|
|
11
|
+
import { definePersistedSetting, devToolsStorageKeys } from "@buoy-gg/shared-ui";
|
|
12
|
+
export const DEFAULT_SETTINGS = {
|
|
13
|
+
showThinking: false
|
|
14
|
+
};
|
|
15
|
+
const store = definePersistedSetting(`${devToolsStorageKeys.base}_ask_buoy_settings`, DEFAULT_SETTINGS, {
|
|
16
|
+
sanitize: merged => ({
|
|
17
|
+
showThinking: merged.showThinking === true
|
|
18
|
+
})
|
|
19
|
+
});
|
|
20
|
+
let current = DEFAULT_SETTINGS;
|
|
21
|
+
let loaded = false;
|
|
22
|
+
const listeners = new Set();
|
|
23
|
+
function emit() {
|
|
24
|
+
for (const fn of listeners) {
|
|
25
|
+
try {
|
|
26
|
+
fn();
|
|
27
|
+
} catch {
|
|
28
|
+
// A throwing subscriber must not take the sheet down.
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export const askBuoySettings = {
|
|
33
|
+
get: () => current,
|
|
34
|
+
subscribe(fn) {
|
|
35
|
+
listeners.add(fn);
|
|
36
|
+
// First subscriber pays for the read; everyone after gets the cached value.
|
|
37
|
+
if (!loaded) {
|
|
38
|
+
loaded = true;
|
|
39
|
+
void store.load().then(value => {
|
|
40
|
+
current = value;
|
|
41
|
+
emit();
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
return () => listeners.delete(fn);
|
|
45
|
+
},
|
|
46
|
+
set(key, value) {
|
|
47
|
+
if (current[key] === value) return;
|
|
48
|
+
current = {
|
|
49
|
+
...current,
|
|
50
|
+
[key]: value
|
|
51
|
+
};
|
|
52
|
+
emit();
|
|
53
|
+
void store.save(current);
|
|
54
|
+
},
|
|
55
|
+
/** Tests only — the module cache would otherwise leak between them. */
|
|
56
|
+
reset() {
|
|
57
|
+
current = DEFAULT_SETTINGS;
|
|
58
|
+
loaded = false;
|
|
59
|
+
void store.clear();
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
//# sourceMappingURL=askBuoySettings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["definePersistedSetting","devToolsStorageKeys","DEFAULT_SETTINGS","showThinking","store","base","sanitize","merged","current","loaded","listeners","Set","emit","fn","askBuoySettings","get","subscribe","add","load","then","value","delete","set","key","save","reset","clear"],"sourceRoot":"../../../src","sources":["store/askBuoySettings.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,sBAAsB,EAAEC,mBAAmB,QAAQ,oBAAoB;AAgBhF,OAAO,MAAMC,gBAAiC,GAAG;EAAEC,YAAY,EAAE;AAAM,CAAC;AAExE,MAAMC,KAAK,GAAGJ,sBAAsB,CAClC,GAAGC,mBAAmB,CAACI,IAAI,oBAAoB,EAC/CH,gBAAgB,EAChB;EACEI,QAAQ,EAAGC,MAAM,KAAM;IAAEJ,YAAY,EAAEI,MAAM,CAACJ,YAAY,KAAK;EAAK,CAAC;AACvE,CACF,CAAC;AAED,IAAIK,OAAwB,GAAGN,gBAAgB;AAC/C,IAAIO,MAAM,GAAG,KAAK;AAClB,MAAMC,SAAS,GAAG,IAAIC,GAAG,CAAa,CAAC;AAEvC,SAASC,IAAIA,CAAA,EAAS;EACpB,KAAK,MAAMC,EAAE,IAAIH,SAAS,EAAE;IAC1B,IAAI;MACFG,EAAE,CAAC,CAAC;IACN,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;AACF;AAEA,OAAO,MAAMC,eAAe,GAAG;EAC7BC,GAAG,EAAEA,CAAA,KAAuBP,OAAO;EAEnCQ,SAASA,CAACH,EAAc,EAAc;IACpCH,SAAS,CAACO,GAAG,CAACJ,EAAE,CAAC;IACjB;IACA,IAAI,CAACJ,MAAM,EAAE;MACXA,MAAM,GAAG,IAAI;MACb,KAAKL,KAAK,CAACc,IAAI,CAAC,CAAC,CAACC,IAAI,CAAEC,KAAK,IAAK;QAChCZ,OAAO,GAAGY,KAAK;QACfR,IAAI,CAAC,CAAC;MACR,CAAC,CAAC;IACJ;IACA,OAAO,MAAMF,SAAS,CAACW,MAAM,CAACR,EAAE,CAAC;EACnC,CAAC;EAEDS,GAAGA,CAAkCC,GAAM,EAAEH,KAAyB,EAAQ;IAC5E,IAAIZ,OAAO,CAACe,GAAG,CAAC,KAAKH,KAAK,EAAE;IAC5BZ,OAAO,GAAG;MAAE,GAAGA,OAAO;MAAE,CAACe,GAAG,GAAGH;IAAM,CAAC;IACtCR,IAAI,CAAC,CAAC;IACN,KAAKR,KAAK,CAACoB,IAAI,CAAChB,OAAO,CAAC;EAC1B,CAAC;EAED;EACAiB,KAAKA,CAAA,EAAS;IACZjB,OAAO,GAAGN,gBAAgB;IAC1BO,MAAM,GAAG,KAAK;IACd,KAAKL,KAAK,CAACsB,KAAK,CAAC,CAAC;EACpB;AACF,CAAC","ignoreList":[]}
|