@buoy-gg/ask-buoy 7.0.33 → 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 +2 -2
- package/lib/commonjs/blocks/DataBlocks.js +217 -74
- package/lib/commonjs/blocks/DataBlocks.js.map +1 -1
- package/lib/commonjs/blocks/ExtraBlocks.js +53 -20
- package/lib/commonjs/blocks/ExtraBlocks.js.map +1 -1
- package/lib/commonjs/blocks/MediaBlocks.js +2 -2
- package/lib/commonjs/blocks/MediaBlocks.js.map +1 -1
- package/lib/commonjs/blocks/ReceiptBlocks.js +35 -45
- package/lib/commonjs/blocks/ReceiptBlocks.js.map +1 -1
- 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 +113 -24
- package/lib/commonjs/blocks/primitives.js.map +1 -1
- package/lib/commonjs/blocks/primitivesIndex.js +8 -2
- package/lib/commonjs/blocks/primitivesIndex.js.map +1 -1
- package/lib/commonjs/components/AskBuoyHeader.js +42 -5
- package/lib/commonjs/components/AskBuoyHeader.js.map +1 -1
- package/lib/commonjs/components/AskBuoyModal.js +51 -20
- package/lib/commonjs/components/AskBuoyModal.js.map +1 -1
- package/lib/commonjs/components/AskBuoySettings.js +69 -0
- package/lib/commonjs/components/AskBuoySettings.js.map +1 -0
- package/lib/commonjs/components/MessageList.js +89 -54
- package/lib/commonjs/components/MessageList.js.map +1 -1
- package/lib/commonjs/components/ThinkingStrip.js +223 -0
- package/lib/commonjs/components/ThinkingStrip.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 +47 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/preset.js +1 -1
- package/lib/commonjs/store/askBuoySettings.js +67 -0
- package/lib/commonjs/store/askBuoySettings.js.map +1 -0
- package/lib/commonjs/store/askBuoyStore.js +97 -11
- package/lib/commonjs/store/askBuoyStore.js.map +1 -1
- 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 +102 -1
- package/lib/commonjs/store/useAskBuoy.js.map +1 -1
- package/lib/commonjs/store/useAskBuoySettings.js +14 -0
- package/lib/commonjs/store/useAskBuoySettings.js.map +1 -0
- package/lib/commonjs/sync/askBuoySyncAdapter.test.js +6 -1
- package/lib/commonjs/sync/askBuoySyncAdapter.test.js.map +1 -1
- package/lib/module/blocks/DataBlocks.js +217 -75
- package/lib/module/blocks/DataBlocks.js.map +1 -1
- package/lib/module/blocks/ExtraBlocks.js +55 -22
- package/lib/module/blocks/ExtraBlocks.js.map +1 -1
- package/lib/module/blocks/MediaBlocks.js +3 -3
- package/lib/module/blocks/MediaBlocks.js.map +1 -1
- package/lib/module/blocks/ReceiptBlocks.js +37 -47
- package/lib/module/blocks/ReceiptBlocks.js.map +1 -1
- 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 +112 -24
- package/lib/module/blocks/primitives.js.map +1 -1
- package/lib/module/blocks/primitivesIndex.js +1 -1
- package/lib/module/blocks/primitivesIndex.js.map +1 -1
- package/lib/module/components/AskBuoyHeader.js +43 -6
- package/lib/module/components/AskBuoyHeader.js.map +1 -1
- package/lib/module/components/AskBuoyModal.js +54 -23
- package/lib/module/components/AskBuoyModal.js.map +1 -1
- package/lib/module/components/AskBuoySettings.js +64 -0
- package/lib/module/components/AskBuoySettings.js.map +1 -0
- package/lib/module/components/MessageList.js +91 -56
- package/lib/module/components/MessageList.js.map +1 -1
- package/lib/module/components/ThinkingStrip.js +218 -0
- package/lib/module/components/ThinkingStrip.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 +5 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/preset.js +1 -1
- package/lib/module/store/askBuoySettings.js +62 -0
- package/lib/module/store/askBuoySettings.js.map +1 -0
- package/lib/module/store/askBuoyStore.js +97 -11
- package/lib/module/store/askBuoyStore.js.map +1 -1
- 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 +102 -1
- package/lib/module/store/useAskBuoy.js.map +1 -1
- package/lib/module/store/useAskBuoySettings.js +9 -0
- package/lib/module/store/useAskBuoySettings.js.map +1 -0
- package/lib/module/sync/askBuoySyncAdapter.test.js +6 -1
- package/lib/module/sync/askBuoySyncAdapter.test.js.map +1 -1
- package/lib/typescript/blocks/DataBlocks.d.ts +31 -0
- package/lib/typescript/blocks/DataBlocks.d.ts.map +1 -1
- package/lib/typescript/blocks/ExtraBlocks.d.ts +11 -0
- package/lib/typescript/blocks/ExtraBlocks.d.ts.map +1 -1
- package/lib/typescript/blocks/MediaBlocks.d.ts.map +1 -1
- package/lib/typescript/blocks/ReceiptBlocks.d.ts.map +1 -1
- 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 -1
- package/lib/typescript/blocks/primitivesIndex.d.ts +2 -1
- package/lib/typescript/blocks/primitivesIndex.d.ts.map +1 -1
- package/lib/typescript/components/AskBuoyHeader.d.ts +11 -1
- package/lib/typescript/components/AskBuoyHeader.d.ts.map +1 -1
- package/lib/typescript/components/AskBuoyModal.d.ts.map +1 -1
- package/lib/typescript/components/AskBuoySettings.d.ts +2 -0
- package/lib/typescript/components/AskBuoySettings.d.ts.map +1 -0
- package/lib/typescript/components/MessageList.d.ts +12 -5
- package/lib/typescript/components/MessageList.d.ts.map +1 -1
- package/lib/typescript/components/ThinkingStrip.d.ts +5 -0
- package/lib/typescript/components/ThinkingStrip.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 -1
- package/lib/typescript/preset.d.ts +1 -1
- 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 -1
- 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 -1
- package/lib/typescript/store/useAskBuoySettings.d.ts +3 -0
- package/lib/typescript/store/useAskBuoySettings.d.ts.map +1 -0
- package/lib/typescript/types.d.ts +24 -1
- package/lib/typescript/types.d.ts.map +1 -1
- package/package.json +8 -8
|
@@ -19,19 +19,31 @@ import { Platform } from "react-native";
|
|
|
19
19
|
import { dispatchToolAction, listSnapshotToolIds, listToolActions, readToolSnapshot, waitForToolRegistry } from "@buoy-gg/shared-ui";
|
|
20
20
|
import { answerToText, CATALOG, createAskBuoySession, runGatedAction, SNAPSHOT_ACTION } from "@buoy-gg/agent-core";
|
|
21
21
|
import { askBuoyStore } from "./askBuoyStore";
|
|
22
|
+
import { buildPayload, clearTranscript, readTranscript, writeTranscript } from "./transcriptPersistence";
|
|
22
23
|
const isRelease = typeof __DEV__ !== "undefined" && !__DEV__;
|
|
24
|
+
|
|
25
|
+
/** Long enough to coalesce a streaming answer's deltas, short enough to beat a crash. */
|
|
26
|
+
const SAVE_DEBOUNCE_MS = 600;
|
|
23
27
|
export function useAskBuoyState() {
|
|
24
28
|
return useSyncExternalStore(askBuoyStore.subscribe, askBuoyStore.getState, askBuoyStore.getState);
|
|
25
29
|
}
|
|
26
30
|
export function useAskBuoy(config) {
|
|
27
31
|
const state = useAskBuoyState();
|
|
28
32
|
const sessionRef = useRef(null);
|
|
33
|
+
/** One restore attempt per mount — see the note at the read. */
|
|
34
|
+
const restoredRef = useRef(false);
|
|
29
35
|
const abortRef = useRef(null);
|
|
30
36
|
// Read through a ref where a stable callback needs the LATEST config (the
|
|
31
37
|
// onEvent tap) without re-creating the callback per render.
|
|
32
38
|
const configRef = useRef(config);
|
|
33
39
|
configRef.current = config;
|
|
34
40
|
const configured = !!config?.endpoint && !!config?.model;
|
|
41
|
+
/**
|
|
42
|
+
* On by default. The conversation surviving a reload is what makes the tool
|
|
43
|
+
* usable while iterating, and it is the only thing that survives a crash —
|
|
44
|
+
* but it puts the chat on disk, so a host handling regulated data can say no.
|
|
45
|
+
*/
|
|
46
|
+
const persist = config?.persistTranscript !== false;
|
|
35
47
|
|
|
36
48
|
// Recomputed each render: the set of dispatchable tools is not a constant.
|
|
37
49
|
//
|
|
@@ -56,6 +68,14 @@ export function useAskBuoy(config) {
|
|
|
56
68
|
const toolKey = Object.keys(availableActions).sort().join(",");
|
|
57
69
|
useEffect(() => {
|
|
58
70
|
askBuoyStore.setConfigured(configured);
|
|
71
|
+
// Stamped on the store so an exported run says what it ran against.
|
|
72
|
+
askBuoyStore.setMeta({
|
|
73
|
+
model: config?.model,
|
|
74
|
+
protocol: config?.protocol ?? (config ? "anthropic" : undefined),
|
|
75
|
+
appName: config?.appName,
|
|
76
|
+
platform: Platform.OS,
|
|
77
|
+
build: isRelease ? "release" : "development"
|
|
78
|
+
});
|
|
59
79
|
if (!configured || !config) {
|
|
60
80
|
sessionRef.current = null;
|
|
61
81
|
askBuoyStore.setNotice("Ask Buoy isn't set up in this app yet. A developer needs to point it at your team's AI endpoint.");
|
|
@@ -125,16 +145,94 @@ export function useAskBuoy(config) {
|
|
|
125
145
|
askBuoyStore.holdSession(session, signature);
|
|
126
146
|
askBuoyStore.setLedger(session.ledger);
|
|
127
147
|
|
|
148
|
+
/**
|
|
149
|
+
* Bring the last conversation back — both halves of it.
|
|
150
|
+
*
|
|
151
|
+
* The transcript and the model's memory are separate things (the store and
|
|
152
|
+
* the session), and restoring only the first is worse than restoring
|
|
153
|
+
* neither: the user reads a conversation the agent has no recollection of,
|
|
154
|
+
* and "undo that" or "now do the same for Pikachu" lands on an empty
|
|
155
|
+
* history. So the session is restored in the same pass, and only into a
|
|
156
|
+
* session this effect just built.
|
|
157
|
+
*/
|
|
128
158
|
// The registry publishes on mount, a frame or two after first paint. Warm
|
|
129
159
|
// the grounding once it is there so the first question does not pay for it.
|
|
130
160
|
let cancelled = false;
|
|
131
161
|
void waitForToolRegistry().then(ready => {
|
|
132
162
|
if (ready && !cancelled) void session.prime();
|
|
133
163
|
});
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* NOT gated on `cancelled`, and once per mount.
|
|
167
|
+
*
|
|
168
|
+
* The disk read races the tool registry, and it was losing about half the
|
|
169
|
+
* time. `availableActions` legitimately changes a frame or two after open
|
|
170
|
+
* (see the note above) — that re-runs this effect, whose cleanup sets
|
|
171
|
+
* `cancelled`, and the in-flight restore then threw its result away. The
|
|
172
|
+
* second pass takes the held-session branch and returns early, so nothing
|
|
173
|
+
* ever retried: the conversation was on disk, read correctly, and dropped
|
|
174
|
+
* on the floor. Caught by the e2e, where one test restored and the next
|
|
175
|
+
* did not, with no difference between them.
|
|
176
|
+
*
|
|
177
|
+
* Safe to leave running: `hydrate` refuses if anything has been said since,
|
|
178
|
+
* and `restore` refuses a session that already has history. Resolved
|
|
179
|
+
* against `sessionRef.current` rather than the captured `session` so a
|
|
180
|
+
* genuine reconfiguration mid-read restores into the session in use.
|
|
181
|
+
*/
|
|
182
|
+
if (persist && !restoredRef.current) {
|
|
183
|
+
restoredRef.current = true;
|
|
184
|
+
void readTranscript().then(saved => {
|
|
185
|
+
if (!saved) return;
|
|
186
|
+
const hydrated = askBuoyStore.hydrate({
|
|
187
|
+
messages: saved.messages,
|
|
188
|
+
answers: saved.answers,
|
|
189
|
+
usage: saved.usage
|
|
190
|
+
});
|
|
191
|
+
if (hydrated) sessionRef.current?.restore(saved.history);
|
|
192
|
+
});
|
|
193
|
+
}
|
|
134
194
|
return () => {
|
|
135
195
|
cancelled = true;
|
|
136
196
|
};
|
|
137
|
-
}, [configured, config, availableActions, toolKey]);
|
|
197
|
+
}, [configured, config, availableActions, toolKey, persist]);
|
|
198
|
+
|
|
199
|
+
/**
|
|
200
|
+
* Save on change: coalesced while a turn streams, immediate the moment it ends.
|
|
201
|
+
*
|
|
202
|
+
* The debounce exists because a streaming answer changes the store on every
|
|
203
|
+
* delta, and writing a whole transcript per token would cost more than the
|
|
204
|
+
* turn does. But applying it to the END of a turn as well left a window
|
|
205
|
+
* where the finished answer was on screen and not yet on disk — a crash or a
|
|
206
|
+
* fast reload inside it lost the whole turn, which is precisely the case
|
|
207
|
+
* this feature exists for. An e2e that relaunched as soon as the answer
|
|
208
|
+
* rendered lost it every time, and that is a real user doing a fast reload,
|
|
209
|
+
* not a harness artefact.
|
|
210
|
+
*
|
|
211
|
+
* Saving still happens DURING a turn as well, which is what lets a bubble
|
|
212
|
+
* the app died in come back marked interrupted rather than blank.
|
|
213
|
+
*/
|
|
214
|
+
const messages = state.messages;
|
|
215
|
+
const answers = state.answers;
|
|
216
|
+
const usage = state.usage;
|
|
217
|
+
const busy = state.busy;
|
|
218
|
+
useEffect(() => {
|
|
219
|
+
if (!persist) return;
|
|
220
|
+
if (messages.length === 0) return;
|
|
221
|
+
const write = () => {
|
|
222
|
+
void writeTranscript(buildPayload({
|
|
223
|
+
messages,
|
|
224
|
+
history: sessionRef.current?.messages ?? [],
|
|
225
|
+
answers,
|
|
226
|
+
usage
|
|
227
|
+
}));
|
|
228
|
+
};
|
|
229
|
+
if (!busy) {
|
|
230
|
+
write();
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
const timer = setTimeout(write, SAVE_DEBOUNCE_MS);
|
|
234
|
+
return () => clearTimeout(timer);
|
|
235
|
+
}, [persist, busy, messages, answers, usage]);
|
|
138
236
|
|
|
139
237
|
/** Stream one turn into a fresh assistant bubble. Callers set up the user side. */
|
|
140
238
|
const runTurn = useCallback(text => {
|
|
@@ -224,6 +322,9 @@ export function useAskBuoy(config) {
|
|
|
224
322
|
abortRef.current?.abort();
|
|
225
323
|
sessionRef.current?.reset();
|
|
226
324
|
askBuoyStore.reset();
|
|
325
|
+
// "New conversation" means gone, not hidden. Leaving the last chat on disk
|
|
326
|
+
// after the user asked for a clean one is the opposite of what they said.
|
|
327
|
+
void clearTranscript();
|
|
227
328
|
}, []);
|
|
228
329
|
const approve = useCallback(approved => {
|
|
229
330
|
askBuoyStore.answerApproval(approved);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useEffect","useMemo","useRef","useSyncExternalStore","Platform","dispatchToolAction","listSnapshotToolIds","listToolActions","readToolSnapshot","waitForToolRegistry","answerToText","CATALOG","createAskBuoySession","runGatedAction","SNAPSHOT_ACTION","askBuoyStore","isRelease","__DEV__","useAskBuoyState","subscribe","getState","useAskBuoy","config","state","sessionRef","abortRef","configRef","current","configured","endpoint","model","availableActions","actions","toolId","includes","toolKey","Object","keys","sort","join","setConfigured","setNotice","protocol","apiKey","test","signature","held","getHeldSession","session","setAvailableActions","setLedger","ledger","headers","maxTokens","anthropicVersion","requestOverrides","catalog","tools","length","undefined","dispatch","readSnapshot","policy","context","appName","platform","OS","requestApproval","input","askApproval","holdSession","cancelled","then","ready","prime","runTurn","text","beginTurn","messageId","startAssistant","controller","AbortController","onEvent","ev","send","signal","applyEvent","err","type","message","Error","finishAssistant","trimmed","trim","busy","setQueued","awaiting","awaitingBlockId","recordAnswer","blockId","kind","addUser","retry","messages","lastUser","reverse","find","m","role","last","error","removeMessage","id","stop","pending","answerApproval","abort","queued","reset","approve","approved","answer","a","runAction","action","key","label","getLedger","setActionState","outcome","params","ok","toolCount"],"sourceRoot":"../../../src","sources":["store/useAskBuoy.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,SAAS,EAAEC,OAAO,EAAEC,MAAM,EAAEC,oBAAoB,QAAQ,OAAO;AACrF,SAASC,QAAQ,QAAQ,cAAc;AACvC,SACEC,kBAAkB,EAClBC,mBAAmB,EACnBC,eAAe,EACfC,gBAAgB,EAChBC,mBAAmB,QACd,oBAAoB;AAC3B,SACEC,YAAY,EACZC,OAAO,EACPC,oBAAoB,EACpBC,cAAc,EACdC,eAAe,QAIV,qBAAqB;AAE5B,SAASC,YAAY,QAA2B,gBAAgB;AAGhE,MAAMC,SAAS,GAAG,OAAOC,OAAO,KAAK,WAAW,IAAI,CAACA,OAAO;AAE5D,OAAO,SAASC,eAAeA,CAAA,EAAiB;EAC9C,OAAOf,oBAAoB,CAACY,YAAY,CAACI,SAAS,EAAEJ,YAAY,CAACK,QAAQ,EAAEL,YAAY,CAACK,QAAQ,CAAC;AACnG;AAmBA,OAAO,SAASC,UAAUA,CAACC,MAAiC,EAAqB;EAC/E,MAAMC,KAAK,GAAGL,eAAe,CAAC,CAAC;EAC/B,MAAMM,UAAU,GAAGtB,MAAM,CAAwB,IAAI,CAAC;EACtD,MAAMuB,QAAQ,GAAGvB,MAAM,CAAyB,IAAI,CAAC;EACrD;EACA;EACA,MAAMwB,SAAS,GAAGxB,MAAM,CAACoB,MAAM,CAAC;EAChCI,SAAS,CAACC,OAAO,GAAGL,MAAM;EAC1B,MAAMM,UAAU,GAAG,CAAC,CAACN,MAAM,EAAEO,QAAQ,IAAI,CAAC,CAACP,MAAM,EAAEQ,KAAK;;EAExD;EACA;EACA;EACA;EACA;EACA;EACA,MAAMC,gBAAgB,GAAG9B,OAAO,CAAC,MAAM;IACrC,IAAI;MACF,MAAM+B,OAAO,GAAGzB,eAAe,CAAC,CAAC;MACjC,KAAK,MAAM0B,MAAM,IAAI3B,mBAAmB,CAAC,CAAC,EAAE;QAC1C,IAAI,CAAC0B,OAAO,CAACC,MAAM,CAAC,EAAED,OAAO,CAACC,MAAM,CAAC,GAAG,EAAE;QAC1C,IAAI,CAACD,OAAO,CAACC,MAAM,CAAC,CAACC,QAAQ,CAACpB,eAAe,CAAC,EAAE;UAC9CkB,OAAO,CAACC,MAAM,CAAC,GAAG,CAACnB,eAAe,EAAE,GAAGkB,OAAO,CAACC,MAAM,CAAC,CAAC;QACzD;MACF;MACA,OAAOD,OAAO;IAChB,CAAC,CAAC,MAAM;MACN,OAAO,CAAC,CAAC;IACX;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMG,OAAO,GAAGC,MAAM,CAACC,IAAI,CAACN,gBAAgB,CAAC,CAACO,IAAI,CAAC,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC;EAE9DvC,SAAS,CAAC,MAAM;IACde,YAAY,CAACyB,aAAa,CAACZ,UAAU,CAAC;IACtC,IAAI,CAACA,UAAU,IAAI,CAACN,MAAM,EAAE;MAC1BE,UAAU,CAACG,OAAO,GAAG,IAAI;MACzBZ,YAAY,CAAC0B,SAAS,CACpB,kGACF,CAAC;MACD;IACF;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAMC,QAAQ,GAAGpB,MAAM,CAACoB,QAAQ,IAAI,WAAW;IAC/C,IAAI1B,SAAS,IAAIM,MAAM,CAACqB,MAAM,EAAE;MAC9B5B,YAAY,CAAC0B,SAAS,CACpB,+JACF,CAAC;IACH,CAAC,MAAM,IAAIC,QAAQ,KAAK,WAAW,IAAI,iCAAiC,CAACE,IAAI,CAACtB,MAAM,CAACO,QAAQ,CAAC,EAAE;MAC9Fd,YAAY,CAAC0B,SAAS,CACpB,gHACF,CAAC;IACH,CAAC,MAAM,IAAIC,QAAQ,KAAK,QAAQ,IAAI,oCAAoC,CAACE,IAAI,CAACtB,MAAM,CAACO,QAAQ,CAAC,EAAE;MAC9Fd,YAAY,CAAC0B,SAAS,CACpB,4GACF,CAAC;IACH,CAAC,MAAM;MACL1B,YAAY,CAAC0B,SAAS,CAAC,IAAI,CAAC;IAC9B;;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAMI,SAAS,GAAG,CAACvB,MAAM,CAACO,QAAQ,EAAEP,MAAM,CAACoB,QAAQ,IAAI,WAAW,EAAEpB,MAAM,CAACQ,KAAK,CAAC,CAACS,IAAI,CAAC,GAAG,CAAC;IAC3F,MAAMO,IAAI,GAAG/B,YAAY,CAACgC,cAAc,CAAC,CAAC;IAC1C,IAAID,IAAI,IAAIA,IAAI,CAACD,SAAS,KAAKA,SAAS,EAAE;MACxCrB,UAAU,CAACG,OAAO,GAAGmB,IAAI,CAACE,OAAO;MACjCF,IAAI,CAACE,OAAO,CAACC,mBAAmB,CAAClB,gBAAgB,CAAC;MAClDhB,YAAY,CAACmC,SAAS,CAACJ,IAAI,CAACE,OAAO,CAACG,MAAM,CAAC;MAC3C;IACF;IAEA,MAAMH,OAAO,GAAGpC,oBAAoB,CAAC;MACnCiB,QAAQ,EAAEP,MAAM,CAACO,QAAQ;MACzBa,QAAQ,EAAEpB,MAAM,CAACoB,QAAQ,IAAI,WAAW;MACxCZ,KAAK,EAAER,MAAM,CAACQ,KAAK;MACnBsB,OAAO,EAAE9B,MAAM,CAAC8B,OAAO;MACvBT,MAAM,EAAErB,MAAM,CAACqB,MAAM;MACrBU,SAAS,EAAE/B,MAAM,CAAC+B,SAAS;MAC3BC,gBAAgB,EAAEhC,MAAM,CAACgC,gBAAgB;MACzCC,gBAAgB,EAAEjC,MAAM,CAACiC,gBAAgB;MACzC;MACA;MACA;MACAC,OAAO,EAAElC,MAAM,CAACmC,KAAK,EAAEC,MAAM,GAAG,CAAC,GAAG/C,OAAO,EAAE,GAAGW,MAAM,CAACmC,KAAK,CAAC,GAAGE,SAAS;MACzEC,QAAQ,EAAEvD,kBAAkB;MAC5BwD,YAAY,EAAErD,gBAAgB;MAC9BuB,gBAAgB;MAChB+B,MAAM,EAAExC,MAAM,CAACwC,MAAM;MACrBC,OAAO,EAAEzC,MAAM,CAACyC,OAAO;MACvB/C,SAAS;MACTgD,OAAO,EAAE1C,MAAM,CAAC0C,OAAO;MACvBC,QAAQ,EAAE7D,QAAQ,CAAC8D,EAAE;MACrBC,eAAe,EAAGC,KAAK,IAAKrD,YAAY,CAACsD,WAAW,CAACD,KAAK;IAC5D,CAAC,CAAC;IACF5C,UAAU,CAACG,OAAO,GAAGqB,OAAO;IAC5BjC,YAAY,CAACuD,WAAW,CAACtB,OAAO,EAAEH,SAAS,CAAC;IAC5C9B,YAAY,CAACmC,SAAS,CAACF,OAAO,CAACG,MAAM,CAAC;;IAEtC;IACA;IACA,IAAIoB,SAAS,GAAG,KAAK;IACrB,KAAK9D,mBAAmB,CAAC,CAAC,CAAC+D,IAAI,CAAEC,KAAK,IAAK;MACzC,IAAIA,KAAK,IAAI,CAACF,SAAS,EAAE,KAAKvB,OAAO,CAAC0B,KAAK,CAAC,CAAC;IAC/C,CAAC,CAAC;IACF,OAAO,MAAM;MACXH,SAAS,GAAG,IAAI;IAClB,CAAC;EACH,CAAC,EAAE,CAAC3C,UAAU,EAAEN,MAAM,EAAES,gBAAgB,EAAEI,OAAO,CAAC,CAAC;;EAEnD;EACA,MAAMwC,OAAO,GAAG5E,WAAW,CAAE6E,IAAY,IAAK;IAC5C,MAAM5B,OAAO,GAAGxB,UAAU,CAACG,OAAO;IAClC,IAAI,CAACqB,OAAO,EAAE;IACdjC,YAAY,CAAC8D,SAAS,CAAC,CAAC;IACxB,MAAMC,SAAS,GAAG/D,YAAY,CAACgE,cAAc,CAAC,CAAC;IAC/C,MAAMC,UAAU,GAAG,IAAIC,eAAe,CAAC,CAAC;IACxCxD,QAAQ,CAACE,OAAO,GAAGqD,UAAU;IAE7B,MAAME,OAAO,GAAGxD,SAAS,CAACC,OAAO,EAAEuD,OAAO;IAC1C,KAAK,CAAC,YAAY;MAChB,IAAI;QACF,WAAW,MAAMC,EAAE,IAAInC,OAAO,CAACoC,IAAI,CAACR,IAAI,EAAEI,UAAU,CAACK,MAAM,CAAC,EAAE;UAC5DtE,YAAY,CAACuE,UAAU,CAACR,SAAS,EAAEK,EAAE,CAAC;UACtC,IAAID,OAAO,EAAE;YACX,IAAI;cACFA,OAAO,CAACC,EAAE,CAAC;YACb,CAAC,CAAC,MAAM;cACN;YAAA;UAEJ;QACF;MACF,CAAC,CAAC,OAAOI,GAAG,EAAE;QACZxE,YAAY,CAACuE,UAAU,CAACR,SAAS,EAAE;UACjCU,IAAI,EAAE,OAAO;UACbC,OAAO,EACLF,GAAG,YAAYG,KAAK,GAChBH,GAAG,CAACE,OAAO,GACX;QACR,CAAC,CAAC;MACJ,CAAC,SAAS;QACR1E,YAAY,CAAC4E,eAAe,CAACb,SAAS,CAAC;QACvCrD,QAAQ,CAACE,OAAO,GAAG,IAAI;MACzB;IACF,CAAC,EAAE,CAAC;EACN,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMyD,IAAI,GAAGrF,WAAW,CACrB6E,IAAY,IAAK;IAChB,MAAMgB,OAAO,GAAGhB,IAAI,CAACiB,IAAI,CAAC,CAAC;IAC3B,IAAI,CAACrE,UAAU,CAACG,OAAO,IAAI,CAACiE,OAAO,EAAE;;IAErC;IACA;IACA,IAAI7E,YAAY,CAACK,QAAQ,CAAC,CAAC,CAAC0E,IAAI,EAAE;MAChC/E,YAAY,CAACgF,SAAS,CAACH,OAAO,CAAC;MAC/B;IACF;;IAEA;IACA;IACA;IACA,MAAMI,QAAQ,GAAGjF,YAAY,CAACK,QAAQ,CAAC,CAAC,CAAC6E,eAAe;IACxD,IAAID,QAAQ,EAAEjF,YAAY,CAACmF,YAAY,CAAC;MAAEC,OAAO,EAAEH,QAAQ;MAAEI,IAAI,EAAE;IAAU,CAAC,CAAC;IAE/ErF,YAAY,CAACsF,OAAO,CAACT,OAAO,CAAC;IAC7BjB,OAAO,CAACiB,OAAO,CAAC;EAClB,CAAC,EACD,CAACjB,OAAO,CACV,CAAC;EAED,MAAM2B,KAAK,GAAGvG,WAAW,CAAC,MAAM;IAC9B,MAAM;MAAEwG,QAAQ;MAAET;IAAK,CAAC,GAAG/E,YAAY,CAACK,QAAQ,CAAC,CAAC;IAClD,IAAI0E,IAAI,IAAI,CAACtE,UAAU,CAACG,OAAO,EAAE;IACjC,MAAM6E,QAAQ,GAAG,CAAC,GAAGD,QAAQ,CAAC,CAACE,OAAO,CAAC,CAAC,CAACC,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACC,IAAI,KAAK,MAAM,CAAC;IACvE,IAAI,CAACJ,QAAQ,EAAE;IACf;IACA,MAAMK,IAAI,GAAGN,QAAQ,CAACA,QAAQ,CAAC7C,MAAM,GAAG,CAAC,CAAC;IAC1C,IAAImD,IAAI,IAAIA,IAAI,CAACD,IAAI,KAAK,WAAW,IAAIC,IAAI,CAACC,KAAK,EAAE/F,YAAY,CAACgG,aAAa,CAACF,IAAI,CAACG,EAAE,CAAC;IACxFrC,OAAO,CAAC6B,QAAQ,CAAC5B,IAAI,CAAC;EACxB,CAAC,EAAE,CAACD,OAAO,CAAC,CAAC;EAEb,MAAMsC,IAAI,GAAGlH,WAAW,CAAC,MAAM;IAC7B;IACA;IACA;IACA,IAAIgB,YAAY,CAACK,QAAQ,CAAC,CAAC,CAAC8F,OAAO,EAAEnG,YAAY,CAACoG,cAAc,CAAC,KAAK,CAAC;IACvE1F,QAAQ,CAACE,OAAO,EAAEyF,KAAK,CAAC,CAAC;IACzB3F,QAAQ,CAACE,OAAO,GAAG,IAAI;EACzB,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA,MAAM0F,MAAM,GAAG9F,KAAK,CAAC8F,MAAM;EAC3BrH,SAAS,CAAC,MAAM;IACd,IAAI,CAACuB,KAAK,CAACuE,IAAI,IAAIuB,MAAM,EAAE;MACzBtG,YAAY,CAACgF,SAAS,CAAC,IAAI,CAAC;MAC5BX,IAAI,CAACiC,MAAM,CAAC;IACd;EACF,CAAC,EAAE,CAAC9F,KAAK,CAACuE,IAAI,EAAEuB,MAAM,EAAEjC,IAAI,CAAC,CAAC;EAE9B,MAAMkC,KAAK,GAAGvH,WAAW,CAAC,MAAM;IAC9B0B,QAAQ,CAACE,OAAO,EAAEyF,KAAK,CAAC,CAAC;IACzB5F,UAAU,CAACG,OAAO,EAAE2F,KAAK,CAAC,CAAC;IAC3BvG,YAAY,CAACuG,KAAK,CAAC,CAAC;EACtB,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,OAAO,GAAGxH,WAAW,CAAEyH,QAAiB,IAAK;IACjDzG,YAAY,CAACoG,cAAc,CAACK,QAAQ,CAAC;EACvC,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,MAAM,GAAG1H,WAAW,CACvB2H,CAAc,IAAK;IAClB3G,YAAY,CAACmF,YAAY,CAACwB,CAAC,CAAC;IAC5B;IACAtC,IAAI,CAAC1E,YAAY,CAACgH,CAAC,CAAC,CAAC;EACvB,CAAC,EACD,CAACtC,IAAI,CACP,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,MAAMuC,SAAS,GAAG5H,WAAW,CAC3B,OAAO6H,MAAmB,EAAEzB,OAAe,KAAK;IAC9C,IAAIyB,MAAM,CAACxC,IAAI,EAAE;MACfA,IAAI,CAACwC,MAAM,CAACxC,IAAI,CAAC;MACjB;IACF;IACA,IAAI,CAACwC,MAAM,CAAChE,QAAQ,EAAE;IACtB,MAAMiE,GAAG,GAAG,GAAG1B,OAAO,IAAIyB,MAAM,CAACE,KAAK,EAAE;IACxC,MAAM3E,MAAM,GAAGpC,YAAY,CAACgH,SAAS,CAAC,CAAC;IACvC,IAAI,CAAC5E,MAAM,EAAE;MACXpC,YAAY,CAAC0B,SAAS,CAAC,GAAGmF,MAAM,CAACE,KAAK,uCAAuC,CAAC;MAC9E;IACF;IACA/G,YAAY,CAACiH,cAAc,CAACH,GAAG,EAAE,SAAS,CAAC;IAC3C,MAAMI,OAAO,GAAG,MAAMpH,cAAc,CAAC;MACnCoB,MAAM,EAAE2F,MAAM,CAAChE,QAAQ,CAAC3B,MAAM;MAC9B2F,MAAM,EAAEA,MAAM,CAAChE,QAAQ,CAACgE,MAAM;MAC9BM,MAAM,EAAEN,MAAM,CAAChE,QAAQ,CAACsE,MAAM,IAAI,CAAC,CAAC;MACpCtE,QAAQ,EAAEvD,kBAAkB;MAC5B8C,MAAM;MACNW,MAAM,EAAExC,MAAM,EAAEwC,MAAM,IAAI,CAAC,CAAC;MAC5B9C,SAAS;MACT;MACA;MACAwC,OAAO,EAAElC,MAAM,EAAEmC,KAAK,EAAEC,MAAM,GAAG,CAAC,GAAG/C,OAAO,EAAE,GAAGW,MAAM,CAACmC,KAAK,CAAC,GAAGE;IACnE,CAAC,CAAC;IACF,IAAIsE,OAAO,CAACE,EAAE,EAAE;MACdpH,YAAY,CAACiH,cAAc,CAACH,GAAG,EAAE,MAAM,CAAC;IAC1C,CAAC,MAAM;MACL9G,YAAY,CAACiH,cAAc,CAACH,GAAG,EAAE,QAAQ,CAAC;MAC1C9G,YAAY,CAAC0B,SAAS,CAAC,GAAGmF,MAAM,CAACE,KAAK,aAAaG,OAAO,CAACnB,KAAK,EAAE,CAAC;IACrE;EACF,CAAC,EACD,CAAC1B,IAAI,EAAE9D,MAAM,CACf,CAAC;EAED,OAAO;IACLC,KAAK;IACL6D,IAAI;IACJ6B,IAAI;IACJK,KAAK;IACLC,OAAO;IACPjB,KAAK;IACLmB,MAAM;IACNE,SAAS;IACT/F,UAAU;IACVwG,SAAS,EAAEhG,MAAM,CAACC,IAAI,CAACN,gBAAgB,CAAC,CAAC2B;EAC3C,CAAC;AACH","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useCallback","useEffect","useMemo","useRef","useSyncExternalStore","Platform","dispatchToolAction","listSnapshotToolIds","listToolActions","readToolSnapshot","waitForToolRegistry","answerToText","CATALOG","createAskBuoySession","runGatedAction","SNAPSHOT_ACTION","askBuoyStore","buildPayload","clearTranscript","readTranscript","writeTranscript","isRelease","__DEV__","SAVE_DEBOUNCE_MS","useAskBuoyState","subscribe","getState","useAskBuoy","config","state","sessionRef","restoredRef","abortRef","configRef","current","configured","endpoint","model","persist","persistTranscript","availableActions","actions","toolId","includes","toolKey","Object","keys","sort","join","setConfigured","setMeta","protocol","undefined","appName","platform","OS","build","setNotice","apiKey","test","signature","held","getHeldSession","session","setAvailableActions","setLedger","ledger","headers","maxTokens","anthropicVersion","requestOverrides","catalog","tools","length","dispatch","readSnapshot","policy","context","requestApproval","input","askApproval","holdSession","cancelled","then","ready","prime","saved","hydrated","hydrate","messages","answers","usage","restore","history","busy","write","timer","setTimeout","clearTimeout","runTurn","text","beginTurn","messageId","startAssistant","controller","AbortController","onEvent","ev","send","signal","applyEvent","err","type","message","Error","finishAssistant","trimmed","trim","setQueued","awaiting","awaitingBlockId","recordAnswer","blockId","kind","addUser","retry","lastUser","reverse","find","m","role","last","error","removeMessage","id","stop","pending","answerApproval","abort","queued","reset","approve","approved","answer","a","runAction","action","key","label","getLedger","setActionState","outcome","params","ok","toolCount"],"sourceRoot":"../../../src","sources":["store/useAskBuoy.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/** Subscribe the sheet to Ask Buoy's own preferences. */
|
|
4
|
+
import { useSyncExternalStore } from "react";
|
|
5
|
+
import { askBuoySettings } from "./askBuoySettings";
|
|
6
|
+
export function useAskBuoySettings() {
|
|
7
|
+
return useSyncExternalStore(askBuoySettings.subscribe, askBuoySettings.get, askBuoySettings.get);
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=useAskBuoySettings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useSyncExternalStore","askBuoySettings","useAskBuoySettings","subscribe","get"],"sourceRoot":"../../../src","sources":["store/useAskBuoySettings.ts"],"mappings":";;AAAA;AACA,SAASA,oBAAoB,QAAQ,OAAO;AAE5C,SAASC,eAAe,QAA8B,mBAAmB;AAEzE,OAAO,SAASC,kBAAkBA,CAAA,EAAoB;EACpD,OAAOF,oBAAoB,CAACC,eAAe,CAACE,SAAS,EAAEF,eAAe,CAACG,GAAG,EAAEH,eAAe,CAACG,GAAG,CAAC;AAClG","ignoreList":[]}
|
|
@@ -37,12 +37,17 @@ describe("the wire surface", () => {
|
|
|
37
37
|
toolId: "storage",
|
|
38
38
|
action: "async.getItem",
|
|
39
39
|
label: "Read session",
|
|
40
|
-
description: "Read one AsyncStorage key"
|
|
40
|
+
description: "Read one AsyncStorage key",
|
|
41
|
+
params: {
|
|
42
|
+
key: "session"
|
|
43
|
+
},
|
|
44
|
+
effect: "read"
|
|
41
45
|
});
|
|
42
46
|
askBuoyStore.applyEvent(id, {
|
|
43
47
|
type: "tool-end",
|
|
44
48
|
id: "c1",
|
|
45
49
|
ok: true,
|
|
50
|
+
durationMs: 12,
|
|
46
51
|
summary: "eyJhbGciOiJIUzI1NiJ9.super.secret"
|
|
47
52
|
});
|
|
48
53
|
const snap = askBuoySyncAdapter.getSnapshot();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["beforeEach","describe","expect","it","EffectLedger","askBuoySyncAdapter","redactForWire","askBuoyStore","reset","setLedger","actions","Object","keys","not","toContain","sort","toEqual","addUser","id","startAssistant","applyEvent","type","toolId","action","label","description","ok","summary","snap","getSnapshot","call","messages","toolCalls","status","JSON","stringify","delta","ledger","record","kind","
|
|
1
|
+
{"version":3,"names":["beforeEach","describe","expect","it","EffectLedger","askBuoySyncAdapter","redactForWire","askBuoyStore","reset","setLedger","actions","Object","keys","not","toContain","sort","toEqual","addUser","id","startAssistant","applyEvent","type","toolId","action","label","description","params","key","effect","ok","durationMs","summary","snap","getSnapshot","call","messages","toolCalls","status","JSON","stringify","delta","ledger","record","kind","before","changes","reversible","toBe","permanent","transients","cases","input","text","store","Map","revertAll","_t","p","set","value","undefined","get"],"sourceRoot":"../../../src","sources":["sync/askBuoySyncAdapter.test.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,6 +5,32 @@ export declare function Table({ block }: {
|
|
|
5
5
|
export declare function KeyValue({ block }: {
|
|
6
6
|
block: KeyValueBlock;
|
|
7
7
|
}): import("react").JSX.Element;
|
|
8
|
+
/**
|
|
9
|
+
* Keys carry the index as well as the id.
|
|
10
|
+
*
|
|
11
|
+
* The ids in here come from the app's own data, and app data is not required
|
|
12
|
+
* to be unique — a Poké Mart bag in this repo holds two lines sharing one
|
|
13
|
+
* `lineId`, which is a bug in that app but must not be one in a devtool
|
|
14
|
+
* rendering it. Paging made it visible: the duplicate sat past the initial cap,
|
|
15
|
+
* so React only saw the collision on the first "Show more".
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* What a tapped list row does.
|
|
19
|
+
*
|
|
20
|
+
* A row can carry a picture and an action, and they want the same gesture. The
|
|
21
|
+
* picture wins the row body — looking at a thing must not fire it — and the
|
|
22
|
+
* action keeps its label as its own control. A row with no picture is
|
|
23
|
+
* unchanged: the whole row runs the action, which is what it did before rows
|
|
24
|
+
* could open.
|
|
25
|
+
*/
|
|
26
|
+
export declare function listRowBehaviour(item: Pick<ListBlock["items"][number], "image" | "action">): {
|
|
27
|
+
/** Tapping the row body enlarges the picture. */
|
|
28
|
+
canExpand: boolean;
|
|
29
|
+
/** Tapping the row body runs the action (only when there is no picture). */
|
|
30
|
+
rowRunsAction: boolean;
|
|
31
|
+
/** The action label needs to be its own pressable. */
|
|
32
|
+
actionIsOwnControl: boolean;
|
|
33
|
+
};
|
|
8
34
|
export declare function List({ block }: {
|
|
9
35
|
block: ListBlock;
|
|
10
36
|
}): import("react").JSX.Element;
|
|
@@ -17,6 +43,11 @@ export declare function Chart({ block }: {
|
|
|
17
43
|
export declare function Steps({ block }: {
|
|
18
44
|
block: StepsBlock;
|
|
19
45
|
}): import("react").JSX.Element;
|
|
46
|
+
/**
|
|
47
|
+
* Router, per rule4: two specialised components rather than one that changes
|
|
48
|
+
* shape. A `cond ? <A/> : <B/>` inside a single component is the Fabric
|
|
49
|
+
* view-index hazard, and these two subtrees have nothing in common.
|
|
50
|
+
*/
|
|
20
51
|
export declare function Code({ block }: {
|
|
21
52
|
block: CodeBlock;
|
|
22
53
|
}): import("react").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataBlocks.d.ts","sourceRoot":"","sources":["../../../src/blocks/DataBlocks.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DataBlocks.d.ts","sourceRoot":"","sources":["../../../src/blocks/DataBlocks.tsx"],"names":[],"mappings":"AAQA,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,UAAU,EAChB,MAAM,qBAAqB,CAAC;AAmB7B,wBAAgB,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,UAAU,CAAA;CAAE,+BA4BrD;AAED,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,aAAa,CAAA;CAAE,+BAqB3D;AAED;;;;;;;;GAQG;AACH;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC,GAAG;IAC5F,iDAAiD;IACjD,SAAS,EAAE,OAAO,CAAC;IACnB,4EAA4E;IAC5E,aAAa,EAAE,OAAO,CAAC;IACvB,sDAAsD;IACtD,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CAOA;AAED,wBAAgB,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,+BAoFnD;AAED,wBAAgB,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,+BA4BnD;AAED,wBAAgB,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,UAAU,CAAA;CAAE,+BAoBrD;AAED,wBAAgB,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,UAAU,CAAA;CAAE,+BAarD;AAsDD;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,+BAInD;AAED,wBAAgB,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,WAAW,CAAA;CAAE,+BAYvD;AAED,wBAAgB,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE,+BAYzD"}
|
|
@@ -26,6 +26,17 @@ export declare function Claim({ block }: {
|
|
|
26
26
|
export declare function Details({ block }: {
|
|
27
27
|
block: DetailsBlock;
|
|
28
28
|
}): import("react").JSX.Element;
|
|
29
|
+
/**
|
|
30
|
+
* The tool-header segmented control, not a strip of this block's own.
|
|
31
|
+
*
|
|
32
|
+
* `NightSegmented` is what the dial settings and the network tool mount, so a
|
|
33
|
+
* tabbed block now reads as part of the same product rather than as a
|
|
34
|
+
* lookalike drawn next to it. `sm` is its compact variant, which is what a
|
|
35
|
+
* control inside a chat bubble wants.
|
|
36
|
+
*
|
|
37
|
+
* Keyed by INDEX, not label: two tabs may legitimately share a label, and a
|
|
38
|
+
* duplicate key would collapse them into one.
|
|
39
|
+
*/
|
|
29
40
|
export declare function Tabs({ block }: {
|
|
30
41
|
block: TabsBlock;
|
|
31
42
|
}): import("react").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExtraBlocks.d.ts","sourceRoot":"","sources":["../../../src/blocks/ExtraBlocks.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,iBAAiB,EACjB,eAAe,EACf,UAAU,EACV,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,SAAS,EACT,SAAS,EAET,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,eAAe,EACf,WAAW,EACX,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,SAAS,EACT,SAAS,EACT,aAAa,EACb,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAS7B,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,gBAAgB,CAAA;CAAE,+BAiBjE;AAGD,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,gBAAgB,CAAA;CAAE,+BAuCjE;AAGD,wBAAgB,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,WAAW,CAAA;CAAE,+BA0CvD;AA6CD,wBAAgB,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,WAAW,CAAA;CAAE,+BAiBvD;AAGD,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,aAAa,CAAA;CAAE,+BA8B3D;AAwDD,wBAAgB,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,+BAgBnD;AAED,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,aAAa,CAAA;CAAE,+BAyB3D;AAGD,wBAAgB,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,UAAU,CAAA;CAAE,+BA4BrD;AAGD,wBAAgB,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE,+BAWzD;AAED,wBAAgB,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,+
|
|
1
|
+
{"version":3,"file":"ExtraBlocks.d.ts","sourceRoot":"","sources":["../../../src/blocks/ExtraBlocks.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MediaBlocks.d.ts","sourceRoot":"","sources":["../../../src/blocks/MediaBlocks.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAQ,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAIhE,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,cAAc,CAAA;CAAE,+
|
|
1
|
+
{"version":3,"file":"MediaBlocks.d.ts","sourceRoot":"","sources":["../../../src/blocks/MediaBlocks.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAQ,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAIhE,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,cAAc,CAAA;CAAE,+BAyC7D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReceiptBlocks.d.ts","sourceRoot":"","sources":["../../../src/blocks/ReceiptBlocks.tsx"],"names":[],"mappings":"AAQA,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACzB,MAAM,qBAAqB,CAAC;AA8B7B,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,gBAAgB,CAAA;CAAE,+
|
|
1
|
+
{"version":3,"file":"ReceiptBlocks.d.ts","sourceRoot":"","sources":["../../../src/blocks/ReceiptBlocks.tsx"],"names":[],"mappings":"AAQA,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACzB,MAAM,qBAAqB,CAAC;AA8B7B,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,gBAAgB,CAAA;CAAE,+BA0BjE;AAQD,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,gBAAgB,CAAA;CAAE,+BA2BjE;AAED,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,aAAa,CAAA;CAAE,+BAgC3D;AAED,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,mBAAmB,CAAA;CAAE,+BAsBvE;AAED,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,eAAe,CAAA;CAAE,+BA0B/D;AASD,wBAAgB,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE,+BAiBzD;AAED,wBAAgB,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,UAAU,CAAA;CAAE,+BAYrD;AAED,sEAAsE;AACtE,wBAAgB,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,+BAqBnD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"listRow.test.d.ts","sourceRoot":"","sources":["../../../src/blocks/listRow.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The arithmetic behind a block's "+N more" footer, separated from the hook so
|
|
3
|
+
* it can be tested without a renderer.
|
|
4
|
+
*
|
|
5
|
+
* The rule that matters: a control is offered ONLY when it changes what is on
|
|
6
|
+
* screen. The previous version derived "+N more" from a `total` the source
|
|
7
|
+
* reported while deriving the tap target from the array actually in hand, so a
|
|
8
|
+
* block holding five items and claiming six rendered a "+1 more" with nothing
|
|
9
|
+
* to reveal — a button that did nothing when tapped. This takes a count and a
|
|
10
|
+
* limit and nothing else, so `canExpand` is the same fact as `hidden > 0`.
|
|
11
|
+
*/
|
|
12
|
+
export interface PageState {
|
|
13
|
+
/** Held but not rendered. */
|
|
14
|
+
hidden: number;
|
|
15
|
+
/** What one more tap reveals. */
|
|
16
|
+
next: number;
|
|
17
|
+
/** Something beyond the initial cap is on screen. */
|
|
18
|
+
expanded: boolean;
|
|
19
|
+
canExpand: boolean;
|
|
20
|
+
canCollapse: boolean;
|
|
21
|
+
}
|
|
22
|
+
export declare function pageState(count: number, cap: number, limit: number, step: number): PageState;
|
|
23
|
+
//# sourceMappingURL=pageState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pageState.d.ts","sourceRoot":"","sources":["../../../src/blocks/pageState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,WAAW,SAAS;IACxB,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAc5F"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pageState.test.d.ts","sourceRoot":"","sources":["../../../src/blocks/pageState.test.ts"],"names":[],"mappings":""}
|
|
@@ -17,18 +17,48 @@ export declare function Card({ title, source, children, testID, tone, }: {
|
|
|
17
17
|
testID?: string;
|
|
18
18
|
tone?: "warning" | "danger" | "info";
|
|
19
19
|
}): import("react").JSX.Element;
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
export interface Paged<T> {
|
|
21
|
+
visible: T[];
|
|
22
|
+
/** Held by the block but not rendered yet. */
|
|
23
|
+
hidden: number;
|
|
24
|
+
/** What the next tap reveals — `hidden`, capped to one page. */
|
|
25
|
+
next: number;
|
|
26
|
+
expanded: boolean;
|
|
27
|
+
/** Present ONLY when there is something to reveal. */
|
|
28
|
+
showMore?: () => void;
|
|
29
|
+
/** Present ONLY when something has been revealed. */
|
|
30
|
+
showLess?: () => void;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* A capped list that grows a page at a time.
|
|
34
|
+
*
|
|
35
|
+
* The callers used to spell the expander's enabled-ness out themselves
|
|
36
|
+
* (`items.length > visible.length || expanded ? toggle : undefined`) at seven
|
|
37
|
+
* call sites, and getting it wrong rendered a "+N more" that did nothing when
|
|
38
|
+
* tapped. Both halves live here now so a call site cannot express that state.
|
|
39
|
+
*/
|
|
40
|
+
export declare function usePaged<T>(items: T[], cap: number, step?: number): Paged<T>;
|
|
41
|
+
/**
|
|
42
|
+
* The footer of a paged list: reveal one more page, or fold back to the cap.
|
|
43
|
+
*
|
|
44
|
+
* It knows nothing about any `total` the source reported, and that is the
|
|
45
|
+
* point. The old version drew its count from that number while drawing its tap
|
|
46
|
+
* target from the array actually in hand — so a block holding five items and
|
|
47
|
+
* claiming six rendered "+1 more" with nothing behind it. The engine hands the
|
|
48
|
+
* whole list over now (see agent-core's receipts), so what this can show and
|
|
49
|
+
* what it can reveal are the same thing by construction.
|
|
50
|
+
*/
|
|
51
|
+
export declare function More<T>({ paged }: {
|
|
52
|
+
paged: Paged<T>;
|
|
53
|
+
}): import("react").JSX.Element | null;
|
|
54
|
+
/**
|
|
55
|
+
* A list that CANNOT grow: the cap was applied where the block was built, so
|
|
56
|
+
* the rest was never sent. Stated, never offered as a tap.
|
|
57
|
+
*/
|
|
58
|
+
export declare function MoreNote({ shown, total }: {
|
|
22
59
|
shown: number;
|
|
23
60
|
total?: number;
|
|
24
|
-
onExpand?: () => void;
|
|
25
|
-
expanded?: boolean;
|
|
26
61
|
}): import("react").JSX.Element | null;
|
|
27
|
-
export declare function useExpand<T>(items: T[], cap: number): {
|
|
28
|
-
visible: T[];
|
|
29
|
-
expanded: boolean;
|
|
30
|
-
toggle: () => void;
|
|
31
|
-
};
|
|
32
62
|
/** Up to two buttons. One primary (accent, dark ink), one plate. */
|
|
33
63
|
export declare function ActionRow({ actions, blockId, align }: {
|
|
34
64
|
actions?: BlockAction[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../../src/blocks/primitives.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGjD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../../src/blocks/primitives.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGjD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAKzE,wBAAgB,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,CAe7C;AAED,4EAA4E;AAC5E,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,CAAC,EAAE,UAAU,CAAA;CAAE,sCASlE;AAED,wBAAgB,IAAI,CAAC,EACnB,KAAK,EACL,MAAM,EACN,QAAQ,EACR,MAAM,EACN,IAAI,GACL,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;CACtC,+BAoBA;AAYD,MAAM,WAAW,KAAK,CAAC,CAAC;IACtB,OAAO,EAAE,CAAC,EAAE,CAAC;IACb,8CAA8C;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,MAAkB,GAAG,KAAK,CAAC,CAAC,CAAC,CAgBvF;AAED;;;;;;;;;GASG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;CAAE,sCA6BrD;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,sCAS3E;AAED,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAc,EAAE,EAAE;IAAE,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,sCA6CrI;AAED,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuBtB,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export { ActionRow, blockStyles, Card, More, ProvenanceBadge, toneColor,
|
|
1
|
+
export { ActionRow, blockStyles, Card, More, MoreNote, ProvenanceBadge, toneColor, usePaged } from "./primitives";
|
|
2
|
+
export type { Paged } from "./primitives";
|
|
2
3
|
export { useBlockHandlers } from "./context";
|
|
3
4
|
//# sourceMappingURL=primitivesIndex.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitivesIndex.d.ts","sourceRoot":"","sources":["../../../src/blocks/primitivesIndex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"primitivesIndex.d.ts","sourceRoot":"","sources":["../../../src/blocks/primitivesIndex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAClH,YAAY,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -9,6 +9,16 @@ export interface AskBuoyHeaderProps {
|
|
|
9
9
|
hasMessages: boolean;
|
|
10
10
|
onBack?: () => void;
|
|
11
11
|
onReset: () => void;
|
|
12
|
+
/**
|
|
13
|
+
* The whole conversation as text, built on press. The header is the one
|
|
14
|
+
* place you can reach it without first scrolling back to the newest answer —
|
|
15
|
+
* which is exactly where you are NOT when a long session is the thing you
|
|
16
|
+
* want to paste into a ticket. Omitted (scripted demos, prototype scenes)
|
|
17
|
+
* the copy button is not rendered at all.
|
|
18
|
+
*/
|
|
19
|
+
getTranscript?: () => string;
|
|
20
|
+
/** Open the settings view. Omitted where there is nowhere to go (demos). */
|
|
21
|
+
onOpenSettings?: () => void;
|
|
12
22
|
}
|
|
13
|
-
export declare function AskBuoyHeader({ configured, busy, failed, activeLabel, toolCount, hasMessages, onBack, onReset, }: AskBuoyHeaderProps): import("react").JSX.Element;
|
|
23
|
+
export declare function AskBuoyHeader({ configured, busy, failed, activeLabel, toolCount, hasMessages, onBack, onReset, getTranscript, onOpenSettings, }: AskBuoyHeaderProps): import("react").JSX.Element;
|
|
14
24
|
//# sourceMappingURL=AskBuoyHeader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AskBuoyHeader.d.ts","sourceRoot":"","sources":["../../../src/components/AskBuoyHeader.tsx"],"names":[],"mappings":"AA+
|
|
1
|
+
{"version":3,"file":"AskBuoyHeader.d.ts","sourceRoot":"","sources":["../../../src/components/AskBuoyHeader.tsx"],"names":[],"mappings":"AA+CA,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,IAAI,EAAE,OAAO,CAAC;IACd,6EAA6E;IAC7E,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gDAAgD;IAChD,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IAC7B,4EAA4E;IAC5E,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED,wBAAgB,aAAa,CAAC,EAC5B,UAAU,EACV,IAAI,EACJ,MAAc,EACd,WAAW,EACX,SAAS,EACT,WAAW,EACX,MAAM,EACN,OAAO,EACP,aAAa,EACb,cAAc,GACf,EAAE,kBAAkB,+BAuGpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AskBuoyModal.d.ts","sourceRoot":"","sources":["../../../src/components/AskBuoyModal.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AskBuoyModal.d.ts","sourceRoot":"","sources":["../../../src/components/AskBuoyModal.tsx"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAarD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAED,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,OAAO,EACP,MAAM,EACN,UAAU,EACV,cAAc,EACd,MAAM,GACP,EAAE,iBAAiB,+BA6RnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AskBuoySettings.d.ts","sourceRoot":"","sources":["../../../src/components/AskBuoySettings.tsx"],"names":[],"mappings":"AAiBA,wBAAgB,eAAe,gCAsB9B"}
|
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
import type { ChatMessage } from "../store/askBuoyStore";
|
|
2
2
|
/**
|
|
3
|
-
* The
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
3
|
+
* The whole conversation as plain text — the only thing Copy ever produces,
|
|
4
|
+
* and the only way a session leaves the DEVICE (what it saves to disk for a
|
|
5
|
+
* reload goes nowhere — see `transcriptPersistence`).
|
|
6
|
+
*
|
|
7
|
+
* Plain text on purpose. This lands in a Slack message, a ticket comment or a
|
|
8
|
+
* notes file, all of which are read by a person; a JSON document is a worse
|
|
9
|
+
* version of that everywhere except a parser, and nothing here parses it.
|
|
10
|
+
*
|
|
11
|
+
* With `Show agent thinking` on it carries the working too — the reasoning and
|
|
12
|
+
* each step with its parameters — because reading the run somewhere that is
|
|
13
|
+
* not a phone is the entire point of that setting.
|
|
7
14
|
*/
|
|
8
|
-
export declare function transcriptToText(messages: ChatMessage[]): string;
|
|
15
|
+
export declare function transcriptToText(messages: ChatMessage[], withTrace?: boolean): string;
|
|
9
16
|
export interface MessageListProps {
|
|
10
17
|
messages: ChatMessage[];
|
|
11
18
|
ListHeaderComponent?: React.ReactElement | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageList.d.ts","sourceRoot":"","sources":["../../../src/components/MessageList.tsx"],"names":[],"mappings":"AAgDA,OAAO,KAAK,EAAE,WAAW,EAA6B,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"MessageList.d.ts","sourceRoot":"","sources":["../../../src/components/MessageList.tsx"],"names":[],"mappings":"AAgDA,OAAO,KAAK,EAAE,WAAW,EAA6B,MAAM,uBAAuB,CAAC;AAgNpF;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,SAAS,UAAQ,GAAG,MAAM,CAmBnF;AAgED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,mBAAmB,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAChD,kBAAkB,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC/C,mBAAmB,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAChD,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,wBAAgB,WAAW,CAAC,EAC1B,QAAQ,EACR,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,OAAO,GACR,EAAE,gBAAgB,+BAkFlB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThinkingStrip.d.ts","sourceRoot":"","sources":["../../../src/components/ThinkingStrip.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,WAAW,EAAgB,MAAM,uBAAuB,CAAC;AA+CvE,wBAAgB,aAAa,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,WAAW,CAAA;CAAE,sCA6DlE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCopyAction.d.ts","sourceRoot":"","sources":["../../../src/components/useCopyAction.ts"],"names":[],"mappings":"AAmBA,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,MAAM,GAAG;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,IAAI,CAAA;CAAE,CA0B1F"}
|
|
@@ -22,6 +22,11 @@ export { MessageActions, ReasoningStrip, ElapsedRow, QueuedComposer, ReloadDivid
|
|
|
22
22
|
export { Markdown } from "./components/Markdown";
|
|
23
23
|
export { MessageList } from "./components/MessageList";
|
|
24
24
|
export { AskBuoyHeader } from "./components/AskBuoyHeader";
|
|
25
|
+
export { AskBuoySettings } from "./components/AskBuoySettings";
|
|
26
|
+
export { ThinkingStrip } from "./components/ThinkingStrip";
|
|
27
|
+
export { askBuoySettings, type AskBuoySettings as AskBuoySettingsValue } from "./store/askBuoySettings";
|
|
28
|
+
export { useAskBuoySettings } from "./store/useAskBuoySettings";
|
|
29
|
+
export { traceEntries, traceToText, hasTrace, type TraceEntry } from "./store/traceText";
|
|
25
30
|
export { Composer } from "./components/Composer";
|
|
26
31
|
export { ChangesBar } from "./components/ChangesBar";
|
|
27
32
|
export { ApprovalCard } from "./components/ApprovalCard";
|