@anvia/react-ui 1.0.0-rc.6 → 1.0.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 (63) hide show
  1. package/README.md +48 -38
  2. package/dist/attachment/index.d.ts +2 -2
  3. package/dist/attachment/index.js +4 -4
  4. package/dist/chat/index.d.ts +8 -8
  5. package/dist/chat/index.js +10 -9
  6. package/dist/{chat-BRVgYE68.d.ts → chat-tfA570mg.d.ts} +2 -2
  7. package/dist/{chunk-ZDSFYPAG.js → chunk-647LAYRV.js} +90 -65
  8. package/dist/chunk-647LAYRV.js.map +1 -0
  9. package/dist/chunk-6XOJFLX4.js +22 -0
  10. package/dist/chunk-6XOJFLX4.js.map +1 -0
  11. package/dist/{chunk-CI7E67HQ.js → chunk-CRXNFZRW.js} +119 -90
  12. package/dist/chunk-CRXNFZRW.js.map +1 -0
  13. package/dist/{chunk-WIV5S327.js → chunk-CVXLQCDI.js} +13 -21
  14. package/dist/chunk-CVXLQCDI.js.map +1 -0
  15. package/dist/{chunk-ULGJLLZE.js → chunk-F6AKBUO3.js} +12 -12
  16. package/dist/chunk-F6AKBUO3.js.map +1 -0
  17. package/dist/{chunk-CBUEQW2Y.js → chunk-HWJIMLHC.js} +83 -77
  18. package/dist/chunk-HWJIMLHC.js.map +1 -0
  19. package/dist/{chunk-LAME27US.js → chunk-MISX4WUT.js} +10 -15
  20. package/dist/chunk-MISX4WUT.js.map +1 -0
  21. package/dist/{chunk-AFIEM7PA.js → chunk-OQE6SHZE.js} +16 -30
  22. package/dist/chunk-OQE6SHZE.js.map +1 -0
  23. package/dist/{chunk-7WKUHKCF.js → chunk-S4XLE2RN.js} +6 -12
  24. package/dist/chunk-S4XLE2RN.js.map +1 -0
  25. package/dist/{chunk-OAQBMWJ5.js → chunk-SOG2GVE4.js} +45 -15
  26. package/dist/chunk-SOG2GVE4.js.map +1 -0
  27. package/dist/{chunk-W6Q5UFKR.js → chunk-UCBAG42A.js} +9 -21
  28. package/dist/chunk-UCBAG42A.js.map +1 -0
  29. package/dist/completion/index.d.ts +2 -2
  30. package/dist/completion/index.js +4 -4
  31. package/dist/{composer-BTT2vzYF.d.ts → composer-CigccTLT.d.ts} +19 -7
  32. package/dist/human-input/index.d.ts +6 -6
  33. package/dist/human-input/index.js +4 -4
  34. package/dist/{human-input-DOBCZgqw.d.ts → human-input-D7jgYsfM.d.ts} +1 -1
  35. package/dist/image/index.d.ts +2 -2
  36. package/dist/image/index.js +4 -4
  37. package/dist/index.d.ts +14 -14
  38. package/dist/index.js +58 -63
  39. package/dist/index.js.map +1 -1
  40. package/dist/message/index.d.ts +4 -4
  41. package/dist/message/index.js +7 -6
  42. package/dist/selection-toolbar/index.d.ts +2 -2
  43. package/dist/selection-toolbar/index.js +5 -4
  44. package/dist/shared.d.ts +4 -4
  45. package/dist/shared.js +1 -1
  46. package/dist/stream/index.d.ts +2 -0
  47. package/dist/stream/index.js +1 -1
  48. package/dist/{thread-uEm8hH0s.d.ts → thread-Bz6-1zaJ.d.ts} +1 -0
  49. package/dist/thread-list/index.d.ts +3 -3
  50. package/dist/thread-list/index.js +6 -6
  51. package/package.json +7 -9
  52. package/dist/chunk-7WKUHKCF.js.map +0 -1
  53. package/dist/chunk-AFIEM7PA.js.map +0 -1
  54. package/dist/chunk-CBUEQW2Y.js.map +0 -1
  55. package/dist/chunk-CI7E67HQ.js.map +0 -1
  56. package/dist/chunk-LAME27US.js.map +0 -1
  57. package/dist/chunk-OAQBMWJ5.js.map +0 -1
  58. package/dist/chunk-ULGJLLZE.js.map +0 -1
  59. package/dist/chunk-W6Q5UFKR.js.map +0 -1
  60. package/dist/chunk-WIV5S327.js.map +0 -1
  61. package/dist/chunk-ZDSFYPAG.js.map +0 -1
  62. package/dist/stream/styles.css +0 -17
  63. package/dist/styles.css +0 -130
@@ -1,10 +1,11 @@
1
1
  import {
2
- Message,
2
+ MessagePrimitive,
3
+ isComposerEntityData,
3
4
  shiftComposerEntityRanges
4
- } from "./chunk-CI7E67HQ.js";
5
+ } from "./chunk-CRXNFZRW.js";
5
6
  import {
6
- Attachment
7
- } from "./chunk-LAME27US.js";
7
+ AttachmentPrimitive
8
+ } from "./chunk-MISX4WUT.js";
8
9
  import {
9
10
  composeRefs,
10
11
  renderPrimitive
@@ -17,7 +18,7 @@ import {
17
18
  useChatContext,
18
19
  useComposer,
19
20
  useThread
20
- } from "./chunk-OAQBMWJ5.js";
21
+ } from "./chunk-SOG2GVE4.js";
21
22
 
22
23
  // src/chat/composer.tsx
23
24
  import { mergeAttributes } from "@tiptap/core";
@@ -164,6 +165,7 @@ var ComposerRoot = forwardRef(function ComposerRoot2({
164
165
  if (prompt.trim().length === 0 && attachments.length === 0 && entities.length === 0 && quote === void 0 || chat.status === "submitted" || chat.status === "streaming") {
165
166
  return;
166
167
  }
168
+ assertComposerEntitiesData(entities);
167
169
  if (submitMessage !== void 0) {
168
170
  await submitMessage({
169
171
  input: prompt,
@@ -272,7 +274,6 @@ var ComposerRoot = forwardRef(function ComposerRoot2({
272
274
  {
273
275
  ...props,
274
276
  onSubmit: handleSubmit,
275
- "data-anvia-composer": "",
276
277
  "data-state": chat.status
277
278
  },
278
279
  ref
@@ -290,9 +291,7 @@ var ComposerQuotePreview = forwardRef(
290
291
  "blockquote",
291
292
  {
292
293
  ...props,
293
- children: renderedChildren,
294
- "data-anvia-composer-quote": "",
295
- "data-message-id": quote.messageId
294
+ children: renderedChildren
296
295
  },
297
296
  ref
298
297
  );
@@ -320,7 +319,6 @@ var ComposerClearQuote = forwardRef(
320
319
  disabled,
321
320
  onClick: handleClick,
322
321
  type: props.type ?? "button",
323
- "data-anvia-clear-quote": "",
324
322
  "data-state": disabled ? "disabled" : "enabled"
325
323
  },
326
324
  ref
@@ -362,7 +360,6 @@ var ComposerInput = forwardRef(function ComposerInput2({
362
360
  attributes: {
363
361
  "aria-label": props["aria-label"] ?? "Message",
364
362
  "aria-multiline": "true",
365
- "data-anvia-composer-editor": "",
366
363
  role: "textbox"
367
364
  },
368
365
  handleKeyDown: (_view, event) => submitComposerFromEditorKeyDown(event, composerRef)
@@ -446,9 +443,8 @@ var ComposerInput = forwardRef(function ComposerInput2({
446
443
  ...props,
447
444
  children: /* @__PURE__ */ jsx(EditorContent, { editor }),
448
445
  "aria-disabled": composerDisabled ? true : props["aria-disabled"],
449
- "data-anvia-composer-input": "",
446
+ "data-role": "editor",
450
447
  "data-state": composerDisabled ? "disabled" : "enabled",
451
- "data-auto-resize": autoResize ? "" : void 0,
452
448
  onKeyDown: handleKeyDown,
453
449
  style: inputStyle
454
450
  },
@@ -515,9 +511,7 @@ var ComposerTextareaInput = forwardRef(
515
511
  onChange: handleChange,
516
512
  onKeyDown: handleKeyDown,
517
513
  rows: autoResize ? minRows : rows,
518
- value: composer.input,
519
- "data-anvia-composer-input": "",
520
- "data-anvia-composer-textarea-input": ""
514
+ value: composer.input
521
515
  },
522
516
  composedInputRef
523
517
  );
@@ -557,9 +551,15 @@ var ComposerEntityExtension = Mention.extend({
557
551
  renderHTML: (attributes) => attributes.text === void 0 || attributes.text === null ? {} : { "data-text": String(attributes.text) }
558
552
  },
559
553
  data: {
560
- default: null,
554
+ default: void 0,
561
555
  parseHTML: (element) => dataFromAttribute(element.getAttribute("data-entity-data")),
562
- renderHTML: (attributes) => attributes.data === void 0 || attributes.data === null ? {} : { "data-entity-data": JSON.stringify(attributes.data) }
556
+ renderHTML: (attributes) => {
557
+ if (attributes.data === void 0) return {};
558
+ if (!isComposerEntityData(attributes.data)) {
559
+ throw new TypeError("Composer entity data must be a JSON value.");
560
+ }
561
+ return { "data-entity-data": JSON.stringify(attributes.data) };
562
+ }
563
563
  }
564
564
  };
565
565
  }
@@ -576,16 +576,12 @@ function composerInputExtensions({
576
576
  HardBreak,
577
577
  Placeholder.configure(placeholder === void 0 ? {} : { placeholder }),
578
578
  ComposerEntityExtension.configure({
579
- HTMLAttributes: {
580
- "data-anvia-composer-entity": ""
581
- },
579
+ HTMLAttributes: {},
582
580
  deleteTriggerWithBackspace: true,
583
581
  renderText: ({ node }) => composerEntityText(node.attrs),
584
582
  renderHTML: ({ node, options }) => [
585
583
  "span",
586
- mergeAttributes(options.HTMLAttributes, {
587
- "data-anvia-composer-entity": ""
588
- }),
584
+ mergeAttributes(options.HTMLAttributes, {}),
589
585
  composerEntityText(node.attrs)
590
586
  ],
591
587
  suggestions: triggers.map((trigger) => composerSuggestion(trigger, composerRef))
@@ -730,6 +726,9 @@ function handleComposerTriggerKeyDown(trigger, { event }, composerRef) {
730
726
  return false;
731
727
  }
732
728
  function triggerItemToEntityAttrs(trigger, item) {
729
+ if (item.data !== void 0 && !isComposerEntityData(item.data)) {
730
+ throw new TypeError("Composer trigger item data must be a JSON value.");
731
+ }
733
732
  return {
734
733
  id: item.id,
735
734
  label: item.label,
@@ -830,7 +829,7 @@ function composerEntityFromAttrs(attrs, from, previousEntities, triggers) {
830
829
  const previous = previousEntities.find(
831
830
  (entity2) => entity2.id === id && entity2.triggerId === triggerId && entity2.trigger === trigger
832
831
  );
833
- const data = attrs?.data ?? previous?.data;
832
+ const data = attrs?.data === void 0 ? previous?.data : attrs.data;
834
833
  const entity = {
835
834
  id,
836
835
  triggerId,
@@ -858,12 +857,13 @@ function stringAttr(value) {
858
857
  }
859
858
  function dataFromAttribute(value) {
860
859
  if (value === null) {
861
- return null;
860
+ return void 0;
862
861
  }
863
862
  try {
864
- return JSON.parse(value);
863
+ const parsed = JSON.parse(value);
864
+ return isComposerEntityData(parsed) ? parsed : void 0;
865
865
  } catch {
866
- return null;
866
+ return void 0;
867
867
  }
868
868
  }
869
869
  function resizeComposerInput(input, { maxRows, minRows }) {
@@ -931,7 +931,30 @@ function composerSubmitMetadata(quote, entities) {
931
931
  }
932
932
  const metadata = {};
933
933
  if (quote !== void 0) metadata.quote = quote;
934
- if (entities.length > 0) metadata.composer = { entities };
934
+ if (entities.length > 0) {
935
+ metadata.composer = { entities: entities.map(composerEntityMetadata) };
936
+ }
937
+ return metadata;
938
+ }
939
+ function assertComposerEntitiesData(entities) {
940
+ for (const entity of entities) {
941
+ if (entity.data !== void 0 && !isComposerEntityData(entity.data)) {
942
+ throw new TypeError("Composer entity data must be a JSON value.");
943
+ }
944
+ }
945
+ }
946
+ function composerEntityMetadata(entity) {
947
+ const metadata = {
948
+ id: entity.id,
949
+ triggerId: entity.triggerId,
950
+ trigger: entity.trigger,
951
+ label: entity.label,
952
+ text: entity.text,
953
+ range: { from: entity.range.from, to: entity.range.to }
954
+ };
955
+ if (entity.data !== void 0) {
956
+ metadata.data = entity.data;
957
+ }
935
958
  return metadata;
936
959
  }
937
960
  var ComposerSubmit = forwardRef(
@@ -945,7 +968,6 @@ var ComposerSubmit = forwardRef(
945
968
  children: props.children ?? "Send",
946
969
  disabled,
947
970
  type: props.type ?? "submit",
948
- "data-anvia-submit": "",
949
971
  "data-state": disabled ? "disabled" : "enabled"
950
972
  },
951
973
  ref
@@ -973,7 +995,6 @@ var ComposerStop = forwardRef(function ComposerStop2({ onClick, ...props }, ref)
973
995
  disabled,
974
996
  onClick: handleClick,
975
997
  type: props.type ?? "button",
976
- "data-anvia-stop": "",
977
998
  "data-state": disabled ? "disabled" : "enabled"
978
999
  },
979
1000
  ref
@@ -1001,11 +1022,7 @@ var ComposerTriggerMenu = forwardRef(
1001
1022
  children: renderedChildren,
1002
1023
  role: props.role ?? "listbox",
1003
1024
  style: menuStyle,
1004
- "data-anvia-composer-trigger-menu": "",
1005
- "data-empty": empty ? "" : void 0,
1006
- "data-loading": activeTrigger?.loading ? "" : void 0,
1007
- "data-trigger": activeTrigger?.trigger.char,
1008
- "data-trigger-id": activeTrigger?.trigger.id
1025
+ "data-state": activeTrigger === void 0 ? "closed" : activeTrigger.loading ? "loading" : empty ? "empty" : "open"
1009
1026
  },
1010
1027
  ref
1011
1028
  );
@@ -1046,12 +1063,7 @@ var ComposerTriggerItem = forwardRef(
1046
1063
  role: props.role ?? "option",
1047
1064
  type: props.type ?? "button",
1048
1065
  "aria-selected": selected,
1049
- "data-anvia-composer-trigger-item": "",
1050
- "data-disabled": disabled ? "" : void 0,
1051
- "data-item-id": item.id,
1052
- "data-selected": selected ? "" : void 0,
1053
- "data-trigger": activeTrigger.trigger.char,
1054
- "data-trigger-id": activeTrigger.trigger.id
1066
+ "data-state": disabled ? "disabled" : selected ? "selected" : "idle"
1055
1067
  },
1056
1068
  ref
1057
1069
  );
@@ -1077,12 +1089,12 @@ var ComposerAttachments = forwardRef(
1077
1089
  composer.removeAttachment(attachment.id);
1078
1090
  }
1079
1091
  },
1080
- children: typeof children === "function" ? children(attachment) : children ?? /* @__PURE__ */ jsx(Attachment.Root, {})
1092
+ children: typeof children === "function" ? children(attachment) : children ?? /* @__PURE__ */ jsx(AttachmentPrimitive.Root, {})
1081
1093
  },
1082
1094
  attachment.id
1083
1095
  )),
1084
- "data-anvia-composer-attachments": "",
1085
- "data-empty": empty ? "" : void 0
1096
+ "data-role": "attachments",
1097
+ "data-state": empty ? "empty" : "populated"
1086
1098
  },
1087
1099
  ref
1088
1100
  );
@@ -1115,7 +1127,6 @@ var ComposerAttachmentInput = forwardRef(
1115
1127
  void handleChange(event);
1116
1128
  },
1117
1129
  type: "file",
1118
- "data-anvia-attachment-input": "",
1119
1130
  "data-state": disabled ? "disabled" : "enabled"
1120
1131
  },
1121
1132
  ref
@@ -1146,7 +1157,6 @@ var ComposerAddAttachment = forwardRef(
1146
1157
  disabled,
1147
1158
  onClick: handleClick,
1148
1159
  type: props.type ?? "button",
1149
- "data-anvia-add-attachment": "",
1150
1160
  "data-state": disabled ? "disabled" : "enabled"
1151
1161
  },
1152
1162
  ref
@@ -1210,9 +1220,7 @@ var ComposerAttachmentDropzone = forwardRef(
1210
1220
  onDragLeave: handleDragLeave,
1211
1221
  onDragOver: handleDragOver,
1212
1222
  onDrop: handleDrop,
1213
- "data-anvia-attachment-dropzone": "",
1214
- "data-dragging": dragging ? "" : void 0,
1215
- "data-state": disabled ? "disabled" : "enabled"
1223
+ "data-state": disabled ? "disabled" : dragging ? "dragging" : "enabled"
1216
1224
  },
1217
1225
  ref
1218
1226
  );
@@ -1258,7 +1266,7 @@ function createAttachmentId() {
1258
1266
  nextAttachmentId += 1;
1259
1267
  return `attachment_${nextAttachmentId.toString(36)}`;
1260
1268
  }
1261
- var Composer = {
1269
+ var ComposerPrimitive = {
1262
1270
  Root: ComposerRoot,
1263
1271
  Quote: ComposerQuotePreview,
1264
1272
  ClearQuote: ComposerClearQuote,
@@ -1289,6 +1297,7 @@ var ThreadRoot = forwardRef2(
1289
1297
  function ThreadRoot2(props, ref) {
1290
1298
  const chat = useChatContext();
1291
1299
  const viewportRef = useRef2(null);
1300
+ const messagesRef = useRef2(null);
1292
1301
  const [atBottom, setAtBottom] = useState2(true);
1293
1302
  const scrollToBottom = useCallback2((behavior = "smooth") => {
1294
1303
  const viewport = viewportRef.current;
@@ -1298,14 +1307,13 @@ var ThreadRoot = forwardRef2(
1298
1307
  viewport.scrollTo({ top: viewport.scrollHeight, behavior });
1299
1308
  }, []);
1300
1309
  const thread = useMemo2(
1301
- () => ({ viewportRef, atBottom, setAtBottom, scrollToBottom }),
1310
+ () => ({ viewportRef, messagesRef, atBottom, setAtBottom, scrollToBottom }),
1302
1311
  [atBottom, scrollToBottom]
1303
1312
  );
1304
1313
  return /* @__PURE__ */ jsx2(InternalThreadProvider, { value: thread, children: renderPrimitive(
1305
1314
  "div",
1306
1315
  {
1307
1316
  ...props,
1308
- "data-anvia-thread": "",
1309
1317
  "data-state": chat.status
1310
1318
  },
1311
1319
  ref
@@ -1333,7 +1341,7 @@ var ThreadViewport = forwardRef2(function ThreadViewport2({ autoScroll = true, o
1333
1341
  if (viewport === null || !autoScroll || typeof ResizeObserver !== "function") {
1334
1342
  return;
1335
1343
  }
1336
- const content = viewport.querySelector("[data-anvia-thread-messages]");
1344
+ const content = thread.messagesRef.current;
1337
1345
  if (content === null) {
1338
1346
  return;
1339
1347
  }
@@ -1360,7 +1368,6 @@ var ThreadViewport = forwardRef2(function ThreadViewport2({ autoScroll = true, o
1360
1368
  {
1361
1369
  ...props,
1362
1370
  onScroll: handleScroll,
1363
- "data-anvia-thread-viewport": "",
1364
1371
  "data-state": thread.atBottom ? "bottom" : "away"
1365
1372
  },
1366
1373
  composedRef
@@ -1371,8 +1378,7 @@ var ThreadViewportFooter = forwardRef2(
1371
1378
  return renderPrimitive(
1372
1379
  "div",
1373
1380
  {
1374
- ...props,
1375
- "data-anvia-thread-viewport-footer": ""
1381
+ ...props
1376
1382
  },
1377
1383
  ref
1378
1384
  );
@@ -1387,8 +1393,7 @@ var ThreadEmpty = forwardRef2(
1387
1393
  return renderPrimitive(
1388
1394
  "div",
1389
1395
  {
1390
- ...props,
1391
- "data-anvia-thread-empty": ""
1396
+ ...props
1392
1397
  },
1393
1398
  ref
1394
1399
  );
@@ -1402,7 +1407,6 @@ var ThreadStatus = forwardRef2(function ThreadStatus2({ children, ...props }, re
1402
1407
  {
1403
1408
  ...props,
1404
1409
  children: renderedChildren ?? chat.status,
1405
- "data-anvia-thread-status": "",
1406
1410
  "data-state": chat.status
1407
1411
  },
1408
1412
  ref
@@ -1418,8 +1422,7 @@ var ThreadLoading = forwardRef2(
1418
1422
  "div",
1419
1423
  {
1420
1424
  ...props,
1421
- children: props.children ?? "Loading",
1422
- "data-anvia-thread-loading": ""
1425
+ children: props.children ?? "Loading"
1423
1426
  },
1424
1427
  ref
1425
1428
  );
@@ -1436,7 +1439,6 @@ var ThreadError = forwardRef2(function ThreadError2({ children, ...props }, ref)
1436
1439
  {
1437
1440
  ...props,
1438
1441
  children: renderedChildren ?? errorMessage(chat.error),
1439
- "data-anvia-thread-error": "",
1440
1442
  role: props.role ?? "alert"
1441
1443
  },
1442
1444
  ref
@@ -1444,6 +1446,13 @@ var ThreadError = forwardRef2(function ThreadError2({ children, ...props }, ref)
1444
1446
  });
1445
1447
  var ThreadMessages = forwardRef2(function ThreadMessages2({ children, keepMounted = true, ...props }, ref) {
1446
1448
  const chat = useChatContext();
1449
+ const thread = useThread();
1450
+ const composedRef = useMemo2(
1451
+ () => composeRefs(ref, (node) => {
1452
+ thread.messagesRef.current = node;
1453
+ }),
1454
+ [ref, thread.messagesRef]
1455
+ );
1447
1456
  const empty = chat.messages.length === 0;
1448
1457
  if (empty && !keepMounted) {
1449
1458
  return null;
@@ -1453,10 +1462,9 @@ var ThreadMessages = forwardRef2(function ThreadMessages2({ children, keepMounte
1453
1462
  {
1454
1463
  ...props,
1455
1464
  children: chat.messages.map((message) => /* @__PURE__ */ jsx2(InternalMessageProvider, { message, children: typeof children === "function" ? children(message) : children ?? defaultMessage() }, message.id)),
1456
- "data-anvia-thread-messages": "",
1457
- "data-empty": empty ? "" : void 0
1465
+ "data-state": empty ? "empty" : "populated"
1458
1466
  },
1459
- ref
1467
+ composedRef
1460
1468
  );
1461
1469
  });
1462
1470
  var ThreadSuggestions = forwardRef2(
@@ -1474,8 +1482,8 @@ var ThreadSuggestions = forwardRef2(
1474
1482
  children: suggestions.map(
1475
1483
  (suggestion) => typeof children === "function" ? /* @__PURE__ */ jsx2(Fragment2, { children: children(suggestion) }, suggestion.id) : /* @__PURE__ */ jsx2(ThreadSuggestion, { suggestion, children }, suggestion.id)
1476
1484
  ),
1477
- "data-anvia-thread-suggestions": "",
1478
- "data-empty": empty ? "" : void 0
1485
+ "data-role": "suggestions",
1486
+ "data-state": empty ? "empty" : "populated"
1479
1487
  },
1480
1488
  ref
1481
1489
  );
@@ -1504,7 +1512,6 @@ var ThreadSuggestion = forwardRef2(
1504
1512
  disabled,
1505
1513
  onClick: handleClick,
1506
1514
  type: props.type ?? "button",
1507
- "data-anvia-thread-suggestion": "",
1508
1515
  "data-state": disabled ? "disabled" : "enabled"
1509
1516
  },
1510
1517
  ref
@@ -1533,7 +1540,6 @@ var ThreadScrollToBottom = forwardRef2(
1533
1540
  disabled,
1534
1541
  onClick: handleClick,
1535
1542
  type: props.type ?? "button",
1536
- "data-anvia-scroll-to-bottom": "",
1537
1543
  "data-state": thread.atBottom ? "bottom" : "away"
1538
1544
  },
1539
1545
  ref
@@ -1541,9 +1547,9 @@ var ThreadScrollToBottom = forwardRef2(
1541
1547
  }
1542
1548
  );
1543
1549
  function defaultMessage() {
1544
- return /* @__PURE__ */ jsxs2(Message.Root, { children: [
1545
- /* @__PURE__ */ jsx2(Message.Content, { children: /* @__PURE__ */ jsx2(Message.Parts, {}) }),
1546
- /* @__PURE__ */ jsx2(Message.Actions, {})
1550
+ return /* @__PURE__ */ jsxs2(MessagePrimitive.Root, { children: [
1551
+ /* @__PURE__ */ jsx2(MessagePrimitive.Content, { children: /* @__PURE__ */ jsx2(MessagePrimitive.Parts, {}) }),
1552
+ /* @__PURE__ */ jsx2(MessagePrimitive.Actions, {})
1547
1553
  ] });
1548
1554
  }
1549
1555
  function errorMessage(error) {
@@ -1555,7 +1561,7 @@ function errorMessage(error) {
1555
1561
  }
1556
1562
  return "Something went wrong.";
1557
1563
  }
1558
- var Thread = {
1564
+ var ThreadPrimitive = {
1559
1565
  Root: ThreadRoot,
1560
1566
  Viewport: ThreadViewport,
1561
1567
  ViewportFooter: ThreadViewportFooter,
@@ -1570,7 +1576,7 @@ var Thread = {
1570
1576
  };
1571
1577
 
1572
1578
  export {
1573
- Composer,
1574
- Thread
1579
+ ComposerPrimitive,
1580
+ ThreadPrimitive
1575
1581
  };
1576
- //# sourceMappingURL=chunk-CBUEQW2Y.js.map
1582
+ //# sourceMappingURL=chunk-HWJIMLHC.js.map