@agno-hq/chat-react 0.3.0 → 0.3.1

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 CHANGED
@@ -179,7 +179,7 @@ as `R, G, B` triples:
179
179
  | `<MessageList>` | Auto-scrolling transcript with live status + footer slot. |
180
180
  | `<Message>` | A single message: content, behind-the-scenes panel, media, citations, follow-ups. |
181
181
  | `<BehindTheScenes>` | One collapsible timeline over a run's reasoning, tools, member turns, steps and events — doubles as the live status line. |
182
- | `<ChatInput>` | Multiline input with file attach, send, and stop. |
182
+ | `<ChatInput>` | Multiline input with file attach, send, and stop; opens up for @mentions, context chips and a custom textarea. |
183
183
  | `<ToolCalls>` | Collapsible tool-call cards (name, args, result, status). |
184
184
  | `<Reasoning>` | Collapsible reasoning-steps panel. |
185
185
  | `<Citations>` | The sources behind an answer, as linked cards. |
@@ -278,6 +278,88 @@ something longer:
278
278
  than send the text. Render `<QuickPrompts>` yourself to place the chips
279
279
  elsewhere.
280
280
 
281
+ ### Building on the composer
282
+
283
+ `<ChatInput>` is the AgentOS dock: an auto-growing textarea, attach, send and
284
+ stop. `compact` trades the dock for one row — the field with the buttons beside
285
+ it — for a launcher, a sidebar, anywhere narrow; `compactInput` on `<AgnoChat>`
286
+ and `<ChatWindow>` switches their built-in composer to it:
287
+
288
+ ```tsx
289
+ <AgnoChat baseUrl="http://localhost:7777" mode="launcher" compactInput />
290
+ <ChatInput compact placeholder="Send a message" />
291
+ ```
292
+
293
+ When a product needs more from the composer — an @mention menu, context
294
+ chips, a highlighted draft — it opens up rather than being replaced:
295
+
296
+ ```tsx
297
+ <ChatInput
298
+ value={draft} // own the draft
299
+ onValueChange={setDraft}
300
+ textareaRef={inputRef}
301
+ textareaProps={{ // reach the textarea itself
302
+ onKeyDown: (e) => { if (menu.handles(e)) e.preventDefault() }, // claims the key
303
+ role: 'combobox',
304
+ 'aria-expanded': menuOpen,
305
+ }}
306
+ renderTextarea={(props) => <HighlightedTextarea {...props} />} // or swap it
307
+ above={menuOpen && <MentionMenu />} // inside the dock, over the field
308
+ below={contextError && <p>{contextError}</p>}
309
+ allowFiles
310
+ accept=".md,.py,image/*" // dropped files obey this too
311
+ maxFiles={8}
312
+ maxFileSize={20 * 1024 * 1024}
313
+ onSend={async (text, files) => {
314
+ const ok = await prepare(text)
315
+ if (!ok) return false // keep the draft
316
+ chat.sendMessage(text, files ? { files } : undefined)
317
+ }}
318
+ />
319
+ ```
320
+
321
+ A key handler in `textareaProps` runs before Enter-to-send; `preventDefault()`
322
+ there claims the key. Files can be dropped anywhere on the dock; the first
323
+ reason one was refused shows under the attachment chips (`admitFiles` is the
324
+ same check, exported).
325
+
326
+ ### Links
327
+
328
+ Every link the components render — in an answer, on a `[1]` chip, on a source
329
+ card — is a plain `<a target="_blank">`. Inside an app with a router, hand the
330
+ provider a `linkComponent` and in-app URLs stay client-side:
331
+
332
+ ```tsx
333
+ <ChatProvider linkComponent={DocsLink}>…</ChatProvider>
334
+ <AgnoChat linkComponent={DocsLink} />
335
+ ```
336
+
337
+ It receives `href`, `children` and the anchor attributes the component would
338
+ have set, and decides how to navigate — nothing sets `target` for it, so a
339
+ link opens in the same page unless the component says otherwise. The usual
340
+ shape routes your own origin through the router and pops everything else out:
341
+
342
+ ```tsx
343
+ import { Link } from 'react-router-dom'
344
+ import type { LinkComponent } from '@agno-hq/chat-react/chat'
345
+
346
+ const DocsLink: LinkComponent = ({ href, children, ...rest }) => {
347
+ const url = new URL(href, window.location.href)
348
+ return url.origin === window.location.origin ? (
349
+ <Link to={url.pathname + url.search + url.hash} {...rest}>
350
+ {children}
351
+ </Link>
352
+ ) : (
353
+ <a href={href} target="_blank" rel="noreferrer noopener" {...rest}>
354
+ {children}
355
+ </a>
356
+ )
357
+ }
358
+ ```
359
+
360
+ Sources with no URL — retrieved knowledge-base chunks — are never links; their
361
+ `[1]` chip points at the card below the answer.
362
+
281
363
  ### Run events
282
364
 
283
365
  Every run keeps the events that produced it on its own message
@@ -1,314 +1,334 @@
1
1
  'use client';
2
2
  'use strict';
3
3
 
4
- var chunkERCKKOF4_cjs = require('../chunk-ERCKKOF4.cjs');
5
- require('../chunk-ROFIOWGX.cjs');
4
+ var chunkJEPFGKHH_cjs = require('../chunk-JEPFGKHH.cjs');
5
+ require('../chunk-55HQJGLP.cjs');
6
6
 
7
7
 
8
8
 
9
9
  Object.defineProperty(exports, "AgnoChat", {
10
10
  enumerable: true,
11
- get: function () { return chunkERCKKOF4_cjs.AgnoChat; }
11
+ get: function () { return chunkJEPFGKHH_cjs.AgnoChat; }
12
12
  });
13
13
  Object.defineProperty(exports, "AgnoMark", {
14
14
  enumerable: true,
15
- get: function () { return chunkERCKKOF4_cjs.AgnoMark; }
15
+ get: function () { return chunkJEPFGKHH_cjs.AgnoMark; }
16
16
  });
17
17
  Object.defineProperty(exports, "ArrowUp", {
18
18
  enumerable: true,
19
- get: function () { return chunkERCKKOF4_cjs.ArrowUp; }
19
+ get: function () { return chunkJEPFGKHH_cjs.ArrowUp; }
20
20
  });
21
21
  Object.defineProperty(exports, "BehindTheScenes", {
22
22
  enumerable: true,
23
- get: function () { return chunkERCKKOF4_cjs.BehindTheScenes; }
23
+ get: function () { return chunkJEPFGKHH_cjs.BehindTheScenes; }
24
24
  });
25
25
  Object.defineProperty(exports, "BookOpen", {
26
26
  enumerable: true,
27
- get: function () { return chunkERCKKOF4_cjs.BookOpen; }
27
+ get: function () { return chunkJEPFGKHH_cjs.BookOpen; }
28
28
  });
29
29
  Object.defineProperty(exports, "Box", {
30
30
  enumerable: true,
31
- get: function () { return chunkERCKKOF4_cjs.Box; }
31
+ get: function () { return chunkJEPFGKHH_cjs.Box; }
32
32
  });
33
33
  Object.defineProperty(exports, "Brain", {
34
34
  enumerable: true,
35
- get: function () { return chunkERCKKOF4_cjs.Brain; }
35
+ get: function () { return chunkJEPFGKHH_cjs.Brain; }
36
36
  });
37
37
  Object.defineProperty(exports, "ChatBubble", {
38
38
  enumerable: true,
39
- get: function () { return chunkERCKKOF4_cjs.ChatBubble; }
39
+ get: function () { return chunkJEPFGKHH_cjs.ChatBubble; }
40
40
  });
41
41
  Object.defineProperty(exports, "ChatInput", {
42
42
  enumerable: true,
43
- get: function () { return chunkERCKKOF4_cjs.ChatInput; }
43
+ get: function () { return chunkJEPFGKHH_cjs.ChatInput; }
44
44
  });
45
45
  Object.defineProperty(exports, "ChatLauncher", {
46
46
  enumerable: true,
47
- get: function () { return chunkERCKKOF4_cjs.ChatLauncher; }
47
+ get: function () { return chunkJEPFGKHH_cjs.ChatLauncher; }
48
48
  });
49
49
  Object.defineProperty(exports, "ChatProvider", {
50
50
  enumerable: true,
51
- get: function () { return chunkERCKKOF4_cjs.ChatProvider; }
51
+ get: function () { return chunkJEPFGKHH_cjs.ChatProvider; }
52
52
  });
53
53
  Object.defineProperty(exports, "ChatWindow", {
54
54
  enumerable: true,
55
- get: function () { return chunkERCKKOF4_cjs.ChatWindow; }
55
+ get: function () { return chunkJEPFGKHH_cjs.ChatWindow; }
56
56
  });
57
57
  Object.defineProperty(exports, "Check", {
58
58
  enumerable: true,
59
- get: function () { return chunkERCKKOF4_cjs.Check; }
59
+ get: function () { return chunkJEPFGKHH_cjs.Check; }
60
60
  });
61
61
  Object.defineProperty(exports, "ChevronDown", {
62
62
  enumerable: true,
63
- get: function () { return chunkERCKKOF4_cjs.ChevronDown; }
63
+ get: function () { return chunkJEPFGKHH_cjs.ChevronDown; }
64
64
  });
65
65
  Object.defineProperty(exports, "Citations", {
66
66
  enumerable: true,
67
- get: function () { return chunkERCKKOF4_cjs.Citations; }
67
+ get: function () { return chunkJEPFGKHH_cjs.Citations; }
68
68
  });
69
69
  Object.defineProperty(exports, "Close", {
70
70
  enumerable: true,
71
- get: function () { return chunkERCKKOF4_cjs.Close; }
71
+ get: function () { return chunkJEPFGKHH_cjs.Close; }
72
72
  });
73
73
  Object.defineProperty(exports, "Copy", {
74
74
  enumerable: true,
75
- get: function () { return chunkERCKKOF4_cjs.Copy; }
75
+ get: function () { return chunkJEPFGKHH_cjs.Copy; }
76
76
  });
77
77
  Object.defineProperty(exports, "EntityBadge", {
78
78
  enumerable: true,
79
- get: function () { return chunkERCKKOF4_cjs.EntityBadge; }
79
+ get: function () { return chunkJEPFGKHH_cjs.EntityBadge; }
80
80
  });
81
81
  Object.defineProperty(exports, "EntitySelector", {
82
82
  enumerable: true,
83
- get: function () { return chunkERCKKOF4_cjs.EntitySelector; }
83
+ get: function () { return chunkJEPFGKHH_cjs.EntitySelector; }
84
84
  });
85
85
  Object.defineProperty(exports, "EventLog", {
86
86
  enumerable: true,
87
- get: function () { return chunkERCKKOF4_cjs.EventLog; }
87
+ get: function () { return chunkJEPFGKHH_cjs.EventLog; }
88
88
  });
89
89
  Object.defineProperty(exports, "Favicon", {
90
90
  enumerable: true,
91
- get: function () { return chunkERCKKOF4_cjs.Favicon; }
91
+ get: function () { return chunkJEPFGKHH_cjs.Favicon; }
92
92
  });
93
93
  Object.defineProperty(exports, "FileAudio", {
94
94
  enumerable: true,
95
- get: function () { return chunkERCKKOF4_cjs.FileAudio; }
95
+ get: function () { return chunkJEPFGKHH_cjs.FileAudio; }
96
96
  });
97
97
  Object.defineProperty(exports, "FileIcon", {
98
98
  enumerable: true,
99
- get: function () { return chunkERCKKOF4_cjs.FileIcon; }
99
+ get: function () { return chunkJEPFGKHH_cjs.FileIcon; }
100
100
  });
101
101
  Object.defineProperty(exports, "FilePreview", {
102
102
  enumerable: true,
103
- get: function () { return chunkERCKKOF4_cjs.FilePreview; }
103
+ get: function () { return chunkJEPFGKHH_cjs.FilePreview; }
104
+ });
105
+ Object.defineProperty(exports, "FileType", {
106
+ enumerable: true,
107
+ get: function () { return chunkJEPFGKHH_cjs.FileType; }
104
108
  });
105
109
  Object.defineProperty(exports, "FileVideo", {
106
110
  enumerable: true,
107
- get: function () { return chunkERCKKOF4_cjs.FileVideo; }
111
+ get: function () { return chunkJEPFGKHH_cjs.FileVideo; }
108
112
  });
109
113
  Object.defineProperty(exports, "Followups", {
110
114
  enumerable: true,
111
- get: function () { return chunkERCKKOF4_cjs.Followups; }
115
+ get: function () { return chunkJEPFGKHH_cjs.Followups; }
112
116
  });
113
117
  Object.defineProperty(exports, "Globe", {
114
118
  enumerable: true,
115
- get: function () { return chunkERCKKOF4_cjs.Globe; }
119
+ get: function () { return chunkJEPFGKHH_cjs.Globe; }
116
120
  });
117
121
  Object.defineProperty(exports, "GridLoader", {
118
122
  enumerable: true,
119
- get: function () { return chunkERCKKOF4_cjs.GridLoader; }
123
+ get: function () { return chunkJEPFGKHH_cjs.GridLoader; }
120
124
  });
121
125
  Object.defineProperty(exports, "HoverPreview", {
122
126
  enumerable: true,
123
- get: function () { return chunkERCKKOF4_cjs.HoverPreview; }
127
+ get: function () { return chunkJEPFGKHH_cjs.HoverPreview; }
124
128
  });
125
129
  Object.defineProperty(exports, "HumanInput", {
126
130
  enumerable: true,
127
- get: function () { return chunkERCKKOF4_cjs.HumanInput; }
131
+ get: function () { return chunkJEPFGKHH_cjs.HumanInput; }
132
+ });
133
+ Object.defineProperty(exports, "LinkIcon", {
134
+ enumerable: true,
135
+ get: function () { return chunkJEPFGKHH_cjs.LinkIcon; }
128
136
  });
129
137
  Object.defineProperty(exports, "LinkPreviewCard", {
130
138
  enumerable: true,
131
- get: function () { return chunkERCKKOF4_cjs.LinkPreviewCard; }
139
+ get: function () { return chunkJEPFGKHH_cjs.LinkPreviewCard; }
132
140
  });
133
141
  Object.defineProperty(exports, "Markdown", {
134
142
  enumerable: true,
135
- get: function () { return chunkERCKKOF4_cjs.Markdown; }
143
+ get: function () { return chunkJEPFGKHH_cjs.Markdown; }
136
144
  });
137
145
  Object.defineProperty(exports, "MemberResponses", {
138
146
  enumerable: true,
139
- get: function () { return chunkERCKKOF4_cjs.MemberResponses; }
147
+ get: function () { return chunkJEPFGKHH_cjs.MemberResponses; }
140
148
  });
141
149
  Object.defineProperty(exports, "Memory", {
142
150
  enumerable: true,
143
- get: function () { return chunkERCKKOF4_cjs.Memory; }
151
+ get: function () { return chunkJEPFGKHH_cjs.Memory; }
144
152
  });
145
153
  Object.defineProperty(exports, "Message", {
146
154
  enumerable: true,
147
- get: function () { return chunkERCKKOF4_cjs.Message; }
155
+ get: function () { return chunkJEPFGKHH_cjs.Message; }
148
156
  });
149
157
  Object.defineProperty(exports, "MessageList", {
150
158
  enumerable: true,
151
- get: function () { return chunkERCKKOF4_cjs.MessageList; }
159
+ get: function () { return chunkJEPFGKHH_cjs.MessageList; }
152
160
  });
153
161
  Object.defineProperty(exports, "Multimedia", {
154
162
  enumerable: true,
155
- get: function () { return chunkERCKKOF4_cjs.Multimedia; }
163
+ get: function () { return chunkJEPFGKHH_cjs.Multimedia; }
156
164
  });
157
165
  Object.defineProperty(exports, "Paperclip", {
158
166
  enumerable: true,
159
- get: function () { return chunkERCKKOF4_cjs.Paperclip; }
167
+ get: function () { return chunkJEPFGKHH_cjs.Paperclip; }
160
168
  });
161
169
  Object.defineProperty(exports, "Plus", {
162
170
  enumerable: true,
163
- get: function () { return chunkERCKKOF4_cjs.Plus; }
171
+ get: function () { return chunkJEPFGKHH_cjs.Plus; }
164
172
  });
165
173
  Object.defineProperty(exports, "Pulse", {
166
174
  enumerable: true,
167
- get: function () { return chunkERCKKOF4_cjs.Pulse; }
175
+ get: function () { return chunkJEPFGKHH_cjs.Pulse; }
168
176
  });
169
177
  Object.defineProperty(exports, "QuickPrompts", {
170
178
  enumerable: true,
171
- get: function () { return chunkERCKKOF4_cjs.QuickPrompts; }
179
+ get: function () { return chunkJEPFGKHH_cjs.QuickPrompts; }
172
180
  });
173
181
  Object.defineProperty(exports, "Reasoning", {
174
182
  enumerable: true,
175
- get: function () { return chunkERCKKOF4_cjs.Reasoning; }
183
+ get: function () { return chunkJEPFGKHH_cjs.Reasoning; }
176
184
  });
177
185
  Object.defineProperty(exports, "Rerun", {
178
186
  enumerable: true,
179
- get: function () { return chunkERCKKOF4_cjs.Rerun; }
187
+ get: function () { return chunkJEPFGKHH_cjs.Rerun; }
180
188
  });
181
189
  Object.defineProperty(exports, "SessionList", {
182
190
  enumerable: true,
183
- get: function () { return chunkERCKKOF4_cjs.SessionList; }
191
+ get: function () { return chunkJEPFGKHH_cjs.SessionList; }
184
192
  });
185
193
  Object.defineProperty(exports, "SourceCard", {
186
194
  enumerable: true,
187
- get: function () { return chunkERCKKOF4_cjs.SourceCard; }
195
+ get: function () { return chunkJEPFGKHH_cjs.SourceCard; }
188
196
  });
189
197
  Object.defineProperty(exports, "SourcesProvider", {
190
198
  enumerable: true,
191
- get: function () { return chunkERCKKOF4_cjs.SourcesProvider; }
199
+ get: function () { return chunkJEPFGKHH_cjs.SourcesProvider; }
192
200
  });
193
201
  Object.defineProperty(exports, "Spinner", {
194
202
  enumerable: true,
195
- get: function () { return chunkERCKKOF4_cjs.Spinner; }
203
+ get: function () { return chunkJEPFGKHH_cjs.Spinner; }
196
204
  });
197
205
  Object.defineProperty(exports, "StatusIndicator", {
198
206
  enumerable: true,
199
- get: function () { return chunkERCKKOF4_cjs.StatusIndicator; }
207
+ get: function () { return chunkJEPFGKHH_cjs.StatusIndicator; }
200
208
  });
201
209
  Object.defineProperty(exports, "Stop", {
202
210
  enumerable: true,
203
- get: function () { return chunkERCKKOF4_cjs.Stop; }
211
+ get: function () { return chunkJEPFGKHH_cjs.Stop; }
204
212
  });
205
213
  Object.defineProperty(exports, "TeamGlyph", {
206
214
  enumerable: true,
207
- get: function () { return chunkERCKKOF4_cjs.TeamGlyph; }
215
+ get: function () { return chunkJEPFGKHH_cjs.TeamGlyph; }
208
216
  });
209
217
  Object.defineProperty(exports, "ToolCalls", {
210
218
  enumerable: true,
211
- get: function () { return chunkERCKKOF4_cjs.ToolCalls; }
219
+ get: function () { return chunkJEPFGKHH_cjs.ToolCalls; }
212
220
  });
213
221
  Object.defineProperty(exports, "Trash", {
214
222
  enumerable: true,
215
- get: function () { return chunkERCKKOF4_cjs.Trash; }
223
+ get: function () { return chunkJEPFGKHH_cjs.Trash; }
216
224
  });
217
225
  Object.defineProperty(exports, "WorkflowSteps", {
218
226
  enumerable: true,
219
- get: function () { return chunkERCKKOF4_cjs.WorkflowSteps; }
227
+ get: function () { return chunkJEPFGKHH_cjs.WorkflowSteps; }
220
228
  });
221
229
  Object.defineProperty(exports, "Wrench", {
222
230
  enumerable: true,
223
- get: function () { return chunkERCKKOF4_cjs.Wrench; }
231
+ get: function () { return chunkJEPFGKHH_cjs.Wrench; }
232
+ });
233
+ Object.defineProperty(exports, "admitFiles", {
234
+ enumerable: true,
235
+ get: function () { return chunkJEPFGKHH_cjs.admitFiles; }
224
236
  });
225
237
  Object.defineProperty(exports, "behindTheScenesItems", {
226
238
  enumerable: true,
227
- get: function () { return chunkERCKKOF4_cjs.behindTheScenesItems; }
239
+ get: function () { return chunkJEPFGKHH_cjs.behindTheScenesItems; }
228
240
  });
229
241
  Object.defineProperty(exports, "behindTheScenesLabel", {
230
242
  enumerable: true,
231
- get: function () { return chunkERCKKOF4_cjs.behindTheScenesLabel; }
243
+ get: function () { return chunkJEPFGKHH_cjs.behindTheScenesLabel; }
232
244
  });
233
245
  Object.defineProperty(exports, "collectSources", {
234
246
  enumerable: true,
235
- get: function () { return chunkERCKKOF4_cjs.collectSources; }
247
+ get: function () { return chunkJEPFGKHH_cjs.collectSources; }
236
248
  });
237
249
  Object.defineProperty(exports, "displayUrl", {
238
250
  enumerable: true,
239
- get: function () { return chunkERCKKOF4_cjs.displayUrl; }
251
+ get: function () { return chunkJEPFGKHH_cjs.displayUrl; }
240
252
  });
241
253
  Object.defineProperty(exports, "faviconUrl", {
242
254
  enumerable: true,
243
- get: function () { return chunkERCKKOF4_cjs.faviconUrl; }
255
+ get: function () { return chunkJEPFGKHH_cjs.faviconUrl; }
256
+ });
257
+ Object.defineProperty(exports, "fileAccepted", {
258
+ enumerable: true,
259
+ get: function () { return chunkJEPFGKHH_cjs.fileAccepted; }
244
260
  });
245
261
  Object.defineProperty(exports, "getProviderIcon", {
246
262
  enumerable: true,
247
- get: function () { return chunkERCKKOF4_cjs.getProviderIcon; }
263
+ get: function () { return chunkJEPFGKHH_cjs.getProviderIcon; }
248
264
  });
249
265
  Object.defineProperty(exports, "hasBehindTheScenes", {
250
266
  enumerable: true,
251
- get: function () { return chunkERCKKOF4_cjs.hasBehindTheScenes; }
267
+ get: function () { return chunkJEPFGKHH_cjs.hasBehindTheScenes; }
252
268
  });
253
269
  Object.defineProperty(exports, "linkCitations", {
254
270
  enumerable: true,
255
- get: function () { return chunkERCKKOF4_cjs.linkCitations; }
271
+ get: function () { return chunkJEPFGKHH_cjs.linkCitations; }
256
272
  });
257
273
  Object.defineProperty(exports, "normalizeFollowups", {
258
274
  enumerable: true,
259
- get: function () { return chunkERCKKOF4_cjs.normalizeFollowups; }
275
+ get: function () { return chunkJEPFGKHH_cjs.normalizeFollowups; }
260
276
  });
261
277
  Object.defineProperty(exports, "quickPromptLabel", {
262
278
  enumerable: true,
263
- get: function () { return chunkERCKKOF4_cjs.quickPromptLabel; }
279
+ get: function () { return chunkJEPFGKHH_cjs.quickPromptLabel; }
264
280
  });
265
281
  Object.defineProperty(exports, "quickPromptText", {
266
282
  enumerable: true,
267
- get: function () { return chunkERCKKOF4_cjs.quickPromptText; }
283
+ get: function () { return chunkJEPFGKHH_cjs.quickPromptText; }
268
284
  });
269
285
  Object.defineProperty(exports, "sourceHost", {
270
286
  enumerable: true,
271
- get: function () { return chunkERCKKOF4_cjs.sourceHost; }
287
+ get: function () { return chunkJEPFGKHH_cjs.sourceHost; }
272
288
  });
273
289
  Object.defineProperty(exports, "sourcesFromMarkdown", {
274
290
  enumerable: true,
275
- get: function () { return chunkERCKKOF4_cjs.sourcesFromMarkdown; }
291
+ get: function () { return chunkJEPFGKHH_cjs.sourcesFromMarkdown; }
276
292
  });
277
293
  Object.defineProperty(exports, "useAgnoChat", {
278
294
  enumerable: true,
279
- get: function () { return chunkERCKKOF4_cjs.useAgnoChat; }
295
+ get: function () { return chunkJEPFGKHH_cjs.useAgnoChat; }
280
296
  });
281
297
  Object.defineProperty(exports, "useChatContext", {
282
298
  enumerable: true,
283
- get: function () { return chunkERCKKOF4_cjs.useChatContext; }
299
+ get: function () { return chunkJEPFGKHH_cjs.useChatContext; }
300
+ });
301
+ Object.defineProperty(exports, "useLinkComponent", {
302
+ enumerable: true,
303
+ get: function () { return chunkJEPFGKHH_cjs.useLinkComponent; }
284
304
  });
285
305
  Object.defineProperty(exports, "useLinkPreview", {
286
306
  enumerable: true,
287
- get: function () { return chunkERCKKOF4_cjs.useLinkPreview; }
307
+ get: function () { return chunkJEPFGKHH_cjs.useLinkPreview; }
288
308
  });
289
309
  Object.defineProperty(exports, "useOptionalChatContext", {
290
310
  enumerable: true,
291
- get: function () { return chunkERCKKOF4_cjs.useOptionalChatContext; }
311
+ get: function () { return chunkJEPFGKHH_cjs.useOptionalChatContext; }
292
312
  });
293
313
  Object.defineProperty(exports, "useResolvedChat", {
294
314
  enumerable: true,
295
- get: function () { return chunkERCKKOF4_cjs.useResolvedChat; }
315
+ get: function () { return chunkJEPFGKHH_cjs.useResolvedChat; }
296
316
  });
297
317
  Object.defineProperty(exports, "useResolvedClassNames", {
298
318
  enumerable: true,
299
- get: function () { return chunkERCKKOF4_cjs.useResolvedClassNames; }
319
+ get: function () { return chunkJEPFGKHH_cjs.useResolvedClassNames; }
300
320
  });
301
321
  Object.defineProperty(exports, "useSources", {
302
322
  enumerable: true,
303
- get: function () { return chunkERCKKOF4_cjs.useSources; }
323
+ get: function () { return chunkJEPFGKHH_cjs.useSources; }
304
324
  });
305
325
  Object.defineProperty(exports, "withoutSourcesLine", {
306
326
  enumerable: true,
307
- get: function () { return chunkERCKKOF4_cjs.withoutSourcesLine; }
327
+ get: function () { return chunkJEPFGKHH_cjs.withoutSourcesLine; }
308
328
  });
309
329
  Object.defineProperty(exports, "writeClipboard", {
310
330
  enumerable: true,
311
- get: function () { return chunkERCKKOF4_cjs.writeClipboard; }
331
+ get: function () { return chunkJEPFGKHH_cjs.writeClipboard; }
312
332
  });
313
333
  //# sourceMappingURL=index.cjs.map
314
334
  //# sourceMappingURL=index.cjs.map