@bitbaum/chatkit 0.18.0 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/README.md +161 -0
  2. package/dist/react/AttachMenu.d.ts +18 -1
  3. package/dist/react/AttachMenu.d.ts.map +1 -1
  4. package/dist/react/AttachMenu.js +8 -4
  5. package/dist/react/AttachMenu.js.map +1 -1
  6. package/dist/react/ChatApp.d.ts +79 -5
  7. package/dist/react/ChatApp.d.ts.map +1 -1
  8. package/dist/react/ChatApp.js +113 -7
  9. package/dist/react/ChatApp.js.map +1 -1
  10. package/dist/react/ChatHistory.d.ts +7 -1
  11. package/dist/react/ChatHistory.d.ts.map +1 -1
  12. package/dist/react/ChatHistory.js +2 -2
  13. package/dist/react/ChatHistory.js.map +1 -1
  14. package/dist/react/Composer.d.ts +20 -3
  15. package/dist/react/Composer.d.ts.map +1 -1
  16. package/dist/react/Composer.js +19 -4
  17. package/dist/react/Composer.js.map +1 -1
  18. package/dist/react/Thread.d.ts +48 -2
  19. package/dist/react/Thread.d.ts.map +1 -1
  20. package/dist/react/Thread.js +13 -6
  21. package/dist/react/Thread.js.map +1 -1
  22. package/dist/react/attach.d.ts +1 -1
  23. package/dist/react/attach.d.ts.map +1 -1
  24. package/dist/react/hooks.d.ts.map +1 -1
  25. package/dist/react/hooks.js +11 -0
  26. package/dist/react/hooks.js.map +1 -1
  27. package/dist/react/index.d.ts +10 -10
  28. package/dist/react/index.d.ts.map +1 -1
  29. package/dist/react/index.js +4 -4
  30. package/dist/react/index.js.map +1 -1
  31. package/dist/react/use-attachments.d.ts +17 -0
  32. package/dist/react/use-attachments.d.ts.map +1 -1
  33. package/dist/react/use-attachments.js +89 -72
  34. package/dist/react/use-attachments.js.map +1 -1
  35. package/dist/react/use-chat-app.d.ts +53 -3
  36. package/dist/react/use-chat-app.d.ts.map +1 -1
  37. package/dist/react/use-chat-app.js +126 -15
  38. package/dist/react/use-chat-app.js.map +1 -1
  39. package/package.json +2 -2
  40. package/styles.css +64 -1
@@ -1,6 +1,45 @@
1
1
  "use client";
2
2
  import { useEffect, useRef, useState } from "react";
3
3
  import { deriveTitle, newId, pickRestored, } from "../conversations.js";
4
+ /**
5
+ * Throw this from a transport to say why a turn failed in the reader's
6
+ * words: the failed bubble shows `message`, and `kind` (the product's own
7
+ * code, e.g. "quota" or "no-vision") travels with that message as
8
+ * `failure.kind` for a footer to link the fix. Any other error shows the
9
+ * thread's `failed` label — a raw `TypeError: Failed to fetch` is never
10
+ * shown to a reader — unless ChatApp's `failureMessage` maps it.
11
+ */
12
+ export class ChatTurnError extends Error {
13
+ kind;
14
+ constructor(message, options = {}) {
15
+ super(message, options.cause === undefined ? undefined : { cause: options.cause });
16
+ this.name = "ChatTurnError";
17
+ this.kind = options.kind;
18
+ }
19
+ }
20
+ /**
21
+ * What a failed turn keeps: a `ChatTurnError`'s words and kind, a plain
22
+ * `{ message, kind }` object as thrown, or what `map` makes of anything
23
+ * else. Never an ordinary Error's message — that is for the console.
24
+ */
25
+ export function chatTurnFailure(error, map) {
26
+ if (error instanceof ChatTurnError) {
27
+ return { message: error.message, ...(error.kind ? { kind: error.kind } : {}) };
28
+ }
29
+ const mapped = map?.(error);
30
+ if (mapped)
31
+ return { message: mapped };
32
+ if (error && typeof error === "object" && !(error instanceof Error)) {
33
+ const { message, kind } = error;
34
+ const out = {};
35
+ if (typeof message === "string" && message.trim())
36
+ out.message = message;
37
+ if (typeof kind === "string" && kind)
38
+ out.kind = kind;
39
+ return out;
40
+ }
41
+ return {};
42
+ }
4
43
  const TEMP = "tmp";
5
44
  export const isTemporaryId = (id) => !!id && id.startsWith(`${TEMP}-`);
6
45
  function messageAttachments(list) {
@@ -38,7 +77,7 @@ function writeRemembered(key, id) {
38
77
  * and temporary chats, turns (one per conversation, each running on when the
39
78
  * person opens another chat), the queue, titles and the reopen-on-reload.
40
79
  */
41
- export function useChatApp({ store, transport, makeTitle, conversationId, onConversationChange, rememberKey, }) {
80
+ export function useChatApp({ store, transport, makeTitle, conversationId, onConversationChange, rememberKey, stopKeepsPartial = true, failureMessage, onTemporaryEnd, restore = true, }) {
42
81
  const [list, setList] = useState([]);
43
82
  const [listState, setListState] = useState("loading");
44
83
  const [activeId, setActiveId] = useState(null);
@@ -50,6 +89,7 @@ export function useChatApp({ store, transport, makeTitle, conversationId, onConv
50
89
  const [queue, setQueue] = useState([]);
51
90
  const [problem, setProblem] = useState(null);
52
91
  const [reload, setReload] = useState(0);
92
+ const [ready, setReady] = useState(false);
53
93
  // Async work reads the CURRENT state through these, never a stale closure.
54
94
  const threadsRef = useRef(threads);
55
95
  const queueRef = useRef(queue);
@@ -59,10 +99,32 @@ export function useChatApp({ store, transport, makeTitle, conversationId, onConv
59
99
  const restored = useRef(false);
60
100
  const transportRef = useRef(transport);
61
101
  const titleRef = useRef(makeTitle);
102
+ const optionsRef = useRef({ stopKeepsPartial, failureMessage, onTemporaryEnd });
62
103
  useEffect(() => {
63
104
  transportRef.current = transport;
64
105
  titleRef.current = makeTitle;
106
+ optionsRef.current = { stopKeepsPartial, failureMessage, onTemporaryEnd };
65
107
  });
108
+ // The files of each person's message, by its id, kept until its answer
109
+ // lands: Retry after a failure sends the pictures again, not only the words.
110
+ const turnFiles = useRef(new Map());
111
+ const ended = useRef(new Set());
112
+ const readyWaiters = useRef([]);
113
+ const markReady = () => {
114
+ restored.current = true;
115
+ setReady(true);
116
+ for (const go of readyWaiters.current.splice(0))
117
+ go();
118
+ };
119
+ /** Resolves once the list has loaded and the reopened chat is chosen, so a
120
+ * message sent from outside never lands before the restore moves away. */
121
+ const whenReady = () => restored.current ? Promise.resolve() : new Promise((go) => readyWaiters.current.push(go));
122
+ const endTemporary = (id) => {
123
+ if (!isTemporaryId(id) || ended.current.has(id))
124
+ return;
125
+ ended.current.add(id);
126
+ optionsRef.current.onTemporaryEnd?.(id);
127
+ };
66
128
  const setThreadsNow = (fn) => {
67
129
  threadsRef.current = fn(threadsRef.current);
68
130
  setThreads(threadsRef.current);
@@ -83,13 +145,28 @@ export function useChatApp({ store, transport, makeTitle, conversationId, onConv
83
145
  if (!isTemporaryId(id))
84
146
  return;
85
147
  controllers.current.get(id)?.abort();
148
+ for (const m of threadsRef.current[id] ?? [])
149
+ turnFiles.current.delete(m.id);
86
150
  setThreadsNow((t) => {
87
151
  const next = { ...t };
88
152
  delete next[id];
89
153
  return next;
90
154
  });
91
155
  setQueueNow((q) => q.filter((item) => item.conversation !== id));
156
+ endTemporary(id);
92
157
  };
158
+ // A temporary chat also ends when the page goes away or ChatApp unmounts.
159
+ // (StrictMode's rehearsal unmount finds no temporary chat: one only exists
160
+ // after a first message.)
161
+ useEffect(() => {
162
+ const hide = () => endTemporary(activeRef.current);
163
+ globalThis.addEventListener?.("pagehide", hide);
164
+ return () => {
165
+ globalThis.removeEventListener?.("pagehide", hide);
166
+ hide();
167
+ };
168
+ // Reads everything through refs.
169
+ }, []);
93
170
  const open = (id) => {
94
171
  if (id === activeRef.current)
95
172
  return;
@@ -126,17 +203,21 @@ export function useChatApp({ store, transport, makeTitle, conversationId, onConv
126
203
  setList(rows);
127
204
  setListState("ready");
128
205
  if (!restored.current) {
129
- restored.current = true;
130
- const id = pickRestored(rows, conversationId, readRemembered(rememberKey));
131
- if (id)
206
+ const id = restore
207
+ ? pickRestored(rows, conversationId, readRemembered(rememberKey))
208
+ : null;
209
+ // An outside send may already have opened a chat: never move off it.
210
+ if (id && activeRef.current === null)
132
211
  open(id);
212
+ markReady();
133
213
  }
134
214
  })
135
215
  .catch(() => {
136
216
  if (!alive)
137
217
  return;
138
- restored.current = true;
139
218
  setListState("error");
219
+ if (!restored.current)
220
+ markReady();
140
221
  });
141
222
  return () => {
142
223
  alive = false;
@@ -181,9 +262,12 @@ export function useChatApp({ store, transport, makeTitle, conversationId, onConv
181
262
  setLive((l) => ({ ...l, [id]: {} }));
182
263
  let soFar = {};
183
264
  let ok = false;
265
+ let keepPartial = null;
266
+ const asked = [...(threadsRef.current[id] ?? [])].reverse().find((m) => m.role === "user");
184
267
  try {
185
268
  const result = await transportRef.current({
186
269
  conversationId: temp ? null : id,
270
+ chatId: id,
187
271
  temporary: temp,
188
272
  text,
189
273
  attachments,
@@ -194,6 +278,9 @@ export function useChatApp({ store, transport, makeTitle, conversationId, onConv
194
278
  if (!controller.signal.aborted)
195
279
  setLive((l) => (id in l ? { ...l, [id]: soFar } : l));
196
280
  },
281
+ stopKeepsPartial: (keep) => {
282
+ keepPartial = keep;
283
+ },
197
284
  });
198
285
  if (controller.signal.aborted)
199
286
  throw new DOMException("stopped", "AbortError");
@@ -202,6 +289,8 @@ export function useChatApp({ store, transport, makeTitle, conversationId, onConv
202
289
  push(id, message);
203
290
  save(id, message);
204
291
  ok = true;
292
+ if (asked)
293
+ turnFiles.current.delete(asked.id);
205
294
  if (!temp && history.length === 0 && titleRef.current) {
206
295
  void Promise.resolve(titleRef.current({ text, answer: answer.content }))
207
296
  .then((title) => (title?.trim() ? rename(id, title.trim()) : undefined))
@@ -210,10 +299,14 @@ export function useChatApp({ store, transport, makeTitle, conversationId, onConv
210
299
  });
211
300
  }
212
301
  }
213
- catch {
302
+ catch (error) {
214
303
  if (controller.signal.aborted) {
215
- // Stopped: what had arrived is kept, as the apps keep a half answer.
216
- if (soFar.text?.trim()) {
304
+ // Stopped: what had arrived is kept, as the apps keep a half answer —
305
+ // unless the product says this turn's text is not fit to keep.
306
+ const keep = keepPartial ?? optionsRef.current.stopKeepsPartial;
307
+ if (keep && soFar.text?.trim()) {
308
+ if (asked)
309
+ turnFiles.current.delete(asked.id);
217
310
  const message = {
218
311
  id: newId("m"),
219
312
  role: "assistant",
@@ -226,7 +319,14 @@ export function useChatApp({ store, transport, makeTitle, conversationId, onConv
226
319
  setStopped((s) => ({ ...s, [id]: true }));
227
320
  }
228
321
  else {
229
- push(id, { id: newId("m"), role: "assistant", content: "", failed: true });
322
+ const failure = chatTurnFailure(error, optionsRef.current.failureMessage);
323
+ push(id, {
324
+ id: newId("m"),
325
+ role: "assistant",
326
+ content: failure.message ?? "",
327
+ failed: true,
328
+ ...(failure.message || failure.kind ? { failure } : {}),
329
+ });
230
330
  }
231
331
  }
232
332
  finally {
@@ -243,27 +343,33 @@ export function useChatApp({ store, transport, makeTitle, conversationId, onConv
243
343
  const next = queueRef.current.find((q) => q.conversation === id);
244
344
  if (next) {
245
345
  setQueueNow((q) => q.filter((item) => item.id !== next.id));
246
- void sendIn(id, next.text, next.attachments);
346
+ void sendIn(id, next.text, next.attachments, next.chips);
247
347
  }
248
348
  }
249
349
  };
250
- const sendIn = async (id, text, attachments) => {
350
+ const sendIn = async (id, text, attachments, chips) => {
251
351
  const history = (threadsRef.current[id] ?? []).filter((m) => !m.failed);
252
352
  const message = {
253
353
  id: newId("m"),
254
354
  role: "user",
255
355
  content: text,
256
356
  ...(attachments.length ? { attachments: messageAttachments(attachments) } : {}),
357
+ ...(chips && chips.length ? { chips } : {}),
257
358
  };
359
+ if (attachments.length)
360
+ turnFiles.current.set(message.id, attachments);
258
361
  push(id, message);
259
362
  save(id, message);
260
363
  await runTurn(id, text, attachments, history);
261
364
  };
262
365
  /** Composer's onSend. Resolves false to keep the draft (nothing was sent). */
263
- const send = async (text, attachments = []) => {
366
+ const send = async (text, attachments = [], options = {}) => {
367
+ const { chips } = options;
368
+ if (options.newChat)
369
+ newChat();
264
370
  let id = activeRef.current;
265
371
  if (id && controllers.current.has(id)) {
266
- setQueueNow((q) => [...q, { id: newId("q"), conversation: id, text, attachments }]);
372
+ setQueueNow((q) => [...q, { id: newId("q"), conversation: id, text, attachments, chips }]);
267
373
  return true;
268
374
  }
269
375
  if (!id) {
@@ -284,7 +390,7 @@ export function useChatApp({ store, transport, makeTitle, conversationId, onConv
284
390
  setThreadsNow((t) => ({ ...t, [id]: [] }));
285
391
  select(id, temporaryRef.current);
286
392
  }
287
- void sendIn(id, text, attachments);
393
+ void sendIn(id, text, attachments, chips);
288
394
  return true;
289
395
  };
290
396
  const stop = () => {
@@ -304,7 +410,7 @@ export function useChatApp({ store, transport, makeTitle, conversationId, onConv
304
410
  return;
305
411
  setThreadsNow((t) => ({ ...t, [id]: kept }));
306
412
  const history = kept.slice(0, kept.indexOf(lastUser));
307
- void runTurn(id, lastUser.content, [], history);
413
+ void runTurn(id, lastUser.content, turnFiles.current.get(lastUser.id) ?? [], history);
308
414
  };
309
415
  const newChat = () => {
310
416
  leaveTemporary();
@@ -332,6 +438,8 @@ export function useChatApp({ store, transport, makeTitle, conversationId, onConv
332
438
  };
333
439
  const remove = async (id) => {
334
440
  controllers.current.get(id)?.abort();
441
+ for (const m of threadsRef.current[id] ?? [])
442
+ turnFiles.current.delete(m.id);
335
443
  setList((l) => l.filter((c) => c.id !== id));
336
444
  setThreadsNow((t) => {
337
445
  const next = { ...t };
@@ -353,6 +461,9 @@ export function useChatApp({ store, transport, makeTitle, conversationId, onConv
353
461
  return {
354
462
  list,
355
463
  listState,
464
+ /** The list has loaded (or failed) and the reopened chat is chosen. */
465
+ ready,
466
+ whenReady,
356
467
  reloadList: () => setReload((n) => n + 1),
357
468
  activeId,
358
469
  stored,
@@ -1 +1 @@
1
- {"version":3,"file":"use-chat-app.js","sourceRoot":"","sources":["../../src/react/use-chat-app.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEpD,OAAO,EACL,WAAW,EACX,KAAK,EACL,YAAY,GAIb,MAAM,qBAAqB,CAAC;AAiC7B,MAAM,IAAI,GAAG,KAAK,CAAC;AACnB,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAA6B,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;AAElG,SAAS,kBAAkB,CAAC,IAAkB;IAC5C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACxC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACpB,CAAC,CAAC,IAAI,KAAK,OAAO;QAChB,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,QAAQ,WAAW,CAAC,CAAC,UAAU,EAAE,EAAE;QAC1F,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CACnC,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,GAAkB;IACxC,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AACD,SAAS,eAAe,CAAC,GAAkB,EAAE,EAAiB;IAC5D,IAAI,CAAC,GAAG;QAAE,OAAO;IACjB,IAAI,CAAC;QACH,IAAI,EAAE;YAAE,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;;YAC7C,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,kEAAkE;IACpE,CAAC;AACH,CAAC;AAWD;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,EACzB,KAAK,EACL,SAAS,EACT,SAAS,EACT,cAAc,EACd,oBAAoB,EACpB,WAAW,GACO;IAClB,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAwB,EAAE,CAAC,CAAC;IAC5D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAgC,SAAS,CAAC,CAAC;IACrF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAC9D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAoC,EAAE,CAAC,CAAC;IAC9E,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAChE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAA2B,EAAE,CAAC,CAAC;IAC/D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAA0B,EAAE,CAAC,CAAC;IACpE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAC;IACjD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAwB,IAAI,CAAC,CAAC;IACpE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAExC,2EAA2E;IAC3E,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IACvC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,GAAG,EAA2B,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IACnC,SAAS,CAAC,GAAG,EAAE;QACb,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC;QACjC,QAAQ,CAAC,OAAO,GAAG,SAAS,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,CAAC,EAAsD,EAAE,EAAE;QAC/E,UAAU,CAAC,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC5C,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,CAAC,EAA6B,EAAE,EAAE;QACpD,QAAQ,CAAC,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,EAAiB,EAAE,IAAa,EAAE,EAAE;QAClD,SAAS,CAAC,OAAO,GAAG,EAAE,CAAC;QACvB,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC;QAC5B,WAAW,CAAC,EAAE,CAAC,CAAC;QAChB,YAAY,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,CAAC;IAEF,4EAA4E;IAC5E,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;YAAE,OAAO;QAC/B,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,EAAG,CAAC,EAAE,KAAK,EAAE,CAAC;QACtC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE;YAClB,MAAM,IAAI,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC,EAAG,CAAC,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QACH,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,KAAK,EAAE,CAAC,CAAC,CAAC;IACnE,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,EAAU,EAAE,EAAE;QAC1B,IAAI,EAAE,KAAK,SAAS,CAAC,OAAO;YAAE,OAAO;QACrC,cAAc,EAAE,CAAC;QACjB,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAClB,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAAE,OAAO;QACnC,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB,KAAK;aACF,GAAG,CAAC,EAAE,CAAC;aACP,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACV,IAAI,CAAC,EAAE,CAAC;gBACN,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,QAA6B,EAAE,CAAC,CAAC,CAAC;YAC1E,CAAC;iBAAM,CAAC;gBACN,0DAA0D;gBAC1D,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;gBACjD,IAAI,SAAS,CAAC,OAAO,KAAK,EAAE;oBAAE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACpD,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;aAC/B,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACrE,CAAC,CAAC;IAEF,4EAA4E;IAC5E,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,YAAY,CAAC,SAAS,CAAC,CAAC;QACxB,KAAK;aACF,IAAI,EAAE;aACN,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACb,IAAI,CAAC,KAAK;gBAAE,OAAO;YACnB,OAAO,CAAC,IAAI,CAAC,CAAC;YACd,YAAY,CAAC,OAAO,CAAC,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;gBACxB,MAAM,EAAE,GAAG,YAAY,CAAC,IAAI,EAAE,cAAc,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC;gBAC3E,IAAI,EAAE;oBAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YACnB,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,IAAI,CAAC,KAAK;gBAAE,OAAO;YACnB,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;YACxB,YAAY,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;QACL,OAAO,GAAG,EAAE;YACV,KAAK,GAAG,KAAK,CAAC;QAChB,CAAC,CAAC;QACF,qEAAqE;IACvE,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAEpB,sEAAsE;IACtE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,cAAc,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,OAAO;YAAE,OAAO;QAC9D,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;YAC5B,IAAI,SAAS,CAAC,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC;gBAAE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAClF,CAAC;aAAM,IAAI,cAAc,KAAK,SAAS,CAAC,OAAO;YAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACxE,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,uEAAuE;IACvE,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;IACzD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,QAAQ,CAAC,OAAO;YAAE,OAAO;QAC9B,eAAe,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACrC,oBAAoB,EAAE,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,MAAM,IAAI,GAAG,CAAC,EAAU,EAAE,OAAwB,EAAE,EAAE;QACpD,IAAI,aAAa,CAAC,EAAE,CAAC;YAAE,OAAO;QAC9B,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QAC1D,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACpC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACZ,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YACvC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,EAAU,EAAE,OAAwB,EAAE,EAAE,CACpD,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAEtE,MAAM,OAAO,GAAG,KAAK,EACnB,EAAU,EACV,IAAY,EACZ,WAAyB,EACzB,OAA0B,EAC1B,EAAE;QACF,MAAM,IAAI,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;QAC/B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QACxC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC3C,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QACrC,IAAI,KAAK,GAAa,EAAE,CAAC;QACzB,IAAI,EAAE,GAAG,KAAK,CAAC;QACf,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC;gBACxC,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;gBAChC,SAAS,EAAE,IAAI;gBACf,IAAI;gBACJ,WAAW;gBACX,OAAO;gBACP,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;oBACf,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,EAAE,CAAC;oBAC9B,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO;wBAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxF,CAAC;aACF,CAAC,CAAC;YACH,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;gBAAE,MAAM,IAAI,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;YAC/E,MAAM,MAAM,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;YACzE,MAAM,OAAO,GAAoB,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;YAClF,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAClB,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAClB,EAAE,GAAG,IAAI,CAAC;YACV,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtD,KAAK,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;qBACrE,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;qBACvE,KAAK,CAAC,GAAG,EAAE;oBACV,6BAA6B;gBAC/B,CAAC,CAAC,CAAC;YACP,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC9B,qEAAqE;gBACrE,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;oBACvB,MAAM,OAAO,GAAoB;wBAC/B,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC;wBACd,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,KAAK,CAAC,IAAI;qBACpB,CAAC;oBACF,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;oBAClB,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;gBACpB,CAAC;;oBAAM,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACnD,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC/B,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACZ,MAAM,IAAI,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC;QACD,sEAAsE;QACtE,mEAAmE;QACnE,IAAI,EAAE,EAAE,CAAC;YACP,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,EAAE,CAAC,CAAC;YACjE,IAAI,IAAI,EAAE,CAAC;gBACT,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC5D,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,KAAK,EAAE,EAAU,EAAE,IAAY,EAAE,WAAyB,EAAE,EAAE;QAC3E,MAAM,OAAO,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QACxE,MAAM,OAAO,GAAoB;YAC/B,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC;YACd,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,IAAI;YACb,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChF,CAAC;QACF,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAClB,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAClB,MAAM,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC,CAAC;IAEF,8EAA8E;IAC9E,MAAM,IAAI,GAAG,KAAK,EAAE,IAAY,EAAE,cAA4B,EAAE,EAAoB,EAAE;QACpF,IAAI,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC;QAC3B,IAAI,EAAE,IAAI,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACtC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,YAAY,EAAE,EAAG,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;YACrF,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;gBACzB,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACvE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;oBAChB,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBACrE,CAAC;gBAAC,MAAM,CAAC;oBACP,UAAU,CAAC,MAAM,CAAC,CAAC;oBACnB,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;YACD,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,EAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;YAC5C,MAAM,CAAC,EAAE,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;QACD,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,GAAG,EAAE;QAChB,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC;QAC7B,IAAI,EAAE;YAAE,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;IAC/C,CAAC,CAAC;IAEF,yEAAyE;IACzE,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,EAAE,IAAI,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,OAAO;QAC/C,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QACpE,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtD,KAAK,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,cAAc,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACtB,CAAC,CAAC;IAEF;kDAC8C;IAC9C,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACpC,OAAO;QACT,CAAC;QACD,cAAc,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,KAAK,EAAE,EAAU,EAAE,KAAa,EAAE,EAAE;QACjD,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,UAAU,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,KAAK,EAAE,EAAU,EAAE,EAAE;QAClC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;QACrC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC7C,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE;YAClB,MAAM,IAAI,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QACH,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,KAAK,EAAE,CAAC,CAAC,CAAC;QACjE,IAAI,SAAS,CAAC,OAAO,KAAK,EAAE;YAAE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAClD,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACP,UAAU,CAAC,MAAM,CAAC,CAAC;YACnB,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,GAAG,GAAG,QAAQ,IAAI,EAAE,CAAC;IAC3B,OAAO;QACL,IAAI;QACJ,SAAS;QACT,UAAU,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;QACzC,QAAQ;QACR,MAAM;QACN,SAAS;QACT,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE;QAC5B,OAAO,EAAE,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,QAAQ;QACrD,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI;QACvB,IAAI,EAAE,GAAG,IAAI,IAAI;QACjB,OAAO,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;QACvB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,QAAQ,CAAC;QACxD,OAAO,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC;QACjF,OAAO;QACP,YAAY,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QACpC,IAAI;QACJ,IAAI;QACJ,KAAK;QACL,IAAI;QACJ,OAAO;QACP,eAAe;QACf,MAAM;QACN,MAAM;KACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"use-chat-app.js","sourceRoot":"","sources":["../../src/react/use-chat-app.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitbaum/chatkit",
3
- "version": "0.18.0",
3
+ "version": "0.19.0",
4
4
  "description": "One chat for every product: a composer with a microphone that always works, a thread that does not fight the reader, messages with copy and retry, and LLM markdown — the fleet's chat standard as a package.",
5
5
  "license": "MIT",
6
6
  "author": "Cato",
@@ -74,7 +74,7 @@
74
74
  "test:browser": "pnpm run demo && node test/browser.mjs && node test/browser-scroll.mjs && node test/browser-app.mjs"
75
75
  },
76
76
  "devDependencies": {
77
- "@bitbaum/design-tokens": "github:bitbaum/design-tokens#5c31f48743dabf9294bf9380a15862b4efbc68a0",
77
+ "@bitbaum/design-tokens": "^1.2.0",
78
78
  "@eslint/js": "^10.0.1",
79
79
  "@types/node": "^26.4.0",
80
80
  "@types/react": "^19.2.18",
package/styles.css CHANGED
@@ -591,7 +591,7 @@
591
591
  align-items: center;
592
592
  gap: 0.375rem;
593
593
  align-self: flex-start;
594
- min-height: 2.25rem;
594
+ min-height: var(--ck-target);
595
595
  margin-top: 0.5rem;
596
596
  padding: 0 0.875rem;
597
597
  border: 1px solid var(--ck-line);
@@ -1379,6 +1379,52 @@ a.ck-cite:hover {
1379
1379
  border-top: 1px solid var(--ck-line);
1380
1380
  }
1381
1381
 
1382
+ .ck-sheet-only {
1383
+ margin-top: 0;
1384
+ padding-top: 0;
1385
+ border-top: 0;
1386
+ }
1387
+ /* One anatomy for every app row: icon, what it adds, an optional second line. */
1388
+ .ck-attach-extra {
1389
+ display: flex;
1390
+ align-items: center;
1391
+ gap: 0.75rem;
1392
+ width: 100%;
1393
+ min-height: var(--ck-target);
1394
+ padding: 0.375rem 0.5rem;
1395
+ border: 0;
1396
+ border-radius: var(--ck-radius-sm);
1397
+ background: transparent;
1398
+ color: var(--ck-fg);
1399
+ font: inherit;
1400
+ font-size: 0.9375rem;
1401
+ text-align: left;
1402
+ cursor: pointer;
1403
+ }
1404
+ .ck-attach-extra:hover {
1405
+ background: var(--ck-raised);
1406
+ }
1407
+ .ck-attach-extra:focus-visible {
1408
+ outline: 2px solid var(--ck-accent);
1409
+ outline-offset: 2px;
1410
+ }
1411
+ .ck-attach-extra-icon {
1412
+ display: inline-flex;
1413
+ flex: none;
1414
+ font-size: 1.25rem;
1415
+ color: var(--ck-fg-2);
1416
+ }
1417
+ .ck-attach-extra-text {
1418
+ display: flex;
1419
+ flex: 1;
1420
+ flex-direction: column;
1421
+ min-width: 0;
1422
+ }
1423
+ .ck-attach-extra-text small {
1424
+ color: var(--ck-muted);
1425
+ font-size: 0.8125rem;
1426
+ }
1427
+
1382
1428
  /* while an answer is read aloud: Stop, a quiet wave, the time so far */
1383
1429
  .ck-player {
1384
1430
  align-items: center;
@@ -2333,7 +2379,24 @@ details.ck-thinking[open] > summary svg {
2333
2379
  font-size: 0.75rem;
2334
2380
  }
2335
2381
 
2382
+ /* A product's own line in the chat list, under the search box. */
2383
+ .ck-history-slot {
2384
+ padding: 0 0.5rem;
2385
+ color: var(--ck-fg-3);
2386
+ font-size: 0.875rem;
2387
+ }
2388
+ .ck-history-slot a {
2389
+ color: var(--ck-fg);
2390
+ }
2391
+
2336
2392
  /* What the person sent with their words, above their bubble. */
2393
+ a.ck-turn-chip {
2394
+ color: var(--ck-fg);
2395
+ text-decoration: none;
2396
+ }
2397
+ a.ck-turn-chip:hover {
2398
+ border-color: var(--ck-line-2);
2399
+ }
2337
2400
  .ck-turn-files {
2338
2401
  display: flex;
2339
2402
  flex-wrap: wrap;